Menu

Межсетевой экран CSF

CSF представляет собой скрипт конфигурации, созданный для обеспечения лучшей защиты для серверов, также в CSF существует большое количество настроек и опций для дополнительных проверок и обеспечения плавной работы. С помощью CSF можно ограничивать публичный доступ и запрещать доступ к электронной почте, веб-сайтам и т.д. Также в CSF присутствует скрипт Login Failure Daemon (LFD), который всегда запущен и сканирует неудачные попытки авторизоваться на сервер, тем самым предотвращая прямые атаки. Существует также массив дополнительных проверок, который проводит LFD для оповещения администратора сервера об изменениях на сервере, потенциальных проблемах и возможных их решениях.

1. Введение

LFD также блокирует IP адреса, с которых производились неудачные попытки авторизоваться. Блокировка является временной. Администратор может просматривать заблокированные IP адреса, для этого нужно включить службу оповещения электронной почты.

Возможности CSF:

  • Отслеживание авторизации
  • Отслеживание процесса
  • Наблюдение за директорией
  • Расширенные функции разрешения/запрещения
  • Информация по блокировкам
  • Защита от переполнения порта

Здесь представлены не все возможности CSF, более полная информация содержится в файле"readme.txt", который находится в папке csf.

2. Загрузка и установка

В начале необходимо удалить все предыдущие версии csf, которые могли быть загружены и только затем загрузить последнюю версию.

Загрузка производится следующим образом:

rm -fv csf.tgz
wget http://www.configserver.com/free/csf.tgz

Теперь распакуем файл с расширением tar в домашней директории и переместим его в директорию csf.

tar -xzf csf.tgz
cd csf

Всё готово к установке, но нам потребуется права администратора root, без них установку невозможно будет продолжить. Права администратора можно получить следующим способом, если потребуется введём пароль.

sudo su

Установим CSF:

sh install.sh

При удачной установке должна появится надпись «Installation Completed».

После окончания установки можно произвести проверку, система будет протестирована на наличие всех требуемых модулей iptables . После окончания проверки может возникнуть предупреждение, что не все функции могут быть запущены, но это не критично. В тесте не должно быть никаких критических ошибок. Для проведения теста введём следующее:

perl /usr/local/csf/bin/csftest.pl

При удачном окончании теста появится надпись «csf could function on this server».

3. Удаление других межсетевых экранов.

Важно удалить все остальные межсетевые экраны или их установщики для защиты сервера. Это делается во избежание конфликтов между межсетевыми экранами, что может привести к ошибкам или отсутствию доступа. Нельзя устанавливать другие межсетевые экраны iptables, если таковые уже были установлены, то их необходимо удалить. В большинстве систем уже установлены межсетевые экраны APF+BFD, которые также необходимо удалить.

Следующая команда используются для обнаружения и удаления других межсетевых экранов, если они установлены.

sh /usr/local/csf/bin/remove_apf_bfd.sh

В нашем случае межсетевых экранов установлено не было, в этом случае появится надпись «not found»

4. Удаление CSF и LFD

Если необходимо полностью удалить CSF, воспользуемся следующими командами:

cd /etc/csf
sh uninstall.sh

5. Настройка

CSF автоматически настроен для cPanel и DirectAdmin и будет работать со всеми стандартными открытыми портами. CSF также автоматически настраивает порт SSH при установке, если он работает на нестандартном порте. Также CSF автоматически составляет список подключенных IP адресов, которые возможны при установке. Тем не менее администратор обладает полным контролем и csf может быть настроен вручную, для удовлетворения всех нужд сервера.

CSF устанавливается в директорию "/etc/csf" и пользователю требуются привилегии даже для того, чтобы получить доступ к директории. В директории содержаться все файлы, необходимые для настройки и запуска csf. Во-первых, файл "csf.conf" позволяет включить/отключить и управлять каждой функцией csf. В директории также находятся различные файлы типа "csf.syslog", в которых содержаться файлы журнала событий, файл "csf.allow" используется для разрешения IP адреса в межсетевом экране и т.д.

6. Использование CSF для наблюдения за IP адресами

Опция "-w" или "--watch" используется для наблюдения и регистрации пакетов из указанных источников, например, когда пакеты преодолевают цепочки iptables. Эта опция становится крайне полезной, когда при отслеживании IP адрес был отвергнут или принят iptables. Внимание, лишь несколько IP адресов могут наблюдаться, и только на небольшой промежуток времени, иначе файлы журнала событий переполнятся записями. Для прекращения наблюдения необходимо перезапустить csf.

Наблюдение производится в несколько этапов:

Находим в директории /etc/csf файл конфигурации "csf.conf", в файле находим "WATCH_MODE" и устанавливаем значение "1".

Перезапускаем csf и lfd

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

csf -w 11.22.33.44

Просмотрим журнал событий ядра iptables на обращения от наблюдаемого IP адреса

По окончание отключаем WATCH_MODE и перезапускаем csf и lfd. Пример наблюдения за IP адресом 192.168.254.4, подключенным к порту 22:

Firewall: I:INPUT SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
Firewall: I:LOCALINPUT SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
Firewall: I:GDENYIN SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
Firewall: O:GDENYIN SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
Firewall: I:DSHIELD SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
Firewall: O:DSHIELD SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
Firewall: I:SPAMHAUS SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
Firewall: O:SPAMHAUS SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
Firewall: O:LOCALINPUT SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
Firewall: I:INVALID SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
Firewall: O:INVALID SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22
Firewall: I:LOGACCEPT SRC=192.168.254.4 DST=192.168.254.71 PROTO=TCP DPT=22

7. Включение функции разрешения/запрещения фильтров в IP адресах

В csf можно добавить дополнительные разрешения и запрещения фильтров:

tcp/udp|in/out|s/d=port|s/d=ip|u=uid

Последовательность действий представлена ниже:

tcp/udp  : EITHER tcp OR udp OR icmp protocol
in/out : EITHER incoming OR outgoing connections
s/d=port : EITHER source OR destination port number (or ICMP type)
(use a _ for a port range, e.g. 2000_3000)
s/d=ip : EITHER source OR destination IP address
u/g=UID : EITHER UID or GID of source packet, implies outgoing
connections, s/d=IP value is ignored

7.1 Разрешение IP адресов

IP адреса могут быть исключены по отдельности или же можно исключить и в определённом диапазоне, для этого IP адреса необходимо добавить в файл csf.allow. К примеру, мы хотим исключить диапазон 2.3.*.*, представим это в системе обозначений CIDR и также разрешим IP адрес 192.168.3.215 , для этого откроем файл:

nano /etc/csf/csf.allow

и добавим следующие строки (IP адреса в конкретном случае могут отличаться).

2.3.0.0/16
192.168.3.215

7.2 Блокировка IP-адресов

Блокировка выполнятся схожим образом, что и разрешение IP адресов. Однако важно запомнить, что IP адреса, представленные в файле csf.allow будут разрешены, даже если они присутствуют в файле блокировки. Для блокировки IP адреса, его необходимо добавить в файл "csf.deny", который находится в директории /etc/csf directory.

7.3 Игнорирование IP-адресов

IP адреса также можно игнорировать. Список игнорируемых IP адресов находится в файле "csf.ignore", если же IP адрес находится в csf.deny, то IP-адрес пройдёт через межсетевой экран, но будет заблокирован.

8. Заключение

В этой статье рассмотрено лишь несколько возможностей межсетевого экрана. Он предоставляет надёжную защиту для серверов от различных атак и позволяет полностью настроить сервер. Более полная информация содержится в файле readme.txt в папке программы.

Авторизуйтесь, чтобы получить возможность оставлять комментарии

Другие материалы в этой категории:

Go to top