Creating_a_Certificate.mdwn 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. Now it's time to create a certificate for a web service you run. The examples
  2. below assume it's a website certificate, but it could be anything else: A
  3. certificate for a mail server or for a Jabber server etc. The process involves
  4. two steps: First, the service operator generates a *request* and sends it to
  5. the CA. Then, the CA signs the request, "approving" the service as trusted as
  6. long as it holds the private key of the new certificate.
  7. In TinyCA, select the Requests tab. Right-click inside the window and select
  8. "New request". A request creation dialog will open:
  9. [[!img 4.1-create-request-empty.png class="center"]]
  10. - __Common Name__: Must be the name users use to access your server, e.g. it
  11. would be *www.gnu.org* for the GNU website.
  12. - __E-mail Address__: Address of the person/organization who will be running the
  13. service in which the certificate will be used. If you are your own CA this may
  14. be the same address as the CA's. Otherwise, e.g. if a community member
  15. operates a CA for the community and you want to send them a request, they may
  16. be different.
  17. - __Password__: Long, hard to guess, *not* the same password you used for the
  18. CA.
  19. - __Country, Organization, etc.__: the defaults are copied from the CA. If they
  20. aren't the right values for you, change them.
  21. - __KeyLength, Digest, Algorithm__: Leave the default values. You can see them
  22. in the screenshot below.
  23. Here's an example:
  24. [[!img 4.2-create-request-filled.png class="center"]]
  25. The new certificate will be listed in the Requests tab. As the CA, you are going
  26. to sign it. Right-click on the request and select "Sign request".
  27. [[!img 5.1-sign-request-menu.png class="center"]]
  28. You will need to choose between server and client request. In this case, select
  29. server (I guess the client option is for client certificates). You should now
  30. see a small dialog.
  31. - __CA password__: The password you entered for the CA :-)
  32. - __Valid for__: I'm not an expert, but my personaly impression is that when
  33. looking at certificates' expiration dates, they seem to have roughly 1-3 years
  34. left. So the default 1-year time sounds reasonable. Again, I'm not an expert -
  35. if you want to understand the security concerns of expiration dates, you are
  36. welcome to go read about it. You're also welcome to share your knowledge here
  37. and replace this "I'm not an expert" paragraph ;-)
  38. Example:
  39. [[!img 5.2-sign-request-filled.png class="center"]]
  40. Click OK. The certificate will be signed and upon success you'll see something
  41. like this:
  42. [[!img 5.3-sign-request-done.png class="center"]]