21.03.2013 Views

Problem - Kevin Tafuro

Problem - Kevin Tafuro

Problem - Kevin Tafuro

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

cate. We recommend that you stick with 128-bit certificates, because 40-bit symmetric<br />

keys are widely regarded as unacceptably weak.<br />

No matter what server software you plan to use, you must follow its instructions on<br />

how to generate a certificate signing request (CSR). Usually, you will generate a private<br />

key and use that private key to build a CSR. OpenSSLhas the ability to do this<br />

using the req command. Unfortunately, there are plenty of different parameters that<br />

can be set, so it is difficult to provide a solution that works universally. Here is an<br />

example of using OpenSSL(and its default configuration file) to generate a 2,048-bit<br />

RSA key pair and build a certificate-signing request:<br />

umask 077<br />

openssl genrsa -des3 -out keyfile.pem 2048<br />

openssl req -new -days 365 -key keyfile.pem -out csr.pem<br />

You will be prompted for a passphrase when running the first command. With the<br />

third, you will be prompted for a wide variety of information that needs to be in the<br />

certificate. See Network Security with OpenSSL for a reference describing the set of<br />

parameters accepted by the OpenSSL req command.<br />

Unfortunately, the specific steps you will need to go through to build a CSR will vary<br />

for the kind of certificate you want and the CA you are using. VeriSign has instructions<br />

for many of the more popular servers available on its web site. The CSR you<br />

generate will also generate a key pair. While you must submit the CSR to VeriSign to<br />

have the certificate issued, you should keep the private key to yourself. It should not<br />

be sent to VeriSign or to anybody else.<br />

As with code-signing certificates, you must also provide acceptable proof to VeriSign<br />

that you have a right to the certificate you are requesting. The options for providing<br />

this proof are the same—provide either a DUNS number or a copy of one of the<br />

aforementioned acceptable documents. In addition, a secure server certificate is<br />

bound to a domain name. VeriSign will issue certificates only to the registered owner<br />

of a domain. This means that if the domain is owned by a corporate entity, you must<br />

be an employee of that company.<br />

Once your request, including any appropriate documentation, has been submitted,<br />

VeriSign will review your application. If everything is in order, a secure server certificate<br />

will be issued, and the certificate will be emailed to the technical contact that<br />

was provided when the request was submitted. As with code-signing certificates, an<br />

actual living human being reviews the information, so it may take several days for the<br />

certificate to be issued, depending on VeriSign’s workload. Expedited processing is<br />

also available for an additional fee.<br />

See Also<br />

• Network Security with OpenSSL by John Viega, Matt Messier, and Pravir Chandra<br />

(O’Reilly & Associates)<br />

• Recipe 10.3<br />

518 | Chapter 10: Public Key Infrastructure<br />

This is the Title of the Book, eMatter Edition<br />

Copyright © 2007 O’Reilly & Associates, Inc. All rights reserved.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!