How to Get your
Website to run SSL and
(optionally) User Certificate Authentication
|
Web server administrators and web authorsThis page is intended primarily for web authors. Information for server administrators is available separately for IIS and Apache. Why do you want to implement SSL?There are several ways in which SSL can make your site more secure.
See also Restricting Access to Web Pages. Find out about the web server that hosts your siteMany web authors are not server administrators, are not familiar with the configuration of the hosting server and in fact do not even know if it runs Apache or IIS. The web author and the server administrator need to cooperate in order to implement SSL (and user certificate authentication, if desired). To find out if the server is configured for SSL, go to the URL in question, and replace the http with https. If that works, then SSL is set up. If not, your server admin will either need to set it up or ask you to move your site to a different server. To contact the server admin, create a helpdesk ticket stating that you wish to have SSL (and optionally client authentication via certificates) set up on your site. Here are some guidelines for the ticket problem description:
Determine your web site's audienceIf you want user certificate authentication enabled, figure out who should have access to your site, and how to distinguish this group from all other users. Some examples of groupings:
Identify authorized users by Distinguished Name (DN)Using CA's DNIf you select authorized individuals based on the CA that issued their certificates (e.g., anyone with DOEGrids cert), you'll need to know the Distinguished Name (DN) of the CA. This is available on any certificate issued by the CA. For DOEGrids the DN is:
For KCA, the DN is:
Using Individual's DNIf you select authorized individuals based on their personal certificates, you'll need to know their DNs (the subject DN of their certificate), and of course the issuing CAs. The subject DN is of the form (shown for DOEGrids): /DC = org/DC = doegrids/OU = People/CN = Issuee Name 123456 The DOEGrids site has a search function where you can find this information. For the KCA there is a (protected) translation list from Kerberos principal to KCA DN (KCA translation list for cron/kcron jobs ). If you can't access the translation list, for KCA using Linux, you can do an LDAP search as follows (sn stands for SurName; use your kerberos principal): ldapsearch -x -u -v -h ldap.fnal.gov -b o=fnal '(sn=myname)' The parts you need are:
The above ldapsearch command above gives:
dn: uid=myname,o=fnal which makes the KCA cert subject DN: /DC=gov/DC=fnal/O=Fermilab/OU=People/CN=Joe
Myname/UID=mengel For KCA using Windows (in Fermi domain) , go to the command prompt, cd to C:\WINDOWS\system32 (if not in path) and enter (didn't work for me, command unrecognized): dsquery user -name *Mengel | dsget user -display -dn This gives output like: dn display CN=mengel,OU=General... Marc W. Mengel x8256 09670N --uid- ------cn------ And you get the text as above. Add the authorized usersIf your server is IIS, give this information to server admin, have him/her set it up. Best to request this using the same helpdesk ticket that you created earlier to get the initial information about the server. If your server is Apache, you can edit the .htaccess file. You'll need to add an " sslrequire" command. This is described in detail towards the end of the page Setting up an SSL server with the Fermilab apache product. Test your siteDetails depend on your implementation. |
|
For assistance contact helpdesk@fnal.gov.
Information compiled and maintained by Computer Security Team ; last modified by TR on July 13, 2006. (Address comments about page to the Computer Security Team.) |