The SSL protocol runs as a network protocol above the TCP/IP layer and below the NNTP application layer, as shown in Figure 6.1.
How SSL relates to TCP/IP and application protocols
Understanding the need for security
Networks can be difficult places to keep secrets. Information that you send from one site to another can pass through numerous other sites before it reaches its destination.
Without security, there are three types of problems you might run into when sending sensitive information over a network:
Public-key encryption
Server authentication and client authentication
Server certificates
Server certificates are used for server authentication when exchanging encrypted information.
If you plan on using encryption and SSL on your server, you must obtain a server certificate issued from a valid CA. See "Enabling SSL on your server" for more information.
In the following description of the server authentication process, a client can be:
certmap.conf
file as follows. You should read the information about configuring the certmap.conf
file found in the administration server documentation first.
The encryption setting affects your incoming connections only. If you specify that encryption is on, then your server will receive encrypted data only. You must specify that encryption is on if:
news://servername/discussion-groupWith a secure news server, you use the URL:
snews://servername/discussion-groupTo access a secure news server with security disabled, use the URL:
news://servername:563
Replication with other news servers
A Collabra Server running in secure connection mode can send to other news servers whether they are running in secure connection mode or not.
When you set up secure replication with remote servers, you should trust the sites you send to. After the articles have transferred, they are only as secure as the machine on which they are stored.
Because Usenet newsfeeds run nonsecure server software, you cannot receive Usenet news if your server is running in secure connection mode. However, you can install two instances of the Netscape Collabra Server: one instance running in secure connection mode, and the other instance running in nonsecure connection mode. This lets you receive Usenet news on the server running in nonsecure connection mode, and still maintain a secure environment for your confidential discussion groups.
If you do decide to run two servers on the same machine, one running in secure connection mode and one running in nonsecure connection mode, you must remember to:
Increasing server security
There are other security risks besides someone trying to break your encryption. The modern network faces risk from external and internal hackers, using a variety of tactics to gain access to your server and the information on it.
So in addition to enabling SSL on your server, you can take other steps to add extra security to your server. These safeguards range from putting the server computer into a secure room, to not allowing untrusted individuals to upload new programs to your server.
When considering how much extra security to implement regarding your server, keep in mind that the strongest encryption in the world does you no good if someone can get to your data some other way. Here are the most important things you can do to make your server more secure:
Limit administration access
If you plan on remotely configuring your server, be sure to use your server's access control to allow administration from a very small number of locations. You restrict administrative access to your server from the administration server interface by choosing Global Settings|Restrict Access. For more information, see the administration server online documentation or the printed manual, Managing Netscape Servers.
You should never do remote server administration over a nonsecure network. Anyone could intercept your administrative password and reconfigure the server.
Choose good passwords
You use a number of passwords with your server--the administrative password, the private key password, directory service password, and so on.
Your administrative password is the most important password of all, since anyone with this password can reconfigure your entire server. Most important after that is your private key password. If someone steals your private key and discovers your private key password, they can appear to be you when sending messages or entering into SSL transactions.
For these reasons, it is very important that you choose passwords that are difficult to guess, and that you never reveal them to anyone. Additionally, your most important passwords should not contain words from any language, since numerous password-cracking programs exist. Your important passwords should be at least eight characters long, and contain a mix of uppercase and lowercase letters, punctuation or mathematical characters, and numerals.
As an added security, you should change your passwords frequently if you are able to do so.
Caution: The password used by the Collabra Server to access the Directory Server is stored in plain text in the nsnews.conf
file.
Protect your private key
Make sure your private key is protected. Store the key file in a directory that only you have access to. It is also important to know if the file is stored on backup tapes or is otherwise available for someone to intercept. If so, you must protect your backups with the same level of security that you use to protect your server.
Limit applications
You should carefully consider all applications that run on the server computer. It is possible to circumvent your server's security by exploiting holes in other programs running on your server. Disable all unnecessary programs and services. Always examine programs carefully before you allow them on your server.
Similarly, you should be careful about what Java and JavaScript programs you allow other people to upload to your server. Other people's programs may have security holes that they don't know about. Worst of all, someone might upload a malicious program that is designed specifically to subvert your security.
Limit ports
You should disable any ports not used on the computer. Use routers or firewall configurations to prevent incoming connections to anything other than the absolute minimum set of ports.
Use firewalls
A firewall is a network configuration, usually composed of both hardware and software, that forms a barrier between networked computers within an organization and those outside the organization.
You can use firewalls to protect internal servers from outside access, as shown in Figure 6.4.
Using a firewall