jueves, mayo 26, 2016

Servidor web Apache2 rechazar peticiones a la IP y no al dominio

Es frecuente que tenga varios dominios alojados en el mismo servidor web y que por "higiene" no quiera que el servidor responda cuando hagan una petición directamente a la dirección IP (tipo http://xxx.xxx.xxx.xxx). Por defecto Apache2 suele redirigir las peticiones al primero de los sites configurados pero en mi caso es una solución que no me termina de gustar. Después de rebuscar un poco por Internet parece ser que no se pueden rechazar las peticiones a no ser que te bajes a muy bajo nivel de comunicaciones.

El truco más sencillo es crear un VirtualHost que use como ServerName la dirección IP y devolver un error 403 Forbbiden. Rápido y fácil.

$sudo nano /etc/apache2/sites-available/reject-by-IP.conf

<VirtualHost *:80>
    ServerName xxx.xxx.xxx.xxx <- IP de tu servidor
    <Location />
        Order allow,deny
        Deny from all
    </Location>
</VirtualHost>


$sudo a2ensite reject-by-IP.conf
$sudo service apache2 reload


Ahora al intentar acceder a la IP obtendrás un error como este:


No hay comentarios:

Publicar un comentario