his section describes the major concepts of encrypted communications over both the Internet and an intranet network. You should understand these concepts if you plan on using encryption with your server.
Netscape servers use a communication system called Secure Sockets Layer (SSL) to ensure privacy when communicating with other SSL-enabled products, such as other servers, Netscape® Navigator®, and Netscape Communicator.
jdoe@novell.com, or a computer can identify itself as a site called www.novell.com when it is not. This type of impersonation is known as spoofing.
www.store.com pretends to be a furniture store when it is really just a site that takes orders (and gathers credit card numbers), but never sends any goods.
The encryption process
In fact, both the encryption and the decryption processes require keys and sometimes use the same key. Symmetric encryption is like a combination lock protecting a safe--the same combination is used to secure and retrieve something. Netscape servers use symmetric encryption as part of the SSL process, which also includes public-key encryption (see "Public-key encryption").
One problem with symmetric encryption is that anyone who uncovers the key can decrypt your messages, as well as encrypt new messages so they would appear as authentic as yours. This same person could edit or replace messages in transit from you to your intended recipient. You can avoid this problem by using different keys for encryption and decryption. Then you would have a system like the one described "Public-key encryption."
Public-key encryption
In public-key encryption, you use two keys: one for encrypting data and another for decrypting data. One key is called the public key and the other the private key. Either key can be used to encrypt or decrypt a message. If the public key encrypts a message, the private key must be used to decrypt it. The server stores both keys in the file <server_root>/alias/<alias-name>-key.db. You should protect the key-pair file--make it readable only by the administration server and consider write-protecting it. See your NetWare documentation for information about security.
Public-key encryption is one of the processes that Netscape servers use to exchange data. Here's how public-key encryption works with a server:
As with any encryption process, as long as you actually keep your private key private, your encrypted messages are safe from tampering. Even an eavesdropper who gets both the public key and the ciphertext can't work backwards and discover your private key or your original message. In Netscape servers and clients, you have the additional safeguard of password protection before your private key can be used by the application--with servers you type the password when you start your server, not every time a secure connection is requested by a client.
What keeps public-key encryption secure is that you never share your private key with anyone, so no one can ever decrypt your messages. If anyone gets your private key (that is, they copy the <alias>-key.db file), you must immediately create a new key-pair file. See "Generating a key-pair file" for more information.
How servers use encryption
Public-key encryption takes longer than symmetric encryption. However, client-server communication with SSL uses both types of encryption together to maximize their strengths. Here's how these processes are leveraged:
How does encryption work?
You don't need to know how encryption works to operate an SSL-enabled server, but if you want to know about the mathematical underpinnings of this system, this section will introduce them to you.
It might seem odd that you can give an eavesdropper both your public key and a sample of your ciphertext and still be sure that your original message and private key can't be discovered, but it is possible.
The encryption keys discussed in the previous sections are complex mathematical functions that are easy to compute in one direction and extremely difficult to compute in the reverse. It's easy for a computer to figure out the ciphertext when presented with the original message and the encryption key, but very difficult to figure out the original message with only the ciphertext and the encryption key. Because all data stored in computers can ultimately be expressed numerically, you can perform mathematical functions on any information on your computer.
Here's an example of a simple mathematical function:
m+3=c
This is an easy equation to reverse. If you know c (the ciphertext), you can figure out m (the message). In fact, even if you kept this equation (the key) secret, someone could figure it out relatively quickly by examining your ciphertext for patterns.
However, the types of functions used in public-key encryption are vastly more complex. They are also resistant to pattern searches because they use prime numbers in their calculations. A prime number is divisible only by itself and 1. The first ten prime numbers are 2, 3, 5, 7, 11, 13, 17, 19, 23, and 29. The number 6 is not prime because it can also be divided by 2 and 3. There are no patterns for determining prime numbers, so if you use an encryption key that uses prime numbers in the right manner, examining the ciphertext for patterns is not possible. In fact, the SSL protocol uses a number of different types of encryption keys throughout its sequence.
If it is next-to-impossible to determine the original message once it's in ciphertext, how is the private key holder able to uncover it? It's because the private key is also a complex mathematical function, one that is incorporated into the function of the public key as a built-in shortcut to "solving" the public key function (or turning the ciphertext back into the original message). Even if someone gets your public key, it's as difficult to determine what that corresponding private key is as it is to determine the original message from the ciphertext and the public key.
How safe is encryption?
Technically, it's not impossible to "crack" ciphertext and determine the content of the original message--it just takes a lot of time and money. For example, it would take a single Pentium-based computer more than a billion years to crack the 128-bit encryption.
Of course, you could use several computers in conjunction. For example, if you dedicated ten computers to cracking that same encryption, it would take you one-tenth the time. Even then, only the single message in question would be deciphered because SSL generates a new encryption key for every exchange. For more details, see "Putting all the pieces together: SSL."
The precise level of security a key offers is measured by the size of certain numbers used in creating the key. These numbers are measured in bits. The greater the number of bits, the more secure the key. The key used in the previous example is a 128-bit key, which is so strong that the United States government doesn't allow products containing it to be exported. International versions of Netscape products are limited to 56-bit encryption keys. This is still strong enough to stop most hackers. However, it is conceivable that someone could use 100 dedicated computers working together to crack it more quickly. Of course, the cost of making such powerful machines unavailable for other tasks for that amount of time would be very high indeed--probably millions of dollars. Finally, keep in mind that new computing power tends to double every 18 months. The encryption that keeps you safe today may not hold up to cracking 10 years from now.
Note
When considering encryption, remember that the trade-off is the value of the information versus the cost or time to crack the encryption. If the information is worth less than what it would cost to crack the encryption protecting it, then you are probably safe. Still, it's always a good idea to use the strongest encryption possible.
Authentication and certificates
Over the Internet and smaller intranets, identification takes the form of an authentication certificate, or simply, a certificate. It is a nontransferable, nonforgeable file issued from a third party that both communicating parties already trust. This third party is known as a Certification Authority (CA).
A CA can be a company that sells certificates over the Internet, or it can be a department responsible for issuing certificates for your company's intranet. You decide which CAs you trust enough to serve as verifiers of other people's identities. See "Choosing Certificate Authorities" for more information on certificates.
Both clients and servers can have certificates. Also clients can have multiple certificates, much like a person might have several different pieces of identification. When a server sends its certificate to a client, the process is called server authentication. When a client sends a certificate to a server, the process is called client authentication. For example, if you participate in newsgroup discussions with a Netscape Collabra Server called news.novell.com, you might find it possesses a certificate issued from a company named CertSafe, assuring you that this site is the one true news.novell.com. If you trust CertSafe's judgment, then you can trust that news.novell.com is the site it claims to be.
Conversely, you might be in charge of a company's internal Human Resources server. You could use your server's access control features in conjunction with client authentication to allow only Human Resources employees access to certain directories. For more information on access control, see Chapter 4, "Controlling access to your server."
When SSL is enabled on a server, server authentication is accomplished with these steps:
Note that the preceding steps are a simplified version of what occurs during server authentication. In addition, there is also the possibility of certificate chaining. Client authentication is accomplished with these steps:
Server and client authentication is not essential to an SSL connection--you can still exchange encrypted information--but it does give extra assurance to both parties that they are sending the encrypted information to the correct parties. Also although a client and server can communicate without authentication, if your server requires client authentication for access control, the client will be rejected if it doesn't have a valid certificate.
Note
Your company might have a department that functions as a CA, issuing certificates to all internal clients and servers. However, you might find that your company's certificate isn't accepted outside your company. In this case, you might want to purchase a certificate from an outside CA company. See "Choosing Certificate Authorities" for more information.
Chaining certificates
During an SSL connection, your server sends its certificate to the client. If the client does not recognize the certificate's CA, the client might end the connection. However, if the client supports certificate chaining, the SSL connection can continue at the client's discretion. Certificate chaining is the process of presenting your CA's certificate in addition to your own. If the client trusts the CA who issued the certificate to your CA, the transaction will continue. In this way, a chain of trust is created: the client trusts the second CA, who trusts the first CA, who trusts you. Therefore, the client trusts you.
For example, say your certificate is issued from a certification authority named CertSafe. When you present your certificate, the receiving client doesn't initially accept CertSafe as a trusted CA. However, you also present CertSafe's own certificate, issued from a CA named Global Certificates. The client does accept Global Certificates as a trusted CA. Additionally, the client has been preset to trust any CAs that Global Certificates verifies as CAs. So CertSafe is accepted as a trusted CA. Therefore, your certificate, issued by the now-trusted CertSafe, is accepted for this transaction.
Certificate chaining can be extended beyond your CA and your CA's CA. You could keep any number of certificates. Your server knows to send all of these certificates when your certificate is sent to a client. A client then checks each certificate--working its way up the chain--until it finds one that it trusts.
The administration server contains some default CA certificates. These certificates are self-signed, each one vouches for itself. This is to provide a starting place to a certificate chain for clients that require it.
What's in a certificate?
A certificate is a file that contains certain identifying information. The file is signed with the CA's private key to guarantee its authenticity and integrity. Netscape uses the industry-standard certificate type, known as x.509v3, which contains
ImportantOn the client side of the transaction, though, be careful--these extra fields are not used in every certificate. Unless the server presents your client (browser) with a certificate using the extra identifying information, you can't always have complete confidence that the server receiving your information is reliable. The best Internet security won't help you if you send your private information to a criminal. As with any certificate, whether you believe this information depends on whether or not you trust the CA. It is important to understand that certificates don't prove conclusively that people or computers are who they claim to be. It merely proves that a CA has some degree of trust in the person. By exchanging information with a certificate holder, you trust the CA who issued the certificate. If you choose to purchase a certificate, buy it from a CA with a good reputation, or your investment might be wasted.
If a server sends Netscape Navigator or Netscape Communicator a certificate that uses an unknown CA, the browser displays a dialog box notifying the recipient that the certificate is from an untrusted CA. Users of Netscape Navigator 2.0 and later or Netscape Communicator can edit their list of trusted CAs. If you are purchasing your certificates from a third party, use a reputable CA.
A server administrator can also edit the list of CAs the server accepts. You can add other CAs when you have decided to trust them. This becomes an increasingly important decision as more and more CAs appear. Just because a CA can purchase a program for issuing certificates doesn't mean you should trust that CA. You can use your server's error log file to view the names of the CAs belonging to people who tried to access your server but couldn't. You can then decide whether you want to add the CA to your list of trusted CAs.
Using client certificates
Some Netscape servers support using client certificates to authenticate a user. There are two basic ways the server can use a client certificate:
NoteA Netscape server must have SSL turned on to use client certificates, and the administration server must trust the CA who issued the certificate to the client. See "Enabling SSL encryption" and "Choosing Certificate Authorities" for more information.
Mapping client certificates to LDAP
This section describes the process some Netscape SuiteSpot 3.0 servers use to map a client certificate to an entry in an LDAP directory. When the server gets a request from a client, it searches for the client's certificate before proceeding. Netscape clients, such as Netscape Navigator and Netscape Communicator, send the client certificate to the server (with or without prompting the end user, depending on the browser's security configuration). The server takes the CA listed in the certificate and tries to match it to a trusted CA listed in the administration server. If there isn't a match, some servers end the connection and some perform a different operation based on the failed match. If there is a match, the server continues processing the request.
After the server checks that the certificate's CA is trusted, the server goes through three steps to map the certificate to an LDAP entry:
The server uses a certificate mapping file called certmap.conf to determine how to do the LDAP search. The mapping file tells the server what values to take from the client certificate, such as the end user's name, e-mail address, and so on. The server uses these values to search for a user entry in the LDAP directory, but first the server needs to determine where in the LDAP directory it needs to start its search. The certificate mapping file also tells the server where to start.
Once the server knows where to start its search and what it needs to search for (step 1), it performs the search in the LDAP directory (step 2). If it finds more than one matching entry and the mapping is not set to verify the certificate, the search fails. Some servers end the transaction at this point.
When the server finds multiple matching entries in the directory, the server can optionally verify the client's certificate by comparing it with certificates for the matching entries in the LDAP directory. If the client certificate doesn't match any certificates in the matching entries or if the matching entries don't contain certificates, the certificate mapping fails. At this point, some servers end the transaction with the client; others perform an action based on the failed match. If none of the LDAP entries contain a certificate, the server also ends the transaction.
After the server finds a matching entry and certificate in the LDAP directory, it can use that information to process the transaction. For example, some servers use certificate-to-LDAP mapping to determine access to a server.
The following section describes the certmap.conf file. You need to edit this file to fit the entries in your LDAP directory and to match the certificates you expect your users to have.
Using the certmap.conf file
The certificate mapping file determines how a server should look up a user entry in the LDAP directory. You edit this file and add entries to match the organization of your LDAP directory and to list the certificates you want your users to have. Specifically, the mapping file defines
<server_root>/userdb/certmap.conf. The file contains one or more named mappings, each applying to a different CA. A mapping has the following syntax:
certmap <name> <issuerDN>The first line specifies a name for the entry and the attributes that form the distinguished name found in the client certificate. The name is arbitrary--you can define it to be whatever you want. However,
<name>:<property> [<value>]
issuerDN must exactly match the issuer DN of the CA who issued the client certificate. For example, the following two issuerDN lines differ only in the spaces separating the attributes, but the server treats these two entries as different:
certmap moz1 ou=novonyx Certificate Authority,o=Netscape,c=USThe second and subsequent lines in the named mapping match properties with values. The
certmap moz2 ou=novonyx Certificate Authority, o=Netscape, c=US
certmap.conf file has six default properties (you can use the certificate API to customize your own properties):
DNComps: A list of comma-separated attributes used to determine where in the LDAP directory the server should start searching for entries that match the user's information (the owner of the client certificate). The server gathers values for these attributes from the client certificate and uses the values to form an LDAP DN, which then determines where the server starts its search in the LDAP directory. For example, if you set DNComps to use the o and u attributes of the DN, the server starts the search from the o=<org>, c=<country> entry in the LDAP directory, where <org> and <country> are replaced with values from the DN in the certificate.DNComps entry in the mapping, the server uses either the CmapLdapAttr setting or the entire subject DN in the client certificate (the end user's information).
DNComps entry is present, but has no value, the server searches the entire LDAP tree for entries matching the filter.
FilterComps: A list of comma-separated attributes used to create a filter by gathering information from the user's DN in the client certificate. The server uses the values for these attributes to form the search criteria used to match entries in the LDAP directory. If the server finds one or more entries in the LDAP directory that match the user's information gathered from the certificate, the search is successful and the server optionally performs a verification. FilterComps is set to use the e-mail and user ID attributes
(FilterComps=e,uid), the server searches the directory for an entry whose
values for e-mail and uid match the end user's information gathered from the
client certificate. E-mail addresses and user IDs are good filters because they are
usually unique entries in the directory. The filter needs to be specific enough to
match one and only one entry in the LDAP database.
NoteThe attribute names for the filters need to be attribute names from the certificate, not from ones in the LDAP directory. For example, most certificates have an
e
attribute for the user's e-mail address, and LDAP labels that attribute mail.
verifycert: A notification that tells the server whether it should compare the client's certificate with the certificate found in the LDAP directory. It takes two values, on and off. You should only use this property if your LDAP directory contains certificates. This feature is useful to ensure your end users have a valid, unrevoked certificate.CmapLdapAttr: A name for the attribute in the LDAP directory that contains subject DNs from all certificates belonging to the user. This attribute isn't a standard LDAP attribute, so to use this property, you have to extend the LDAP schema. For more information on configuring LDAP, see "Using Netscape Directory Server LDAP." certmap.conf file, the server searches the entire
LDAP directory for an entry whose attribute (named with this property) matches
the subject's full DN (taken from the certificate). If the search doesn't find any
entries, the server retries the search using the DNComps and FilterComps
mappings.
This approach to matching a certificate to an LDAP entry is useful when it's difficult to match entries using
DNComps and FilterComps.
Library: A property whose value is a pathname to a shared library or DLL. You only need to use this property if you create your own properties using the certificate API. For more information on this API, see the release notes for your product.InitFn: A property whose value is the name of an init function from a custom library. You only need to use this property if you create your own properties using the certificate API.<name>:library <path_to_shared_library>For example,
<name>:InitFn <name_of_init_function>
certmap default1 o=Netscape Communications, c=US
default1:library /usr/netscape/suitespot/userdb/plugin.so
default1:InitFn plugin_init_fn
default1:DNComps ou o c
default1:FilterComps l
default1:verifycert on
certmap.conf file should have at least one entry. The following examples illustrate the different ways you can use the certmap.conf file.
certmap.conf file with only one "default" mapping:
certmap default defaultUsing this example, the server starts its search at the LDAP branch point containing the entry
default:DNComps ou, o, c
default:FilterComps e, uid
default:verifycert on
ou=<orgunit>, o=<org>, c=<country>, where the text in <> is replaced with the values from the subject's DN in the client certificate.
The server then uses the values for e-mail address and user ID from the certificate to search for a match in the LDAP directory. When it finds an entry, the server will verify the certificate by comparing the one the client sent to the one stored in the directory.
certmap default default
default:DNComps
default:FilterComps e, uid
certmap usps ou=United States Postal Service, o=usps, c=USThis file has a default mapping and mapping for the U.S. Postal Service (USPS). When the server gets a certificate from anyone other than the USPS, it uses the default mapping, which starts at the top of the LDAP tree and searches for an entry matching the client's e-mail and user ID. If the certificate is from the USPS, the server starts its search at the LDAP branch containing the organizational unit and searches for matching e-mail addresses. Also note that if the certificate is from the USPS, the server verifies the certificate; other certificates are not verified.
usps:DNComps ou,o,c
usps:FilterComps e
usps:verifycert on
CautionThe issuer DN (the CA's information) in the certificate must be idenitical to the issuer DN listed in the first line of the mapping. In the previous example, a certificate from an issuer DN that is
o=United States Postal Service,c=US won't match because there isn't a space between the o and the c attributes.
CmapLdapAttr property to search the LDAP database for an attribute called certSubjectDN whose value exactly matches the entire subject DN taken from the client certificate.
certmap myco ou=My Company Inc, o=myco, c=USIf the client certificate subject is
myco:CmapLdapAttr certSubjectDN
myco:DNComps o, c
myco:FilterComps mail, uid
myco:verifycert on
uid=Henry Jones Junior, o=Ark Inc, c=US
the server first searches for entries that have
certSubjectDN=uid=Henry Jones Junior, o=Ark Inc, c=US
If one or more matching entries are found, the server proceeds to verify the entries. If no matching entries are found, the server will use DNComps and FilterComps to search for matching entries. In this example, the server would search for uid=Henry Jones Junior in all entries under o=Ark Inc, c=US
NoteThis example assumes the LDAP directory contains entries with the attribute
certSubjectDN.
Note
TCP/IP is Transmission Control Protocol/Internet Protocol, the basic language of the Internet, and HTTP is Hypertext Transfer Protocol, the basic language of the graphical World Wide Web, a subset of the Internet.For more information on HTTP, see "HyperText Transfer Protocol" (Appendix A) in the online Administrator's Guide.
How SSL relates to TCP/IP and application protocols
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 should take extra security precautions. For example, put the server machine into a secure room that has a lock, and don't allow untrusted individuals to upload programs to your server.
When considering how much extra security to implement, keep in mind that the strongest encryption in the world does you no good if someone can get to your data some other way. The following sections describe the most important things you can do to make your server more secure.
Limit physical access
This simple security measure is often forgotten. Keep the server machine in a locked room that only authorized people can enter. This prevents anyone from hacking the server machine itself.
Also protect your machine's administrative (root) password, if you have one.
Limit administration access
If you use remote configuration, be sure to use access control to allow administration from only a few users and computers. If you want your administration server to provide end user access to the local directory, LDAP server, or Novell Directory Services, consider maintaining two administration servers and using cluster management so that the SSL-enabled administration server acts as the master server and the other administration server is available for end users' access.
You should also turn on encryption for the administration server. If you don't use an SSL connection for administration, then you should be cautious when performing remote server administration over an unsecure network. Anyone could intercept your administrative password and reconfigure your servers.
Choose good passwords
You use a number of passwords with your server, such as the administrative password, the private key password, database passwords, and so on.
MBi12!mo as "My Baby is 12 months old!" A bad password is your child's name or birthdate.
It's not a good idea to write your passwords anywhere, but if you feel you must, store them in a safe place, perhaps in a safe or other locked box.
<server_root>/alias. Consider making the files and directory readable only to Netscape servers installed on your computer. It's 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 as completely as your server.
Similarly, be careful about what programs you put on your server or allow other people to install on your server. Other people's programs might have security holes. Worst of all, someone might upload a malicious program designed specifically to subvert your security. Always examine programs carefully before you allow them on your server.
What is an alias?
An alias is a name associated with both a key-pair file and a certificate file. You use the alias to refer to these files when setting up SSL encryption on a server.
You specify an alias when you generate the key-pair file. The key-pair file is then used when requesting a certificate. Both the key-pair file and the certificate file use the alias as part of their filename. For example, if you generate a key with an alias named mail, the key-pair and certificate files will be named mail-key.db and mail-cert.db.
Creating an alias
The administration server automatically creates an alias when you generate a key-pair file. However, you might want to create multiple aliases that point to mutliple copies of the key-pair and certificate files.
To create an alias for an existing key-pair file and certificate file, perform the following:
mail-key.db and mail-cert.db.
You can use these steps to create an alias for an existing key-pair file only. You can then install the certificate at a later time. To do this, omit the certificate file information in the form.
Removing an alias
When you remove an alias, the server deletes the key-pair and certificate files associated with that alias.
To remove an alias, perform the following:
Listing aliases
To view the aliases you have installed in the administration server, perform the following:
<server_root>/alias.
Generating a key-pair file
A key-pair file contains both the public and private keys used for SSL encryption. You use the key-pair file when you request and install a certificate. The key-pair file is stored encrypted in the directory <server_root>/alias/<alias>-key.db. When you create the key, you specify a password that you later use when you start a server that is using encrypted communications. There are two ways to generate a key-pair file on Netware. See "Generating a key-pair file on NetWare platforms" to generate the key-pair file from the NetWare console.
See "Generating a key-pair file on Windows NT platforms" if you have NT as a client and wish to generate the key-pair file from the client. Note that the key-pair file should be generated from the NetWare console in most cases as the private key should never leave the server for security reasons.
Generating a key-pair file on NetWare platforms
From the console command line, perform the following:
load <server_root>/bin/admin/admin/bin/sec-key at the NetWare server console.
<server_root>/alias/<alias>-
key.db, where <alias> is the alias you typed. If you used the alias mail, your
key-pair file would be <server_root>/alias/mail-key.db.
Generating a key-pair file on Windows NT platforms
From the Windows NT command prompt, perform the following:
<mapped drive>:\novonyx\suitespot directory.
bin\admin\admin\bin\sec-key. The key-pair file generation program appears.
<server>/sys:/<server_root>/alias/<alias>-key.db, where <alias> is the alias you typed. If you used the alias mail, your key-pair file would be <server>/sys:/<server_root>/alias/mail-key.db.
Changing your key-pair file password
You should periodically change your key-pair file password. If you forget your password, you will have to regenerate your key-pair file, which means you must also obtain another certificate (there are usually additional costs to do this).
Don't change your key-pair file password if you are administering your server over a non-SSL connection. Anyone can intercept the information and activate or disable your SSL. See "Activating SSL encryption" for more information.
To change your key-pair file password, perform the following:
Requesting a certificate
After you generate a key-pair file, you can request a certificate from a Certification Authority (CA). For information on what a certificate is, refer to Authentication and certificates.
If your company has its own internal CA for issuing certificates, you should request your certificate from them. If you plan to purchase your certificate from a commercial CA, choose a CA and ask for the specific format of the information they require. For more information on what some CAs require, see Information CAs need.
Not everyone who requests a certificate from a commercial CA is given one. Many CAs require you to prove your identity before issuing you a certificate. Also it can take anywhere from one day to two or more months to approve a certificate. You are responsible for promptly providing all the necessary information to the CA.
To request a certificate, make sure you know what information your CA requires and perform the following:
https://CA.mozilla.com:444/cms.
The server generates a certificate request that contains your information. The request has a digital signature created with your private key. The CA uses a digital signature to verify that the request wasn't tampered with during routing from your server machine to the CA. In the rare event that the request is tampered with, the CA will usually contact you by phone.
If you chose to e-mail the request, the server composes an e-mail message containing the request and sends the message to the CA. Typically, the certificate is sent to you via e-mail. If instead you specified a URL to a certificate server, your server uses the URL to submit the request to the Certificate Server. You might get a response via e-mail or other means depending on the CA.
If the CA agrees to issue you a certificate, the CA will notify you. In most cases, the CA will send your certificate via e-mail. If your organization is using a certificate server, you may be able to search for the certificate by using the certificate server's forms.
Once you receive the certificate, you can install it. In the meantime, you can still use your server without SSL.
Information CAs need
Whether you are requesting a certificate from a commercial CA or an internal CA, you need to provide the following information:
www.netscape.com. This is the hostname in the URL that a browser uses to connect to your site. It's important that these two names are the same, otherwise a client is notified that the certificate name doesn't match the site name, which will make people doubt the authenticity of your certificate. However, some CAs might require different information, so it's important to contact them. <server_root>/alias. The filename will be <alias>-cert.db. For example, if your alias is mail, the file will be mail-cert.db.
If you have just installed your own certificate, you can now activate SSL for your server.
Managing server certificates
You can view, delete, or edit the trust settings of all the certificates installed on your server. This includes your own certificate and certificates from CAs.
To manage this list of certificates, perform the following:
<server_root>/alias.
To accept the certificate, perform the following:
Activating SSL encryption
After you have generated a key-pair file and installed your certificate, you can activate SSL for your administration server. See the documentation for individual servers if you want to enable encryption in them.
URLs to an SSL-enabled administration server are constructed using https instead of simply http. URLs that point to documents on an SSL-enabled server have this format: https://<servername.[domain.[dom]]:[port#]>
An example is https://admin.mozilla.com:443. If you use the default secure http portnumber (443), you don't have to use the portnumber in the URL.
Setting security (SSL) preferences
To set preferences for using SSL encryption on the administration server, complete the following.
When a navigator initiates an SSL connection with a server, it notifies the server what ciphers it prefers to use to encrypt information. In any two-way encryption process, both parties must use the same ciphers. Because there are a number of ciphers available, you should consider enabling all ciphers. You can choose ciphers from both the SSL 2 and SSL 3 protocols. Unless you have a compelling reason why you don't want to use a specific cipher, you should check them all. You might not want to check No Encryption, only MD5 message authentication, because if no other ciphers are available in the navigator, the server will use this protocol, and no encryption will occur. By checking this option, you allow your server to communicate without SSL encryption. Another reason you might not want to enable all ciphers is to prevent SSL connections with less than optimal encryption. United States law prohibits the export of products with more than 40-bit encryption, so some clients might only be using 40-bit encryption, which is not as difficult to decipher as 128-bit. Unchecking all 40-bit ciphers effectively restricts access to network browsers available only in the United States. All ciphers that the administration server supports are listed here for your reference. The SSL 2.0 ciphers are
<server_root>/admin-serv/config/ns-admin.conf (the administration server's configuration file). These new directives are briefly described in the following sections.
Security [on|off]
value is on when SSL is enabled, or off when disabled.
SSL2 [on|off]
value is on when SSL2 is enabled, or off when disabled.
SSL3 [on|off]
on when SSL3 is enabled, or off when disabled.
Keyfile <alias>-key.db
<alias>-key.db is the server's key-pair file, specified as an absolute path.
Certfile <alias>-cert.db
<alias>-cert.db is the server's certificate file, specified as an absolute path.
Ciphers +rc4 +rc4export -rc2 -rc2export +idea +des +desede3
A + means the cipher is active, and a - means the cipher is inactive. Any cipher with export as part of its name is not stronger than 40 bits.
SSL3Ciphers +rsa_rc4_128_md5 +rsa_3des_sha +rsa_des_sha +rsa_rc4_40_md5
+rsa_rc2_40_md5 -rsa_null_md5
A + means the cipher is active, and a - means the cipher is inactive. Any cipher with 40 as part of its name is 40 bits.