https://www.midominio.com
.1. Creación de un certificado SSL autofirmado
En primer lugar crearemos el directorio
/etc/apache2/ssl
que es el lugar donde dejaremos las claves pública y privada del certificado SSL. Posteriormente, crearemos un certificado SSL para el dominio "midominio.com" con una validez de 365 días.$ sudo mkdir /etc/apache2/ssl
$ sudo openssl req -new -x509 -days 365 -nodes \
-out /etc/apache2/ssl/midominio.com.pem \
-keyout /etc/apache2/ssl/midominio.com.key
Generating a 1024 bit RSA private key
................................................................+++
........................................................+++
writing new private key to '/etc/apache2/ssl/midominio.com.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:ES
State or Province Name (full name) [Some-State]:Provincia
Locality Name (eg, city) []:Ciudad
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Mi organización
Organizational Unit Name (eg, section) []:Departamento
Common Name (e.g. server FQDN or YOUR name) []:www.midominio.com
Email Address []:contacto@midomino.com
Por defecto, cuando se crean los archivos para las claves pública y privada del certificado SSL, se le asignan unos permisos que permiten el acceso de cualquier usuario. Dado que la clave privada debe de ser privada (únicamente debe de ser accesible por su propietario), procederemos a cambiar los permisos del fichero.$ sudo chmod 400 /etc/apache2/ssl/midomino.com.key
$ ls -l /etc/apache2/ssl
total 8
-r-------- 1 root root 1505 mai 10 13:12 midominio.com.key
-r--r--r-- 1 root root 1708 mai 10 13:12 midominio.com.pem
2. Configuración del servidor apache2Ahora que ya tenemos ubicadas las claves pública y privada para nuestro domino, ya podemos proceder a la configuración de apache2.
El primer paso será el de habilitar el módulo SSL de apache.
$ sudo a2enmod ssl
Enabling module ssl.
See /usr/share/doc/apache2.2-common/README.Debian.gz on how to configure SSL and create self-signed certificates.
To activate the new configuration, you need to run:
service apache2 restart
A continuación, modificaremos la configuración de Apache para que también escuche peticiones por el puerto 443 (que es el puerto por defecto para el protocolo HTTPS).$ sudo vim /etc/apache2/ports.conf
Listen 80
Listen 443
Comprobamos, para nuestro servidor, los sites que están disponibles y los que están habilitados$ ls -l /etc/apache2/sites-available/ total 12 -rw-r--r-- 1 root root 1779 mai 3 13:14 default -rw-r--r-- 1 root root 7469 feb 7 2012 default-ssl $ ls -l /etc/apache2/sites-enabled/ total 0 lrwxrwxrwx 1 root root 26 mar 11 13:50 000-default -> ../sites-available/defaultDe los listados anteriores se comprueba que, aunque se habilite el módulo SSL, esta acción no habilita el sitio (
default-ssl
) automáticamente. Hay que activarlo de forma manual. Una vez habilitado el sitio, podemos comprobar que, efectivamente, el sitio default-ssl
está activado.$ sudo a2ensite default-ssl Enabling site default-ssl. To activate the new configuration, you need to run: service apache2 reload $ ls -l /etc/apache2/sites-enabled/ total 0 lrwxrwxrwx 1 root root 26 mar 11 13:50 000-default -> ../sites-available/default lrwxrwxrwx 1 root root 30 mai 10 11:50 default-ssl -> ../sites-available/default-sslYa solo queda editar el fichero de configuración del nuevo site para añadir la configuración del
VirtualHost
para el dominio www.midominio.com permitiendo así el acceso a la página cifrada https://www.midominio.com
$ sudo vim /etc/apache2/sites-available/default-ssl
<VirtualHost *:443>
ServerAdmin contacto@midominio.com
ServerName www.midominio.com
DocumentRoot /var/www/vhosts/midominio.com/
ErrorLog /var/log/apache2/midominio.com-error-ssl.log
CustomLog /var/log/apache2/midominio.com-access-ssl.log combined
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/midominio.com.pem
SSLCertificateKeyFile /etc/apache2/ssl/midominio.com.key
</VirtualHost>
Finalmente, para que todos los cambios efectuados sean operativos, hay que reiniciar el servicio apache.$ sudo service apache2 restart
* Restarting web server apache2...
waiting [ OK ]
Error de confianza
Dado que el certificado que hemos generado más arriba no está generado por una CA (Autoridad Certificadora) de confianza, cuando intentemos acceder a la página en cuestión, el navegador mostrará un error en el certificado.

Dado que el certificado que hemos generado más arriba no está generado por una CA (Autoridad Certificadora) de confianza, cuando intentemos acceder a la página en cuestión, el navegador mostrará un error en el certificado.

Relacionado
Fuentes
Fuentes
0 comentarios:
Publicar un comentario