En este artículo te muestro cómo denegar el acceso completo a tu sitio web a un usuario con el solo hecho de saber su IP, utilizando el servidor web apache o apache web server.
Bloquear el acceso a un sitio web según la IP del cliente permite bloquear visitantes maliciosos o bots. Eso sí, recuerda que pueden cambiar su IP así que puedes combinar esto con un captcha.
Bueno, veamos cómo usar apache y el archivo .htaccess
para degenar el acceso a determinada ip.
Bloquear IP con Apache
En la raíz de tu sitio web (o en el directorio en donde se aloja el sitio que quieres proteger) crea o modifica el archivo .htaccess
.
Agrega lo siguiente:
<RequireAll>
Require all granted
Require not ip 1.2.3.4
</RequireAll>
En donde 1.2.3.4
es la IP del usuario. Si quieres puedes agregar múltiples IP’s:
<RequireAll>
Require all granted
Require not ip 1.2.3.4
Require not ip 4.5.6.7
</RequireAll>
Guarda los cambios cuando termines. No es necesario reiniciar el servidor para aplicar los cambios.
Demostración de IP bloqueada
Cuando el visitante quiera entrar a nuestro sitio web, recibirá un 403 forbidden o acceso no permitido. De esta manera no podrá hacer ninguna acción ni ver el contenido.
Puedes agregar más direcciones IP ya sea para bloquear atacantes o simplemente denegar el contenido a alguien, aunque como lo dije, la IP se puede cambiar fácilmente usando por ejemplo una VPN.
Si no sabes cómo obtener la IP mira cómo hacerlo con PHP.