TCP Wrappers podem ser usados para autorizar ou negar acesso a diversos
serviços em seu servidor para redes externas ou outras máquinas na mesma
rede. Isto é feito usando regras de acesso simples que são incluídas em dois
arquivos:
/etc/hosts.allow e
/etc/hosts.deny. Levemos em conta a seguinte
situação: uma máquina remota,
remote_mc tenta se conectar ao computador
local,
local_mc, usando
ssh.
Quando a solicitação da máquina remota,
remote_mc, é recebida pelo
serviço ssh, que está sob o controle do software
tcpwrappers, são seguidos
os seguintes passos:
- É verificado o arquivo /etc/hosts.allow e aplicada a primeira regra
especificada para aquele serviço. Se é encontrada uma regra aplicável,
a conexão é autorizada. Se não é encontrada uma regra aplicável, segue-se
então para o passo 2.
- É verificado o arquivo /etc/hosts.deny e se uma regra aplicável for
encontrada, a conexão é negada.
Pontos a destacar
- As regras do arquivo hosts.allow possuem precedência sobre as regras
contidas no arquivo hosts.deny. Isto significa que se uma regra aplicável
é encontrada no arquivo hosts.allow, a máquina remota é autorizada a se
conectar ao serviço solicitado mesmo que haja uma regra aplicável negando
o acesso no arquivo hosts.deny.
- Você pode ter apenas uma regra por serviço nos arquivos hosts.allow e
hosts.deny.
- Se não forem encontradas regras aplicáveis em um dos dois arquivos, ou se os
arquivos não existirem, o acesso solicitado pela máquina remota é autorizado.
- Qualquer mudanças feitas nos arquivos hosts.allow ou hosts.deny entram em
vigor imediatamente.
Sintaxe das regras
A sintaxe, tanto para o arquivo
hosts.allow quanto
hosts.deny
possuem o seguinte formato:
daemon : cliente [:opção1:opção2:...]
daemon pode ser uma combinação dos daemons ssh, ftp, portmap e assim por
diante. Basicamente, qualquer serviço que ofereça suporte para a biblioteca
libwrap.a incluído em tempo de compilação, é um bom candidato para utilizar
os serviços do software
tcpwrappers.
cliente é uma lista separada por vírgulas de computadores, endereços IP,
padrões especiais ou coringas que identifiquem os computadores afetados por
aquela regra.
opção é uma ação opcional, como por exemplo, enviar email ao administrador
quando a regra em questão for acionada, ou fazer um registro em um arquivo
pré-determinado e assim por diante. Pode ser uma lista de ações, separadas
por vírgulas.