Cómo crear un certificado SSL autofirmado en Apache

Amigos en este post explicaré cómo crear un certificado autofirmado en Apache, esto puede ser muy útil en ambientes de desarrollo, para ambientes de producción podríamos comprar un certificado comercial o utilizar let’s encrypt.

Primero es necesario habilitar el módulo ssl de apache:

# a2enmod ssl 

Crear un directorio donde se almacenarán los certificados creados:

# sudo mkdir /etc/apache2/ssl

Ahora procedemos a crear el certificado:

# sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt
Country Name (2 letter code) [AU]:BO
State or Province Name (full name) [Some-State]:LA PAZ
Locality Name (eg, city) []:LP
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Nombre de la empresa
Organizational Unit Name (eg, section) []:Sistemas
Common Name (e.g. server FQDN or YOUR name) []:correo.guidocutipa.blog.bo
Email Address []:webmaster@guidocutipa.blog.bo

Ahora editamos la configuración del host virtual para el que creamos el certificado:

# nano /etc/apache2/sites-available/default-ssl.conf 
 <IfModule mod_ssl.c>
<VirtualHost default:443>
ServerAdmin admin@example.com
ServerName correo.guidocutipa.blog.bo
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
</VirtualHost>
</IfModule>

Finalmente habilitamos el sitio y reiniciamos el servidor Apache:

# a2ensite default-ssl.conf 
# service apache2 restart

Al finalizar la configuración se puede verificar la configuración con la herramienta https://www.ssllabs.com/ssltest/analyze.html

Tambien te puede interesar el siguiente artículo:


Cómo deshabilitar versiones obsoletas de SSL/TLS en Apache

Entradas relacionadas