Белый список vsftpd
Как вы включаете белые IP-адреса для службы, чтобы разрешить только определенные подсети? Использую ли я IPTables или есть более простой способ, например, IPWrappers. Вам нужно зарегистрировать сервис для его работы с IPWrappers(hosts.allow)
2 ответа
Если ваш vsftpd был скомпилирован с поддержкой tcp_wrappers, то вы можете использовать его, если включите опцию конфигурации vsftpd
tcp_wrappers = да
Если опция включена и vsftpd был скомпилирован с поддержкой tcp_wrappers, входящие соединения будут передаваться через контроль доступа tcp_wrappers. Кроме того, существует механизм для конфигурации на основе IP. Если tcp_wrappers устанавливает переменную среды VSFTPD_LOAD_CONF, то сеанс vsftpd попытается загрузить файл конфигурации vsftpd, указанный в этой переменной.
Затем вы можете использовать стандартные файлы hosts.allow и hosts.deny.
Вы можете проверить, был ли ваш vsftpd скомпилирован с поддержкой libwrap, вот так
ldd /usr/sbin/vsftpd | grep wrap
libwrap.so.0 => /lib64/libwrap.so.0 (0x00002ae164bb6000)
Самый простой способ - использовать 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
разрешить с 1.2.3.0/24 и 4.5.6.0/24 и отстранить от всех остальных.
Не забудьте сохранить конфигурацию iptables (зависит от вашего дистрибутива Linux), чтобы он выдержал перезагрузку.