Os arquivos hosts.*
não são necessários ao usar o iptables. Ambos têm a capacidade de negar / permitir o acesso, mas funcionam de maneiras muito diferentes.
Network
|
IPTables
/ \
TCPWrapper Squid/Daemon
Daemon
O Iptables é uma estrutura de filtragem de pacotes de base do kernel que opera em uma camada abaixo de tcpwrappers. Se você DROP ou REJEITA algo com iptables
, o pacote nunca alcançará o espaço do usuário. Não importa qual seja o programa ou como está escrito, o pacote nunca existirá do ponto de vista dele.
Programas que usam TCPwrappers e sua funcionalidade hosts.*
são executados no espaço do usuário e precisam ser construídos com libwrap para fazer uso dos arquivos, ou emulá-lo lendo os arquivos hosts e fechando conexões que eles recebem de clientes negados.
O Squid não lê os arquivos hosts.deny|allow
. Ele tem sua própria implementação para o controle de acesso especificado com acl's em squid.conf
. Da mesma forma que você pode configurar o controle de acesso do squids no topo do iptables, você pode usar o hosts.deny / allow no topo do iptables. Essas regras só entram em jogo se o iptables permitir o tráfego. Não que muitos programas suportem tcp_wrappers atualmente, inetd
, o super servidor, era o principal um bit que está lentamente desaparecendo.