Назад | Перейти на главную страницу

Отслеживание подключений в Firewalld (например, CentOS 7)

Я не могу заставить vsftpd и firewalld правильно работать вместе на CentOS 7 (без добавления пассивного диапазона к firewalld). Похоже, firewalld игнорирует отслеживание соединений (nf_conntrack_ftp загружен, но у него 0 пользователей). Правильно ли, что firewalld еще не поддерживает отслеживание соединений, как предлагается? Вот?

В firewalld я включил службу ftp, но пока я могу войти в систему и получить список, я не могу загружать файлы, пока не отключу брандмауэр или не добавлю явный пассивный диапазон.

Команда Firewalld:

firewall-cmd --permanent --add-service=ftp

Результирующее правило iptables:

-A IN_public_allow -p tcp -m tcp --dport 21 -m conntrack --ctstate NEW -j ACCEPT

Модуль отслеживания подключений:

# lsmod | grep conntrack_ftp nf_conntrack_ftp 18638 0

Думаю нужно открыть ftp-data, tcp порт 20

У меня была такая же проблема с CentOS 8 и vsftpd. Как упоминалось в другом Почта вам необходимо загрузить модуль ядра "nf_conntrack_ftp" (что уже было в CentOS 8) и включите "nf_conntrack_helper" в настройках ядра:

echo 1 > /proc/sys/net/netfilter/nf_conntrack_helper

Добавьте эту строку в /etc/sysctl.conf (или /etc/sysctl.d/10-nf_conntrack_helper.conf когда /etc/sysctl.d/ присутствует) для постоянной перезагрузки:

net.netfilter.nf_conntrack_helper=1