Bloquear las visitas de un pais usando el .htaccess

Actualmente desde cualquier parte del mundo podemos acceder a cualquier sitio web, aunque el servidor web del sitio web este en cualquier parte del mundo.
Cada servidor web del mundo (por decirlo de alguna manera) lleva una dirección IP asignada que los identifica en Internet, por otro lado, los visitantes que acceden a un sitio web también tienen asignada una dirección IP.

Desde el servidor web de un sitio web podemos ver las direcciones IP de los visitantes que acceden a un sitio web, y realmente desde el servidor web también podemos bloquear visitantes por su dirección IP.
Normalmente cada país o zona geográfica tiene asignado un bloque de direcciones IP, aunque actualmente cada vez resulta mas complicado distinguir que bloque de IPs es para cada continente, aun podemos discriminar por zona.

bloquear ip

Podemos llegar a bloquear direcciones IP usando el archivo .htaccess, con unas simples líneas de sintaxis simple podemos bloquear cualquier IP que nosotros queramos mediante reglas:

Pero esto no es todo, del mismo modo que podemos bloquear direcciones IP solas, también podemos bloquear rangos de direcciones IP especificando la mascara:

Ahora vamos a ir un poco mas lejos, vamos a suponer que existen bases de datos que clasifican los rangos de direcciones IP por país o zona geográfica basándose en las direcciones IP que son asignadas a cada continente.

Es perfectamente posible bloquear un país entero bloqueando todos los rangos de direcciones IP en notación CIDR que pertenecen a ese país.

Existe un sitio web llamado Country IP Blocks que mantiene actualizada una base de datos de direcciones IP asignadas a sus respectivos países, pero eso no es todo, ya que este sitio web ofrece una herramienta capaz de crear listados de IPs o rangos de IPs en diferentes formatos preparados para realizar bloqueos:

bloquear ip

La herramienta que puedes ver en la imagen anterior es capaz de crear listados con la sintaxis adecuada para algunos de los sistemas mas utilizados que puedan requerir este tipo de bloqueos como por ejemplo el .htaccess de Apache o el web.config de IIS de Microsoft.

Adicionalmente también puedes utilizar otras herramientas como por ejemplo un plugin para Wordpress que actué como WAF (Web Application Firewall) para bloquear rangos de direcciones IP de los diferentes países.
Algunos plugins para Wordpress como por ejemplo Wordfence Security en su versión Premium o iThemes Security permiten bloquear rangos de direcciones IP fácilmente desde una interfaz grafica.

Si eres cliente nuestro de hosting compartido o servidores y quieres bloquear un país entero usando esta técnica puedes contactar con nosotros primero por soporte técnico y te diremos cual es la mejor solución para tu caso.

El sitio web de Country IP Blocks es el siguiente: https://www.countryipblocks.net/country_selection.php

Articulos relacionados

Si te ha gustado este post, aquí tienes otros que pueden interesarte. ¡No pares de aprender!

Como crear un blog de exito

Cómo crear un blog de éxito

Los blogs son como esa camisa negra de tu armario que nunca pasa…
Qué es Bootstrap y cómo usarlo

Qué es Bootstrap y cómo usarlo

Hoy te traigo una actualización de un viejo artículo de Álvaro Fontela sobre…
Guía para principiantes de Moodle

Qué es Moodle: Guía para principiantes

La formación online ha ido avanzando a pasos agigantados hasta afianzarse y alzarse…
H1: SVG: cómo aprovechar todo el potencial de este formato de imagen vectorial

SVG: Cómo aprovechar todo el potencial de este formato de imagen vectorial

Cualquier persona que decida crear una web, ya sea un diseñador de páginas…
Share on twitter
Compartir en Twitter
Share on facebook
Compartir en Facebook
Share on pinterest
Compartir en Pinterest

¿Te gusta el blog?

Apúntate al boletín y te enviaremos los mejores artículos una vez al mes.

Artículos destacados

Qué es Bootstrap y cómo usarlo

Qué es Bootstrap y cómo usarlo

redireccion 301

Como hacer una redireccion 301 desde el .htaccess

H1: SVG: cómo aprovechar todo el potencial de este formato de imagen vectorial

SVG: Cómo aprovechar todo el potencial de este formato de imagen vectorial

herramientas de productividad y eficacia

26 herramientas de productividad para ganarle la batalla al tiempo y convertirte en todo un superhéroe de la eficacia

favicon-que-es

Favicon: Qué es y cómo añadirlo a tu web

¿Te ayudamos?

Escríbenos si tienes dudas o necesitas una solución específica. Nuestros expertos te ayudarán en todo lo posible.

Sé el primero en enterarte de ofertas, sorteos y novedades.

Tenemos 10 comentarios en

"Bloquear las visitas de un pais usando el .htaccess"

10 respuestas

  1. Hola. Interesante post y muy útil. Sin embargo me surge una duda. ¿Es posible bloquear a usuarios por comunidad autónoma (rangos de IP) desde .htaccess?

    1. Hola, Leo.

      Me temo que no. Si fuese por países podrías usar lo que describimos arriba o un servidor Apache configurado con el módulo mod_geoip para una base de datos de GeoIP para bloquearlos.

      Nota que los rangos de direcciones se suelen asignar a países u operadores, no a comunidades autónomas, por lo que nunca podrás hacerlo de forma fiable desde un servidor destino.

      Un saludo.

  2. Excelente Post, tengo una pregunta y si lo que yo quiero es en vez de denegarle el acceso, redirigir las ip a un subdominio como lo puedo hacer?

  3. Excelente artículo!! Dos preguntas si cargo por ejemplo en el .htaccess Allow solo para argentina el resto de los países no van a poder acceder o tenego que poner también los paises denegados?
    Y la segunda pregunta, cargar esto en el htaccess va hacer que la entrada a mi sitio sea más lenta?

    1. Hola Guillermo, lo estas planteando mal.

      Tendrías que poner un deny a todo y un allow a las ips de argentina. Si no pones el deny, no te bloquea al resto.

  4. Hola Alvaro, que App me recomiendas para instalar a mi página web para detectar los visitantes más recurrentes y tener la opción e bloquear algunos por IP.

    Quedo atenta y mil gracias.

  5. Hola, muchas gracias por la información.
    Tengo una web hecha wordpress y me he instalado el plugin Limit Login Attempts Reloaded. El caso que este plugin esta bloqueando varios ataques de fuerza bruta con unas IP que no consigo identificar, por el tamaño parecen IPv6, pero no tienen los dos puntos de separación, por ejemplo 83c0e603089e8cbc1d01232fa1d66645 . ¿Sabéis cómo puedo identificar el país o bloquear este tipo de IP? Mediante plugins o .htaccess se permite bloquear IPv4 y IPv6 pero las IP desde donde me intentan atacar no se identificarlas.
    Muchas gracias!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

¿Vienes desde otro proveedor?
Imagen footer
Suscríbete a la newsletter

Recibe ofertas, novedades y mucho más:

RESPONSABLE: RAIOLA NETWORKS, S.L. C.I.F.: B27453489 Avda de Magoi, 66, Semisótano, Dcha., 27002 Lugo (Lugo) Telefono: +34 982776081 e-mail: info@raiolanetworks.es
FINALIDAD: Atender solicitudes de información, ejecución de la contratación de servicios y remisión de comunicaciones comerciales.
LEGITIMACIÓN: Consentimiento del interesado y contratación de productos y/o servicios del Responsable
DESTINATARIOS: No se ceden datos a terceros, salvo obligación legal. Personas físicas o jurídicas directamente relacionadas con el Responsable Encargados de Tratamiento adheridos al Privacy Shield
DERECHOS: Acceder, rectificar y suprimir los datos, portabilidad de los datos, limitación u oposición a su tratamiento, derecho a no ser objeto de decisiones automatizadas, así como a obtener información clara y transparente sobre el tratamiento de sus datos.
INFORMACIÓN ADICIONAL: Se puede consultar la política de privacidad de forma más detallada aquí.