Bloquear países desde .htaccess

Bloquear países desde .htaccess.

El bloqueo de países que tan solo nos generan problemas en nuestro servidor o sitio web, es una ardua tarea, ademas de altamente discutida en los foros existentes en la web.

En un anterior articulo ya creamos un script muy simple que generaba las denegaciones de ip por país en iptables. La solución es excelente, pero claro… no todos los usuarios tienen acceso «ssh«, por ello este nuevo tutorial.

Debes saber, que las ultimas versiones de Apache vienen con la funcionalidad de reconocimiento de códigos ISO ISO 3166-1. Sorprendido?… continua en este articulo y veras que simple es, aplicar esta función.

Nota: Función aplicable a partir de Apache 2.4.

Bloquear países desde .htaccess 1

 

Su uso y aplicación es muy facil, vamos a ello.

 

Bloquear países en .htaccess

Antes de comenzar debes tener claro el país o países a bloquear.

Por lo tanto debes revisar un articulo anterior y copiar los códigos ISO 2, que te resulten necesarios.

Como ejemplo tomaremos «Rusia«, que se identifica con el código «RU«.

En tu .htaccess:

# Block countries
SetEnvIf CF-IPCountry RU BuzzOff=1
Order allow,deny
Allow from all
Deny from env=BuzzOff

Guarda, cierra y reinicia.

Como ves… es muy simple, ahora veremos como bloquear varios países.

Bloquear países desde .htaccess 2

 

Bloquear países varios es igualmente simple que la función anterior, tan solo agregaremos la misma orden de forma correlativa pero con diferente código ISO.

Mira que sencillo… en el ejemplo bloquearemos los siguientes países:

  1. Rusia
  2. China
  3. Afganistan
  4. Turquía

y así correlativamente.

 

Ejemplo:

SetEnvIf CF-IPCountry RU BuzzOff=1
SetEnvIf CF-IPCountry CN BuzzOff=1
SetEnvIf CF-IPCountry AF BuzzOff=1
SetEnvIf CF-IPCountry TR BuzzOff=1
Order allow,deny
Allow from all
Deny from env=BuzzOff

Sencillo no?

Prueba en tu server o sitio web y danos tu opinión.

Bloquear países desde .htaccess 3

 

Una respuesta

  1. Pedro J.
    29/05/2019

Agregar comentario