Configurar apache con SSL (mod_ssl) con un certificado propio
Para realizar el certificado SSL, tendremos que realizar los siguientes pasos:
1- Primero instalamos el paquete “openssl” para crear nuestro propio certificado. Para ello escribimos el siguiente comando
#aptitude install openssl
2- Comprobamos que el fichero /etc/apache2/ports.conf esté de la siguiente manera
NameVirtualHost *:80
Listen 80
<IfModule mod_ssl.c>
# SSL name based virtual hosts are not yet supported, therefore no
# NameVirtualHost statement here
Listen 443
</IfModule>
3- Ahora en /etc/apache2/sites-available/default menciona específicamente el puerto 80 en la directiva VirtualHost, para diferenciar las peticiones al puerto 80 (HTTP) de las peticiones al puerto 443 (HTTPS)
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/
</VirtualHost>
4- A continuación habilitaremos el modulo y el sitio SSL. Para ello utilizaremos a2ensite y a2enmod:
-#a2enmod ssl
-#a2ensite default-ssl
5- Reiniciamos apache para la nueva configuración con el siguiente comando
#/etc/init.d/apache2 restart
6- Ahora accedemos a la creación de nuestro propio certificado. Para ello ponemos el siguiente comando
# openssl req -new -x509 -nodes -out /etc/ssl/certs/chatarra.gonzalonazareno.org_self.crt -keyout /etc/ssl/private/chatarra.gonzalonazareno.org_self.key
7- A continuación nos pide unos datos que rellenaremos como nosotros queramos
8- Una vez terminado el certificado nos dirigimos a /etc/apache2/sites-available/default-ssl y modificamos las siguientes líneas
SSLCertificateFile /etc/ssl/certs/chatarra.gonzalonazareno.org_self.crt
SSLCertificateKeyFile /etc/ssl/private/chatarra.gonzalonazareno.org_self.key
9- Reiniciamos el servidor
#/etc/init.d/apache2 restart
Y en el navegador ponemos https://chatarra.gonzalonazareno.org(o puedes tambien localhost) y nos dirá que el certificado no es seguro. Para ello lo aceptamos y comprobamos que los datos corresponden a los que nosotros hemos puesto. Como muestran la imagenes


<!– @page { margin: 2cm } P { margin-bottom: 0.21cm } A:link { so-language: zxx } –>
Una vez que comprobamos que nuestro certificado funciona perfectamente. Solo nos queda redirigir la pagina del puerto 80 al 443. En primer lugar activamos el modulo rewrite de apache con el siguiente comando
#a2enmod rewrite
Para ello nos dirigimos al siguiente archivo /etc/apache2/sites-enable/000-default y ponemos las siguientes reglas
<VirtualHost *:80>
RewriteEngine on
RewriteRule /.* https://chatarra.gonzalonazareno.org [R]
ServerAdmin webmaster@localhost
DocumentRoot /var/www/
</VirtualHost>
Ahora reiniciamos apache, y listo ya redirigiremos nuestra página directamente al puerto 80.





Gracias! es lo que necesitaba… lo probaré