CSF (ConfigServer Security Firewall) — это популярный инструмент для управления безопасностью и файрволлом на серверах, который часто используется в средах, где установлены панели управления, такие как ISPmanager. CSF предлагает множество функций для защиты сервера.
Какие функции выполняет CSF?
Комплексный инструмент безопасности для серверов на базе Linux способен закрыть сразу несколько потребностей пользователя. Среди его ключевых функциональных задач можно отметить:
- Управление брандмауэром. Фильтрация сетевого трафика позволяет разрешать блокировки и разблокировки IP-адресов, а также управлять доступом к портам и определенным протоколам. Также пользователь может настраивать правила для входящего и исходящего трафика (
TCP_INиTCP_OUT). - Защита от брутфокс-атак. Login Failure Daemon способен отслеживать неудачные попытки входа и автоматически блокирует IP-адреса, превысившие допустимые лимиты попыток.
- Обнаружение вторжений. Инструмент анализирует системные журналы и определяет сканирование портов, подозрительную активность.
- Защита от DDoS-атак. Предусмотрена функция ограничения количества коннектов с одного IP-адреса, регулировка скорости трафика, перегрузка ресурсов.
После установки CFS идёт перезапись правил брандмауэра. Поэтому важно выполнять установку сразу после иннсталяции ISPManager 6. Также выполнить ручную настройку файла, используя для этого функцию /etc/csf/csf.conf
ВАЖНО: в августе 2025 года была прекращена официальная поддержка CSF. Файлы доступны только на ГитХаб
Как правильно установить ConfigServer Security Firewall?
Чтобы выполнить установку CSF, в первую очередь следует скачать архив и запустить установщик:
wget https://download.configserver.com/csf.tgz
tar -xzf csf.tgz
cd csf
sh install.sh
После окончания установки проверьте работу PERL-модулей CSF:
perl /usr/local/csf/bin/csftest.pl
Если все модули работают корректно, скрипт вернет следующее:
Testing ip_tables/iptable_filter...OKTesting ipt_LOG...OKTesting ipt_multiport/xt_multiport...OKTesting ipt_REJECT...OKTesting ipt_state/xt_state...OKTesting ipt_limit/xt_limit...OKTesting ipt_recent...OKTesting xt_connlimit...OKTesting ipt_owner/xt_owner...OKTesting iptable_nat/ipt_REDIRECT...OKTesting iptable_nat/ipt_DNAT...OK
RESULT: csf should function on this server
Сразу после этого вы можете внести нужные изменения в настройки для эффективной работы инструмента. Например, файл /etc/csf/csf.conf вы можете установите следующие значения:
TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,853,993,995,2077,2078,2079,2080,2082,2083,2086,2087,2095,2096,8443,1500,35000:35999"TCP_OUT = "20,21,22,25,37,43,53,80,110,113,443,587,853,873,993,995,2086,2087,2089,2703,1501"TESTING = "0"UI = "1"UI_USER = "root"UI_PASS = "passwd"DOCKER = "1" (если планируется использование Docker, в том числе альтернативных СУБД)
Затем в файл /etc/csf/ui/ui.allow добавьте IP-адреса, с которых будет разрешен доступ к веб-интерфейсу CSF.
После внесения изменений, запустите CSF командой:
csf -e
В целом для правильной установки инструмента необходимо следовать инструкциям, которые можно найти в документации CSF.
Что делать, если CSF не работает?
Причин может быть несколько. Но для нас самое главное - проверить статус служб. Запускаем Login Failure Daemon командой:
systemctl status csf
systemctl status lfg
При выводе failed можно увидеть причину ошибки, которая предотвращает запуск CSF. Часто это происходит по причине конфликта с другими брандмауэрами. Если установлены UFW, firewalld или другие инструменты важно их деактивировать.
Отключаем автозапуск сторонних инструментов (на примере firewalld):
systemctl stop firewalld
systemctl disable firewalld
В случае, когда они были отключены, но запуск CSF не происходит, идём в файл etc/csf/csf.conf
В нём проверяем:
- корректность портов в значениях
TCP_IN,TCP_OUT,UDP_IN,UDP_OUT - корректность синтаксиса;
- правильность путей к
iptables.
Если проблема всё равно не решается, переустанавливаем CSF.