Bloquear acceso desde direcciones IP o países seleccionados
Bloquea direcciones IP individuales, rangos de IP o países en .htaccess usando reglas Require y el encabezado X‑Country‑Code.
Puedes usar .htaccess para bloquear el acceso a tu sitio web desde direcciones IP individuales o rangos de IP.
Simplemente añade las líneas relevantes al archivo .htaccess del alojamiento web.
Direcciones IP
La siguiente sintaxis puede usarse para bloquear direcciones IP:
<RequireAll>
Require all granted
# Bloquear IP única
Require not ip 192.0.2.1
# Bloquear rango de IP
Require not ip 192.0.2.0/24
# Bloquear rango de IP
Require not ip 192.0.2
</RequireAll>
Y si deseas bloquear todo el acceso, excepto algunas direcciones IP:
Require ip 69.46.36.0/27
Require ip 192.0.2.1
Ver también https://httpd.apache.org/docs/2.4/howto/access.html#host
Bloquear países
Nuestro servidor web añade una cabecera X-Country-Code a las solicitudes entrantes, que puedes usar para filtrar. Esta cabecera no puede ser falsificada por terceros.
Si deseas bloquear el acceso desde países seleccionados, puedes usar lo siguiente:
# Bloquear CN, RU y KP
SetEnvIf X-Country-Code "^(CN|RU|KP)$" blocked_country
<RequireAll>
Require all granted
Require not env blocked_country
</RequireAll>
Y si solo quieres permitir ciertos países:
# Permitir DK SE NO
SetEnvIf X-Country-Code "^(DK|SE|NO)$" allowed_country
Require env allowed_country
Artículo de la categoría de soporte: PHP