Base de conocimientos

1 000 FAQ, 500 tutoriales y vídeos explicativos. ¡Aquí sólo hay soluciones!

Seguridad del acceso web mediante reglas .htaccess

Esta guía explica cómo bloquear el acceso a ciertos directorios de un Alojamiento Web para ciertos visitantes/robots/raspadores filtrando y bloqueando sus direcciones IP o nombres de host.

 

Establecer reglas .htaccess

Crear un documento .htaccess en la raíz de su sitio e inscribir las reglas destinadas a bloquear ciertas direcciones IP o ciertos bots.

 

Para bloquear a los visitantes según, por ejemplo, el inicio de su dirección IP, utilizar la directiva "deny from":

Order Deny,Allow
Deny from 123.456.
Allow from all

Esto significa que todas las solicitudes provenientes de una dirección IP que comienza con "123.456." serán rechazadas, mientras que todas las demás solicitudes serán permitidas. Los usuarios bloqueados recibirán un mensaje de error HTTP 403 Forbidden.

Bloquear una dirección IP específica

Order Allow,Deny
Deny from 123.456.789
Allow from all

Esto significa que una sola dirección IP, 123.456.789, está bloqueada y todas las demás direcciones IP pueden acceder al sitio.

Bloquear varias direcciones IP

Order Allow,Deny
Deny from 123.456.789
Deny from 987.654.321
Allow from all

Esto significa que dos direcciones IP, 123.456.789 y 987.654.321, están bloqueadas y todas las demás direcciones IP pueden acceder al sitio.

Bloquear un bot por su user-agent

SetEnvIfNoCase User-Agent "BadBot" BadBot
Order Allow,Deny
Deny from env=BadBot
Allow from all

Esto significa que cualquier bot identificado con un user-agent "BadBot" será bloqueado y todos los demás usuarios pueden acceder al sitio.

Bloquear el acceso a una carpeta específica

Order Allow,Deny
Deny from all

Esto significa que todos los accesos a la carpeta "/carpeta" serán bloqueados, independientemente de la dirección IP o del user-agent. Una asistencia para una funcionalidad similar está disponible en su Manager Infomaniak.

 

Directivas mod_rewrite

También puede utilizar la directiva mod_rewrite para bloquear ciertas direcciones IP o ciertos bots en un archivo .htaccess.

La directiva mod_rewrite puede afectar el rendimiento de su sitio web en caso de uso excesivo o incorrecto. Por lo tanto, se recomienda tener precaución al modificar su archivo .htaccess.

Aquí hay algunos ejemplos:

Bloquear una dirección IP específica

RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^123\.456\.789\.
RewriteRule ^(.*)$ - [F,L]

Esto significa que una sola dirección IP, 123.456.789, está bloqueada y todas las demás direcciones IP pueden acceder al sitio.

Bloquear varias direcciones IP

RewriteEngine on
RewriteCond %{REMOTE_ADDR} ^123\.456\.789\. [OR]
RewriteCond %{REMOTE_ADDR} ^987\.654\.321\.
RewriteRule ^(.*)$ - [F,L]

Esto significa que dos direcciones IP, 123.456.789 y 987.654.321, están bloqueadas y todas las demás direcciones IP pueden acceder al sitio.

Bloquear un bot por su user-agent

RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} BadBot [NC]
RewriteRule ^(.*)$ - [F,L]

Esto significa que cualquier bot identificado con un user-agent "BadBot" será bloqueado y todos los demás usuarios pueden acceder al sitio. Esto puede ser útil para evitar que los robots no deseados accedan a ciertas páginas o consuman recursos innecesariamente.

Bloquear el acceso a una carpeta específica

RewriteEngine on
RewriteRule ^dossier/secret - [F,L]

Esto significa que todos los accesos a la carpeta "/carpeta/secreta" serán bloqueados, independientemente de la dirección IP o del user-agent.

Bloquear y redirigir a otro lugar

RewriteEngine On
RewriteCond %{REMOTE_ADDR} ^123\.456\.789\.
RewriteRule ^(.*)$ http://www.domain.xyz/blocked.html [L,R=301]

Esto significa que todas las solicitudes provenientes de la dirección IP 123.456.789 serán redirigidas a la página "blocked.html" en el sitio "www.domain.xyz". La última parte de la línea RewriteRule, [L,R=301] indica que la redirección es permanente (R=301) y que es la última regla a ser aplicada (L).

Puede agregar varias condiciones RewriteCond para bloquear diferentes direcciones IP y redirigir a diferentes páginas.

Consulte también esta otra guía.


¿Le ha sido útil esta FAQ?