HOWTO: Crear y firmar certificado de seguridad SSL


1. modificar httpd.conf

<VirtualHost 192.168.0.1:443>
		SSLEngine on
		SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP
		SSLCertificateFile /etc/httpd/conf/ssl.crt/example.com.crt
		SSLCertificateKeyFile /etc/httpd/conf/ssl.key/example.com.key.unsecure
		ServerName example.com:443
		DocumentRoot /www/example.com/public_html
</VirtualHost>

Nota: El número IP no puede ser compartido con otro sitio seguro, no existe Virtual Hosting para SSL. Se debe usar el mismo IP para configuración en Apache de la versión no segura.

2. crear certificados

Por ejemplo en /usr/local/CA (según documentado en openssl.cnf) pero poner atención luego de copiarlos a lo especificado en httpd.conf

Este ejemplo está basado en: http://httpd.apache.org/docs-2.1/ssl/ssl_faq.html#realcert

a) create key (remember passphrase)

$ openssl genrsa -des3 -out example.com.key 1024

b) create unencrypted key (so that no pass to start apache)

$ openssl rsa -in example.com.key -out example.com.key.unsecure

c) create CSR (certificate signing request)

$ openssl req -new -key example.com.key -out example.com.csr
(entra datos)
Nota: si piensas firmar con tu propio CA, el nombre de la compañía debe ser el mismo que el del CA private key.

d) Podes enviar el CSR a algun CA, o fimar con tu propio CA

$ openssl ca -in example.com.csr -out example.com.crt

pon atenciona a /usr/share/ssl/openssl.cnf especialmente a:
dir             = /usr/local/CA         # Where everything is kept
certs           = $dir/certs            # Where the issued certs are kept
crl_dir         = $dir/crl              # Where the issued crl are kept
database        = $dir/index.txt        # database index file.
new_certs_dir   = $dir/newcerts         # default place for new certs.

certificate     = $dir/cacert.pem       # The CA certificate
serial          = $dir/serial           # The current serial number
crl             = $dir/crl.pem          # The current CRL
private_key     = $dir/private/cakey.pem# The private key
RANDFILE        = $dir/private/.rand    # private random number file


e) restart apache

$ service httpd reload


Ver tambien: HowtoVerCertificadoSSL HowtoCrearCertificadoSSL
CategorySysAdmin
There are no comments on this page.
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki