Поиск по сайту:

Как установить брандмауэр сервера конфигурации (CSF) в Debian 11


На этой странице

  1. Предпосылки
  2. Начало работы
  3. Установите CSF в Debian 11
  4. Настройка CSF
  5. Основные команды CSF
  6. Заключение

CSF, также известный как «Конфигурационный брандмауэр», представляет собой бесплатный расширенный брандмауэр для систем Linux. Он поставляется с некоторыми расширенными функциями безопасности, такими как обнаружение вторжений, наводнений и входа в систему. Он предназначен для защиты от многих атак, таких как сканирование портов, SYN-флуд и атаки методом грубой силы при входе в систему. Он также обеспечивает интеграцию с cPanel, DirectAdmin и Webmin.

В этом руководстве объясняется установка CSF, базовая конфигурация и основные команды для CSF в Debian 11.

Предпосылки

  • Сервер под управлением Debian 11.
  • На сервере настроен пароль root.

Начиная

Перед запуском рекомендуется обновить ваши системные пакеты до обновленной версии. Вы можете сделать это с помощью следующей команды:

apt-get update -y

После обновления всех пакетов установите другие необходимые зависимости с помощью следующей команды:

apt-get install sendmail dnsutils unzip libio-socket-ssl-perl libcrypt-ssleay-perl git perl iptables libnet-libidn-perl libio-socket-inet6-perl libsocket6-perl -y

Установите CSF на Debian 11

По умолчанию пакет CSF не включен в стандартный репозиторий Debian 11. Вам нужно будет скачать его с официального сайта.

Вы можете загрузить последнюю версию CSF с помощью следующей команды:

wget http://download.configserver.com/csf.tgz

После завершения загрузки извлеките загруженный файл с помощью следующей команды:

tar -xvzf csf.tgz

Затем измените каталог на CSF и запустите сценарий install.sh, чтобы установить CSF на свой сервер.

cd csf
bash install.sh

После установки CSF вы должны получить следующий вывод:

Don't forget to:
1. Configure the following options in the csf configuration to suite your server: TCP_*, UDP_*
2. Restart csf and lfd
3. Set TESTING to 0 once you're happy with the firewall, lfd will not run until you do so

Adding current SSH session IP address to the csf whitelist in csf.allow:
*WARNING* URLGET set to use LWP but perl module is not installed, fallback to using CURL/WGET
Adding 106.222.22.32 to csf.allow only while in TESTING mode (not iptables ACCEPT)
*WARNING* TESTING mode is enabled - do not forget to disable it in the configuration
'lfd.service' -> '/usr/lib/systemd/system/lfd.service'
'csf.service' -> '/usr/lib/systemd/system/csf.service'
Created symlink /etc/systemd/system/multi-user.target.wants/csf.service → /lib/systemd/system/csf.service.
Created symlink /etc/systemd/system/multi-user.target.wants/lfd.service → /lib/systemd/system/lfd.service.
Failed to disable unit: Unit file firewalld.service does not exist.
Failed to stop firewalld.service: Unit firewalld.service not loaded.
Unit firewalld.service does not exist, proceeding anyway.
Created symlink /etc/systemd/system/firewalld.service → /dev/null.
'/etc/csf/csfwebmin.tgz' -> '/usr/local/csf/csfwebmin.tgz'

Installation Completed

После установки проверьте необходимые модули iptables для 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

Настроить CSF

Далее вам нужно будет настроить CSF в соответствии с вашими требованиями. Вы можете настроить его, отредактировав файл /etc/csf/csf.conf.

nano /etc/csf/csf.conf

Сначала найдите строку TESTING=\1\ и измените значение на \0\, чтобы включить CSF:

TESTING = "0"

Затем найдите строку RESTRICT_SYSLOG=\0\ и измените значение на 3, чтобы установить доступ к файлам syslog/rsyslog только для членов группы RESTRICT_SYSLOG_GROUP:

RESTRICT_SYSLOG = "3"

Добавьте необходимые входящие открытые порты TCP в следующей строке:

TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995"

Добавьте необходимые исходящие TCP-порты в следующую строку:

# Allow outgoing TCP ports
TCP_OUT = "20,21,22,25,53,80,110,113,443,587,993,995"

Добавьте необходимые входящие открытые порты UDP в следующей строке:

# Allow incoming UDP ports
UDP_IN = "20,21,53,80,443"

Добавьте необходимые исходящие UDP-порты в следующую строку:

# Allow outgoing UDP ports
UDP_OUT = "20,21,53,113,123"

Сохраните и закройте файл, затем перезагрузите брандмауэр CSF, чтобы применить изменения:

csf -r

Основные команды CSF

Чтобы остановить брандмауэр CSF, выполните следующую команду:

csf -s

Чтобы очистить брандмауэр CSF, выполните следующую команду:

csf -f

Чтобы получить список всех правил IPTABLES, добавленных CSF, выполните следующую команду:

csf -l

Чтобы запустить CSF и включить его запуск при перезагрузке системы, выполните следующую команду:

systemctl start csf
systemctl enable csf

Чтобы проверить состояние брандмауэра CSF, выполните следующую команду:

systemctl status csf

Вы должны получить следующий результат:

? csf.service - ConfigServer Firewall & Security - csf
     Loaded: loaded (/lib/systemd/system/csf.service; enabled; vendor preset: enabled)
     Active: active (exited) since Sat 2021-09-18 15:42:04 UTC; 11s ago
    Process: 8022 ExecStart=/usr/sbin/csf --initup (code=exited, status=0/SUCCESS)
   Main PID: 8022 (code=exited, status=0/SUCCESS)
        CPU: 705ms

Sep 18 15:42:04 debian11 csf[8022]: ACCEPT  all opt    in * out lo  ::/0  -> ::/0
Sep 18 15:42:04 debian11 csf[8022]: LOGDROPOUT  all opt    in * out !lo  ::/0  -> ::/0
Sep 18 15:42:04 debian11 csf[8022]: LOGDROPIN  all opt    in !lo out *  ::/0  -> ::/0
Sep 18 15:42:04 debian11 csf[8022]: csf: FASTSTART loading DNS (IPv4)
Sep 18 15:42:04 debian11 csf[8022]: csf: FASTSTART loading DNS (IPv6)
Sep 18 15:42:04 debian11 csf[8022]: LOCALOUTPUT  all opt -- in * out !lo  0.0.0.0/0  -> 0.0.0.0/0
Sep 18 15:42:04 debian11 csf[8022]: LOCALINPUT  all opt -- in !lo out *  0.0.0.0/0  -> 0.0.0.0/0
Sep 18 15:42:04 debian11 csf[8022]: LOCALOUTPUT  all opt    in * out !lo  ::/0  -> ::/0
Sep 18 15:42:04 debian11 csf[8022]: LOCALINPUT  all opt    in !lo out *  ::/0  -> ::/0
Sep 18 15:42:04 debian11 systemd[1]: Finished ConfigServer Firewall & Security - csf.

Чтобы разрешить определенный хост по IP-адресу, выполните следующую команду:

csf -a 192.168.100.10

Чтобы запретить определенный хост по IP-адресу, выполните следующую команду:

csf -d 192.168.100.11

Чтобы удалить IP из списка разрешенных, выполните следующую команду:

csf -ar 192.168.100.10

Чтобы удалить IP из списка запрещенных, выполните следующую команду:

csf -dr 192.168.100.11

Вы можете добавить доверенные IP-адреса, отредактировав файл /etc/csf/csf.allow:

nano /etc/csf/csf.allow

Добавьте доверенные IP-адреса:

192.168.100.10

Вы можете добавить ненадежные IP-адреса, отредактировав файл /etc/csf/csf.deny:

nano /etc/csf/csf.deny

Добавьте свои ненадежные IP-адреса:

192.168.100.11

Заключение

В приведенном выше руководстве мы объяснили, как установить брандмауэр CSF в Debian 11. Мы также покажем вам некоторые основные команды CSF для управления вашим трафиком. Дополнительную информацию см. в документации CSF.