We are happy to announce that Vesta is back under active development as of 25 February 2024. We are working on v1 candidate and expect to engage more with the community over the coming months. We are committed to open source, and we encourage contributors to help us build the future of Vesta.
fail2ban - Настройка
Re: fail2ban - Настройка
Извиняюсь, за задержку с ответом. Озадачил и исчез :)
Решил врубиться сам и вроде получилось. Как честный человек делюсь:
Идем в /etc/rc.d/init.d/proftpd
Находим
daemon proftpd $PROFTPD_OPTIONS 2>/dev/null
Если их два то для двух до этой строки вставляем:
export LC_MESSAGES="en_US.UTF-8"
export LC_ALL="en_US.UTF-8"
export LANG="en_US.UTF-8"
Выглядит результат как то так:
Идем /etc/fail2ban/jail.conf
Отправку почты специально отключил - и так хватает писем - пусть просто блокирует.
Фильтр привожу полностью, поскольку не помню корректировал ли его
Идем в /etc/fail2ban/filter.d/proftpd.conf
И вот это сочетание заработало - блокирует.
Одна из проблем, как оказалось, что proftpd как то при загрузке определяет локаль системы (у меня русская), и правила потом отрабатываются криво - то есть не видит он ошибок, поэтому и блокировок не создает в iptables.
Решил врубиться сам и вроде получилось. Как честный человек делюсь:
Идем в /etc/rc.d/init.d/proftpd
Находим
daemon proftpd $PROFTPD_OPTIONS 2>/dev/null
Если их два то для двух до этой строки вставляем:
export LC_MESSAGES="en_US.UTF-8"
export LC_ALL="en_US.UTF-8"
export LANG="en_US.UTF-8"
Выглядит результат как то так:
Code: Select all
prog="proftpd"
start() {
echo -n $"Starting $prog: "
export LC_MESSAGES="en_US.UTF-8"
export LC_ALL="en_US.UTF-8"
export LANG="en_US.UTF-8"
daemon proftpd $PROFTPD_OPTIONS 2>/dev/null
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/proftpd
}
Code: Select all
[proftpd-iptables]
enabled = true
filter = proftpd
action = iptables[name=ProFTPD, port=ftp, protocol=tcp]
logpath = /var/log/proftpd/proftpd.log
maxretry = 3
Фильтр привожу полностью, поскольку не помню корректировал ли его
Идем в /etc/fail2ban/filter.d/proftpd.conf
Code: Select all
# Fail2Ban fitler for the Proftpd FTP daemon
#
[INCLUDES]
before = common.conf
[Definition]
_daemon = proftpd
__suffix_failed_login = (User not authorized for login|No such user found|Incorrect password|Password expired|Account disabled|Invalid shell: '\S+'|User in \S+|Limit (access|configuration) denies login|Not a UserAlias|maximum login length exceeded).?
failregex = ^%(__prefix_line)s%(__hostname)s \(\S+\[<HOST>\]\)[: -]+ USER .*: no such user found from \S+ \[\S+\] to \S+:\S+ *$
^%(__prefix_line)s%(__hostname)s \(\S+\[<HOST>\]\)[: -]+ USER .* \(Login failed\): %(__suffix_failed_login)s\s*$
^%(__prefix_line)s%(__hostname)s \(\S+\[<HOST>\]\)[: -]+ SECURITY VIOLATION: .* login attempted\. *$
^%(__prefix_line)s%(__hostname)s \(\S+\[<HOST>\]\)[: -]+ Maximum login attempts \(\d+\) exceeded *$
ignoreregex =
# Author: Yaroslav Halchenko
# Daniel Black - hardening of regex
Одна из проблем, как оказалось, что proftpd как то при загрузке определяет локаль системы (у меня русская), и правила потом отрабатываются криво - то есть не видит он ошибок, поэтому и блокировок не создает в iptables.
Re: fail2ban - Настройка
Хорошо что разобрались :)
Re: fail2ban - Настройка
Можно как-то менее прожорливым сделать fail2ban?
Re: fail2ban - Настройка
Предлагается его лимитировать через ulimit -s 256abst wrote:Можно как-то менее прожорливым сделать fail2ban?
через fail2ban.service (LimitSTACK=256) или /etc/default/fail2ban
Re: fail2ban - Настройка
Добавляю:
В файле chains.conf появляется. В Iptables тоже.
Перезагружаю через панель fail2ban - пропадает из chains.conf, в iptables присутствует.
При перезагрузке сервера нет ни там, ни там. Приходится добавлять заново.
Пробовал в custom.sh добавить - не помогает.
Похоже, что v-stop-firewall чистит chains.conf. Причем цепочка WEB (родная), которую я добавил ручками в chains.conf, не слетает.
Как сделать так, чтобы chain не слетала?
Вообще, я решил использовать новую цепочку, потому что не работает это действие:
Срабатывает только последняя команда.
Code: Select all
v-add-firewall-chain ALL "22,80,443,8083" "TCP"
Перезагружаю через панель fail2ban - пропадает из chains.conf, в iptables присутствует.
При перезагрузке сервера нет ни там, ни там. Приходится добавлять заново.
Пробовал в custom.sh добавить - не помогает.
Похоже, что v-stop-firewall чистит chains.conf. Причем цепочка WEB (родная), которую я добавил ручками в chains.conf, не слетает.
Как сделать так, чтобы chain не слетала?
Вообще, я решил использовать новую цепочку, потому что не работает это действие:
Code: Select all
action = vesta[name=SSH]
vesta[name=WEB]
vesta[name=VESTA]
Re: fail2ban - Настройка
а как правильно настроить для почты?
в dovecot постоянно сыпятся примерно такие
включил
[dovecot] и [exim]
начало потихоньку банить
в dovecot постоянно сыпятся примерно такие
Code: Select all
Jul 26 15:13:02 auth: Info: passwd-file([email protected],181.214.206.189): unknown user
[dovecot] и [exim]
начало потихоньку банить
Re: fail2ban - Настройка
Здравствуйте! А можно подробней где и что прописать, чтобы ограничить потребление ОЗУ fail2ban?
" fail2ban.service (LimitSTACK=256) или /etc/default/fail2ban" - как новечку не совсем понятно где, что и как править. Пробовал по-разному, перезапускал сервис, но видимо не там ковыряю что-то. Заранее спасибо.
Re: fail2ban - Настройка
у кого в панели Vesta CP fail2ban выделено серым цветом (Как будто не активно, но сам f2b работает), вот решение.
fail2ban-server -V 0.10.5
viewtopic.php?f=40&t=19593
fail2ban-server -V 0.10.5
viewtopic.php?f=40&t=19593