Fail2Ban / IPTables & Pure-Ftpd

У меня есть чистый ftpd, работающий на веб-сервере с Fail2Ban. Fail2Ban допускает соединения apache2, но запрещает любое FTP-соединение с любого другого компьютера, кроме локального. Я пытался изменить файлы jail.local и jail.conf, но у меня все еще есть проблемы.

Вот раздел pure-ftpd в моем файле jail.local:

[pure-ftpd]
enabled = true
port     = ftp,ftp-data,ftps,ftps-data
filter   = pure-ftpd
logpath  = /var/log/auth.log
maxretry = 6

Вот мой iptables -L: n:

Chain INPUT (policy DROP)
target     prot opt source               destination
fail2ban-postfix  tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 80,443,25,587,110,995,143,993,4190
fail2ban-dovecot  tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 80,443,25,587,110,995,143,993,4190
fail2ban-roundcube  tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 80,443,25,587,110,995,143,993,4190
fail2ban-ssh  tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:22
fail2ban-pure-ftpd  tcp  --  0.0.0.0/0            0.0.0.0/0            multiport dports 21,20,990,989
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:80
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:443
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:25
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:587
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:110
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:995
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:143
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:993
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:22
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0            icmptype 8

Chain FORWARD (policy DROP)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Chain fail2ban-dovecot (1 references)

. следующие команды вручную FTP работают (как активные, но не могут заставить работать пассивную), но я действительно хочу, чтобы это работало с Fail2Ban:

iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A OUTPUT -p tcp --sport 20 -j ACCEPT

Любые идеи о том, как настроить fail2ban для настройки правильно iptables? Если нет, какие правила мне нужно установить, чтобы активная и пассивная работа FTP работала правильно?

1
задан 18 February 2014 в 18:03

2 ответа

Я нашел конфигурацию IPTABLES по умолчанию в / etc / default / iptables, добавил следующее и перезапустил службу iptables, и теперь ftp работает:

-A INPUT -p tcp --dport 20 -j ACCEPT
-A INPUT -p tcp --dport 21 -j ACCEPT
0
ответ дан 18 February 2014 в 18:03

Как настроить пассивные порты для Pure-FTPd (и настроить брандмауэр):

  1. Установить максимальное число одновременных соединений ftp в этом файле:

    /etc/pure-ftpd/conf/MaxClientsNumber
    

    для Например:

    50
    
  2. Установите желаемый диапазон пассивных портов в этом файле:

    /etc/pure-ftpd/conf/PassivePortRange
    

    , например:

    42420 42520
    

    Подсказки:

    • Введите два номера портов через пробел.
    • Откройте вдвое больше портов, чем вы установили в MaxClientsNumber, например. MaxClientsNumber = 50 -> открыть 100 пассивных портов.
    • Порты должны находиться в диапазоне свободных портов (еще не использованных на вашем компьютере другой службой и не используемых какой-либо другой стандартной службой).
    • Примеры диапазона пассивных портов: 29100-29200 или 32770-32870 или 42420-42520 или 51899-51999. Смотрите полный список стандартных IP-портов здесь . Проверьте используемые порты на вашем компьютере с помощью sudo iptables -nvL.
  3. Открытые порты в брандмауэре:

    Могу ли я предложить использовать UFW в дополнение к iptables? Это значительно упростит настройку правил брандмауэра, а также сделает ваши правила постоянными.

    Всякий раз, когда вы меняете что-то на своем брандмауэре, будьте осторожны, чтобы не заблокировать себя на своем компьютере! Проверьте, открыт ли порт 22 / ssh, если вы подключены через ssh.

    Установите UFW, запретите любой входящий трафик (сначала закройте все, затем просто откройте необходимые порты), откройте порт 22 / ssh, затем запустите UFW:

    sudo apt-get install ufw
    sudo ufw default deny incoming
    sudo ufw default allow outgoing
    sudo ufw allow ssh
    sudo ufw enable
    

    Открыть порты для FTP: (замените 42420: 42520 с собственными портами.)

    sudo ufw allow ftp
    sudo ufw allow proto tcp from any to any port 42420:42520
    

    Открытые порты для вашего веб-сервера:

    sudo ufw allow http
    sudo ufw allow https
    

    Открытые порты для вашего почтового сервера: (возможно, вам не нужны все эти порты. за советом см. здесь .)

    sudo ufw allow 25
    sudo ufw allow 110
    sudo ufw allow 143
    sudo ufw allow 465
    sudo ufw allow 587
    sudo ufw allow 993
    sudo ufw allow 995
    sudo ufw allow 4190
    

    Наконец, проверьте свои настройки и включите их постоянно:

    sudo ufw status verbose
    sudo ufw disable
    sudo ufw enable
    
  4. Последний шаг: Проверьте еще раз, если установка UFW позаботилась обо всех ваших предыдущих правилах iptables - а если нет, то удалите их вручную.

    iptables -nvL --line numbers
    iptables -D INPUT X
    

    Замените X на номер строки, которую вы прочитали из вывода первой команды, и повторите (обе команды!) Для каждого правила iptables, которое вы хотите удалить.

    Особенно проверьте это правило iptables в цепочке IPUT (как видно из ваших данных выше) с опцией '-v' sudo iptables -nvL

    ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
    

    Если вы видите столбец с надписью 'lo' в с этой линией то все нормально и тут ничего не надо делать. Если в этой строке нет 'lo', это может означать, что ваш брандмауэр будет принимать весь трафик на все порты (как если бы у вас вообще не было брандмауэра), и его следует удалить.

Теперь у вас должен быть Pure-FTPd, принимающий пассивные порты, и настройка UFW, упрощающая управление брандмауэром.

0
ответ дан 18 February 2014 в 18:03

Другие вопросы по тегам:

Похожие вопросы: