Foros del Web » Administración de Sistemas » Software para Servers »

Denegación de IP's desde .htaccess + archivo.txt

Estas en el tema de Denegación de IP's desde .htaccess + archivo.txt en el foro de Software para Servers en Foros del Web. Hola ¿Cómo están? Estoy desarrollando una aplicación Web y quiero evitar el acceso a esta aplicación, en caso de que se requiera, denegando la IP ...
  #1 (permalink)  
Antiguo 16/01/2014, 11:00
 
Fecha de Ingreso: julio-2012
Mensajes: 3
Antigüedad: 12 años, 3 meses
Puntos: 0
Denegación de IP's desde .htaccess + archivo.txt

Hola ¿Cómo están?

Estoy desarrollando una aplicación Web y quiero evitar el acceso a esta aplicación, en caso de que se requiera, denegando la IP del visitante con htaccess.

Se me ocurre algo como:

Código:
 order allow,deny
 allow from all
 deny from xxx.xxx.xxx.xxx
Pero un amigo me comentó que se podía tener un archivo.txt con las IP a denegar y usarlo desde htaccess para denegarlas, de esta manera cuando quiera evitar el acceso a otra IP puedo editar el archivo.txt desde PHP y listo, esto con la finalidad de no editar el archivo htaccess directamente (Aunque no sé si se pueda).

Mi problema es que no sé las instrucciones de .htaccess para utilizar dicho archivo.txt.

Espero me puedan ayudar, de antemano gracias.

P.D.: Si existe alguna solución mejor, les agradecería que también me la dijeran.
  #2 (permalink)  
Antiguo 23/01/2014, 23:46
Avatar de internetdominus  
Fecha de Ingreso: noviembre-2005
Ubicación: Estados Unidos
Mensajes: 535
Antigüedad: 19 años
Puntos: 12
Respuesta: Denegación de IP's desde .htaccess + archivo.txt

Lo que estas intentando hacer se logra usando:

Código:
RewriteMap access txt:/directorio/a/tu/listadebloqueados.txt
Pero la linea de arriba tiene que ser agregada al archivo httpd.conf y no tienes a acceso a ese archivo si es que no tiene un servidor dedicado.

Luego tendrias que agregar las lineas de abajo tu archivo htaccess:

Código:
RewriteEngine On 
RewriteCond  %{access: %{REMOTE_ADDR}}  deny [NC]
RewriteRule ^ - [L,F]
Y tu listadebloqueados.txt tiene que ser algo asi y tienes que agregar manualmente cada IP indicando bloqueo

Código:
xxx.xxx.xxx.xxx  deny
xxx.xxx.xxx.xxx    deny
Es mas facil directamente con htaccess y ademas no le das mucha carga al servidor al tener que hacer que htaccess lea un archivo externo.

Para bloquear un IP en htacces:

Código:
####IP de mi PC abajo
allow from 192.123.123.123 
####IP de mi PC arriba

####IPs bloqueados abajo
deny from xxx.xxx.xxx.xxx
deny from xxx.xxx.
####IPs bloqueados arriba
Estas queriendo bloquear IPs especificos de un pais o bad bots que hacen crawl a tu pagina robando fotos, emails, llenando formatos, etc?

Si es que estas bloqueando bad bots puedes crear una pagina, llamarla trampa.php e indicar en robots.txt que los bots como googlebot, bing y slurp no lean ni indexen esa pagina y como esos bots respetan el achivo robots.xt no, lo ignoraran, mientras los bad bots se comen toda pagina que encuentran y con php script los puedes bloquear automaticamente y agregar los deny from automaticamente al archivo htaccess. Usando ese php script me di cuenta que Baidu no respeta el achivo robots.txt y finalmente decidi bloquear baidu por completo usando htaccess:

Código:
####Bloquea bad bots user agents abajo
RewriteCond %{HTTP_USER_AGENT} AppleWebKit|Baiduspider\+|Baidu|SemrushBot|MJ12bot|ia_archiver|AhrefsBot|WordPress.com|mShots|WordPress\.com\ mShots|YandexBot|Ezooms|Mail\.RU\_Bot\/2\.0 [NC]
RewriteRule .* - [F]
####Bloquea bad bots user agents  abajo

Última edición por internetdominus; 24/01/2014 a las 00:15 Razón: agregando code tags

Etiquetas: apache, denegar, htaccess, servidores-web, txt
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:27.