martes, 28 de noviembre de 2017

certificado SSL

Paso Uno – Activar El Módulo SSL

El soporte SSL en realidad viene como paquete estándar del Apache en Ubuntu 14.04. Simplemente necesitamos habilitarlo para poder usar el SSL en nuestro servidor. Habilita el módulo escribiendo en la consola:
sudo a2enmod ssl


Después de habilitar el SSL, tendrá que reiniciar el servidor web para que el cambio sea reconocido:
sudo service apache2 restart


Paso Dos – Crear Un Certificado SSL Autofirmado

Vamos a empezar por la creación de un subdirectorio dentro de las carpetas de configuración de Apache para colocar los archivos de certificado que vamos a estar creando:
sudo mkdir /etc/apache2/ssl


Ahora que tenemos un lugar para colocar la llave y el certificado, podemos crear los dos en un solo paso escribiendo lo siguiente en la consola:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt

Cuando se pulse “Enter”, se le pedirá una serie de preguntas

 
se veria algo como lo siguiente:
Country Name (2 letter code) [AU]:US
State or Province Name (full name) [Some-State]:New York
Locality Name (eg, city) []:New York City
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Your Company
Organizational Unit Name (eg, section) []:Department of Kittens
Common Name (e.g. server FQDN or YOUR name) []:your_domain.com
Email Address []:your_email@domain.com


Tercer Paso – Configurar Apache Para Usar SSL

 

Abra el archivo con privilegios de root:
sudo nano /etc/apache2/sites-available/default-ssl.conf
Con los comentarios eliminados, el archivo se veria algo como esto:
<IfModule mod_ssl.c>
 <VirtualHost _default_:443>
 ServerAdmin webmaster@localhost
 DocumentRoot /var/www/html
 ErrorLog ${APACHE_LOG_DIR}/error.log
 CustomLog ${APACHE_LOG_DIR}/access.log combined
 SSLEngine on
 SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
 SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
 <FilesMatch "\.(cgi|shtml|phtml|php)$">
 SSLOptions +StdEnvVars
 </FilesMatch>
 <Directory /usr/lib/cgi-bin>
 SSLOptions +StdEnvVars
 </Directory>
 BrowserMatch "MSIE [2-6]" \
 nokeepalive ssl-unclean-shutdown \
 downgrade-1.0 force-response-1.0
 BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
 </VirtualHost>
</IfModule>

cambiarlo y dejarlo algo como esto 

<IfModule mod_ssl.c>
 <VirtualHost _default_:443>
 ServerAdmin admin@example.com
 ServerName your_domain.com
 ServerAlias www.your_domain.com
 DocumentRoot /var/www/html
 ErrorLog ${APACHE_LOG_DIR}/error.log
 CustomLog ${APACHE_LOG_DIR}/access.log combined
 SSLEngine on
 SSLCertificateFile /etc/apache2/ssl/apache.crt
 SSLCertificateKeyFile /etc/apache2/ssl/apache.key
 <FilesMatch "\.(cgi|shtml|phtml|php)$">
 SSLOptions +StdEnvVars
 </FilesMatch>
 <Directory /usr/lib/cgi-bin>
 SSLOptions +StdEnvVars
 </Directory>
 BrowserMatch "MSIE [2-6]" \
 nokeepalive ssl-unclean-shutdown \
 downgrade-1.0 force-response-1.0
 BrowserMatch "MSIE [17-9]" ssl-unclean-shutdown
 </VirtualHost>
</IfModule>


Paso Cuatro – Active El Host Virtual SSL

Ahora que ya hemos configurado nuestro host virtual, debemos de habilitar el  SSL. Podemos hacer esto escribiendo lo siguiente en la consola:
sudo a2ensite default-ssl.conf
Entonces, necesitamos reiniciar Apache nuevamente para cargar el nuevo archivo del host virtual:
sudo service apache2 restart
 

No hay comentarios:

Publicar un comentario