1. Activar los módulos 'ssl' y 'rewrite' de apache2
Activamos los módulos ssl:sudo a2enmod ssl
Activamos el módulo 'rewrite':
sudo a2enmod rewrite
Nos dirá que tenemos que ejecutar 'sudo service apache2 restart' para que estas activaciones tengan efecto pero lo haremos al final de todos los comandos para no hacerlo varias veces.
2. Esconder la versión del servidor
sudo nano /etc/apache2/apache2.conf
Para ocultar la versión del servidor hemos de incluir al final del archivo de configuración global de Apache2 (/etc/apache2/apache2.conf) las siguientes dos lineas:
ServerSignature Off
ServerTokens Prod
3. Deshabilitar la visibilidad del contenido de los directorios del servidor
Hay que incluir en el mismo archivo de configuración del punto anterior, al final, el siguiente texto:
<Directory /var/www/html>
Options -Indexes
</Directory>
4. Forzar https
sudo nano /etc/apache2/sites-available/000-default.confPara redirigir todas las llamadas http (puerto 80) al puerto seguro 443 (https) deberemos incluir en archivo del virtual host por defecto del puerto 80 (/etc/apache2/sites-available/000-default.conf) las siguiente lineas justo después de <VirtualHost domain.com:80>
RewriteEngine on
ReWriteCond %{SERVER_PORT} !^443$
RewriteRule ^/?(.*) https://%{HTTP_HOST}/$1 [NC,R,L]
Nota imporanta: después de cada punto o al final de realizarlos todos se ha de reiniciar el servidor apache tecleando en el prompt:
sudo service apache2 restart