Como posso manter um número crescente de endereços IP bloqueados no Apache?

1

Quando vemos um comportamento incomum em nosso site, eu bloqueio endereços IP adicionando-os à configuração do Apache da seguinte forma:

<Directory /var/www/html>
  Options FollowSymLinks
  AllowOverride All
  Order allow,deny
  Allow from all
  Deny from 1.1.1.1
  Deny from 2.2.2.2
  # and so on...
</Directory>

Isso logo se torna pesado, então existe uma maneira padrão de lidar com isso? Talvez movendo a lista de IPs proibidos para um arquivo?

Obrigado

    
por Olly 14.01.2010 / 11:16

3 respostas

4

Eu colocaria todas as suas recusas em um arquivo:

# /etc/apache2/banned_ips.conf
Deny from 1.1.1.1
Deny from 2.2.2.2

Depois inclua isso no seu vhost:

<Directory /var/www/html>
  Options FollowSymLinks
  AllowOverride All
  Order allow,deny
  Allow from all
  include /etc/apache2/banned_ips.conf
  # and so on...
</Directory>
    
por 14.01.2010 / 11:18
6

Se você está obtendo um comportamento não tão legal desses IPs, talvez seja melhor bloqueá-los no nível do firewall do que no Apache, assim você economizará um pouco de carga no Apache. Uma das desvantagens dessa abordagem é que eles perderão esses "ataques" dos seus logs do Apache (embora isso possa ser um favor em vez de algo ruim).

Se você estiver usando algum tipo de firewall, certamente terá uma maneira fácil de adicionar IPs inválidos. Se você não tiver um nos servidores da Web, tente instalar um em seus sistemas: Eu recomendaria o shorewall para Linux, ou talvez um script simples do iptables se você quiser apenas bloquear o acesso ao servidor da Web.

    
por 14.01.2010 / 11:33
0

Existem algumas opções aqui ...

mod_security

mod_security para o Apache parece ser a escolha óbvia, já que ele pode se integrar diretamente com o IPTables e bloquear usuários no nível TCP / IP (em vez de no espaço do usuário).

Dê uma olhada aqui para obter uma explicação link

firewall csf / iptables

Eu estaria inclinado a configurar um firewall de software como o CSF - que pode adicionar outra camada de proteção, limitando / bloqueando IPs abusivos.

fail2ban

É preciso um pouco de configuração, mas você pode fazer algumas coisas realmente inteligentes com isso. link

Seu jeito atual

Além disso, para comentar em sua postagem original, você pode, mas vários IPs em uma linha da diretiva de permissão / negação, veja link

Finalmente, se você continuar a usar o seu método - você pode bloquear no nível .htaccess com a mesma sintaxe (menos as tags)

Por exemplo.

order allow,deny
allow from all
deny from 1.1.1.1 2.2.2.2 3.3.3.3/24

O seu método atual parece ser não escalável e depende da sua capacidade de avaliar o tráfego genuíno / malicioso - pelo que as soluções automatizadas acima seriam altamente recomendadas.

    
por 09.03.2012 / 03:50

Tags