Вот основная установка:
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
Также потребность сказать iptables загружать модуль ядра, который отслеживает соединения FTP в/etc/sysconfig/iptables-config:
IPTABLES_MODULES="ip_conntrack_ftp"
Это нормальное поведение. Большинство FTP-серверов блокируют пользователя в соответствующем домашнем каталоге, чтобы предотвратить доступ к другим файлам файловой системы. Это называется "chroot", потому что вы меняете корневой каталог этого процесса.
Например, в vsftp вы можете отключить его, отредактировав файл конфигурации /etc/vsftpd/vsftpd.conf
и изменив это значение на no:
chroot_local_user = no