У меня есть веб-сервер, работающий на Centos 6.6. Недавно брандмауэр Config Server Security отправил мне более 150 электронных писем о некоторых вредоносных ботах, пытающихся угадать пользователей ftp и пароли моих клиентов. Я ненавижу брутфорс-атаки и пытаюсь изменить свой ftp-порт с 21 на ****. Я настроил свой purefptd.conf
# IP address/port to listen to (default=all IP and port 21).
Bind *** # My New Port Here Without 127.0.0.1
Затем я разрешил в моем файле конфигурации csf новый порт для всех TCP_IN, TCP_OUT, UDP_IN, UDP_OUT как для IPv4, так и для IPv6 и добавил правила iptables, следующие за ресурсами
iptables -A INPUT -p tcp --dport newport -j ACCEPT
iptables -A OUTPUT -p tcp --dport newport -j ACCEPT
iptables -A INPUT -p udp --dport newport -j ACCEPT
iptables -A OUTPUT -p udp --dport newport -j ACCEPT
service iptables save
service iptables restart
После изменений перезапускаю pureftpd и csf. Теперь, когда я пытаюсь подключиться к своему ftp-серверу через Filezilla 3.9.0.6, он дает мне такой ответ.
Response: 227 Entering Passive Mode (*,*,*,*)
Command: MLSD
Error: Connection timed out
Error: Failed to retrieve directory listing
Я сам нашел ответ. Я меняю чистые строки пассивного подключения файлов ftpd conf следующим образом:
# Port range for passive connections replies. - for firewalling.
PassivePortRange 50000 51000
И разрешил это в файле конфигурации csf, например 50000:51000
на
TCP_IN IPv4 и IPv6.
Теперь работает нормально.