Установка и настройка CSF
Разработка ConfigServer Security & Firewall (CSF) завершена и пакет больше не поддерживается. Последняя стабильная версия протестирована на Debian 13, однако в будущих версиях системы некоторые модули и расширения могут работать некорректно.
Существуют форки пакета на GitHub, но они не отражают идеи оригинального разработчика и не рассматриваются в данной инструкции. Здесь описывается работа исключительно с оригинальной версией CSF.
Введение
Брандмауэр Config Server Firewall (или CSF) - это бесплатный и продвинутый брандмауэр для большинства дистрибутивов Linux и VPS на базе Linux. В дополнение к базовой функциональности брандмауэра – фильтрации пакетов – CSF включает в себя другие функции безопасности, такие как обнаружение входа в систему/ вторжений/наводнений. CSF включает интеграцию пользовательского интерфейса для cPanel, DirectAdmin и Webmin, но в этом руководстве рассматривается только использование командной строки. CSF способен распознавать множество атак, таких как сканирование портов, синхронизирующие потоки и атаки методом перебора при входе во многие сервисы. Он настроен на временную блокировку клиентов, которые, как было обнаружено, атакуют облачный сервер.
С полным списком поддерживаемых операционных систем и функций можно ознакомиться на веб-сайте Config Server.
Для начала, пожалуйста, обратите внимание, что Perl и libwww являются обязательными условиями для установки CSF в любом из поддерживаемых дистрибутивов (RHEL и CentOS, openSUSE, Debian и Ubuntu). Поскольку он должен быть доступен по умолчанию, с вашей стороны не требуется никаких действий, если только один из следующих шагов не вернет фатальную ошибку (в этом случае используйте систему управления пакетами для установки отсутствующих зависимостей).
yum install perl-libwww-perl #CentOS/Fedora
apt install libwww-perl #Debian/Ubuntu
Если Вы хотите установить CSF на Debian 11 и выше, то Вам потребуется установить пакет iptables. Сделать это можно командой: apt install iptables
Шаг 1 – Загрузка CSF
Перейдем в папку /usr/src и скачаем CSF:
cd /usr/src
wget https://lab.planetahost.ru/repo/csf/csf.tgz
Шаг 2 – Распакуем архив с CSF
Распаковываем архив с файлами и переходим в папку csf:
tar xzf csf.tgz
cd csf
Шаг 3 – Запускаем скрипт установки
Скрипт проверит, установлены ли все зависимости, создаст необходимые структуры каталогов и файлы для веб-интерфейса, обнаружит открытые в данный момент порты и напомнит вам перезапустить демонов csf и lfd после завершения начальной настройки.
sh install.sh
Ваш IP-адрес был добавлен в белый список, если это возможно. Кроме того, SSH-порт был открыт автоматически, даже если он использует пользовательский порт. Брандмауэр также был настроен на включение режима тестирования, что означает, что правила iptables будут автоматически удалены через пять минут после запуска CSF. Это следует отключить, как только вы убедитесь, что ваша конфигурация работает, и вы не будете заблокированы.
Теперь запустим стандартный тест для проверки наличия всех модулей для корректной работы CSF:
perl /usr/local/csf/bin/csftest.pl
Вы должны получить такой вывод:
Testing ip_tables/iptable_filter...OK
Testing ipt_LOG...OK
Testing ipt_multiport/xt_multiport...OK
Testing ipt_REJECT...OK
Testing ipt_state/xt_state...OK
Testing ipt_limit/xt_limit...OK
Testing ipt_recent...OK
Testing xt_connlimit...OK
Testing ipt_owner/xt_owner...OK
Testing iptable_nat/ipt_REDIRECT...OK
Testing iptable_nat/ipt_DNAT...OK
RESULT: csf should function on this server
Если получаете ошибку, то проверьте наличие пакета iptables на своем сервере.
Шаг 4 – Отключение Firewalld
Отключите брандмауэр, если он запущен, и настройте CSF:
systemctl stop firewalld
systemctl disable firewalld
Шаг 5 – Базовая настройка CSF
CSF можно настроить, отредактировав его файл конфигурации csf.conf в /etc/csf:
nano /etc/csf/csf.conf
