whitelisting vsftpd

1

Como você coloca na lista de permissões IPs para o serviço para permitir apenas certas sub-redes? Eu uso IPTables ou há uma maneira mais fácil como IPWrappers Você tem que registrar o serviço para que ele funcione com IPWrappers (hosts.allow)

    
por Tiffany Walker 14.06.2012 / 17:54

2 respostas

3

Se o seu vsftpd tiver sido compilado com o suporte tcp_wrappers, você poderá usá-lo se ativar a opção vsftpd configurstion

tcp_wrappers=yes

If enabled, and vsftpd was compiled with tcp_wrappers support, incoming connections will be fed through tcp_wrappers access control. Furthermore, there is a mechanism for per-IP based configuration. If tcp_wrappers sets the VSFTPD_LOAD_CONF environment variable, then the vsftpd session will try and load the vsftpd configuration file specified in this variable.

Você pode então usar o padrão hosts.allow e hosts.deny arquivos.

Você pode verificar se o seu vsftpd foi compilado com suporte a libwrap assim

ldd /usr/sbin/vsftpd | grep wrap
libwrap.so.0 => /lib64/libwrap.so.0 (0x00002ae164bb6000)
    
por 14.06.2012 / 18:10
2

A maneira mais fácil seria usar o iptables:

iptables -A INPUT -s 1.2.3.0/24 -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -s 4.5.6.0/24 -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j DROP

para permitir a partir de 1.2.3.0/24 e 4.5.6.0/24 e desautorizar todos os outros.

Não se esqueça de salvar a configuração do iptables (depende da distribuição do Linux), para que ele sobreviva à reinicialização.

    
por 14.06.2012 / 18:06