Установка IPSET, TARPIT и т.д. на Squeeze

Честно скопи-пастил отсюда 🙂

# aptitude update && aptitude install module-assistant xtables-addons-source
# m-a prepare
# m-a auto-install xtables-addons-source
# depmod -a

Новые таржеты для iptables:

  • CHAOS: randomly use REJECT, DELUDE or TARPIT targets.
    This will fool network scanners by returning random results
  • DELUDE: always reply to a SYN by a SYN-ACK. This will fool TCP half-open discovery
  • DHCPADDR: replace a MAC address from and to a VMware host
  • IPMARK: mark a packet, based on its IP address
  • LOGMARK: log packet and mark to syslog
  • SYSRQ: trigger a sysreq over the network (sending a saK over the network looks like a real funny ida
  • TARPIT: try to slow down (or DoS) remote host by capturing the session and holding it for a long time, using a 0-bytes TCP window. Run that on port 25 if you have no mail server to slow down spammers 😉

Новые совпадения (matches) для iptables:
condition: match on boolean value stored in /proc/net/nf_condition/name
dhcpaddr: match the DHCP Client Host address in a DHCP message
fuzzy: match a rate limit based on a fuzzy logic controller
geoip: match a packet by its source or destination country
ipp2p: match (certain) p2p protocols
quota2: named counters
pknock: port knock
.... и другие.

У себя собрал, но запустить в работу еще руки не дошли.

CSF FireWall + DirectAdmin

ConfigServer сделали интеграцию CSF фаирвола с панелью управления хостингом DirectAdmin.

При установке скрипт проверяет необходимые параметры и сам интегрируется в администртивную часть DirectAdmin-а. Все просто и удобно. Настройки CSF фаирвола будут доступны для редактирования в административной части хостинг-панели.

Итак, устанавливаем:

wget http://www.configserver.com/free/csf.tgz
tar -xzf csf.tgz
cd csf
sh install.sh

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

# perl /etc/csf/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 ipt_owner...OK
Testing iptable_nat/ipt_REDIRECT...OK

RESULT: csf should function on this server

При установке скрипт автоматически делает преднастройку первоначального конфигурационного файла.
После инсталляции можно приступить к более тонкой настройке параметров либо прямо в файле /etc/csf.conf, либо в панели управления.
Скиншоты GUI посмотреть можно тут, тут и тут

CSF великолепно работает как с панелями так и без них, CSF Firewall интегрируется в такие панели как: Cpanel, DirectAdmin, Webmin

APF (Advanced Policy Firewall)

Достаточно известный firewall под названием APF (Advanced Policy Firewall)
APF - надстройка над iptables и распространяется по лицензии GNU GENERAL PUBLIC LICENSE.
Уверенно работает на следующих ОС:
Redhat Enterprise AS/ES 2+
CentOS Any
Fedora Core Any
Slackware 8.0+
Debian GNU/Linux 3.0+
Suse Linux 8.1+
Unbuntu Any
TurboLinux Server 9+
TurboLinux Fuji (Desktop)
RedHat Linux 7.3,8,9

APF достаточно прост в установке и использовании.
Итак:

# wget http://www.r-fx.ca/downloads/apf-current.tar.gz
# tar -xvf ./apf-current.tar.gz
# cd apf-9.6-5
# ./install.sh
Installing APF 9.6-5: Completed.

Installation Details:
Install path: /etc/apf/
Config path: /etc/apf/conf.apf
Executable path: /usr/local/sbin/apf

Далее, в конфигурационном файле /etc/apf/apf.conf необходимо сделать некоторые правки.
Каждый параметр в конфигурационном файле достаточно подробно расписан и разобраться за что он отвечает, думаю, не составит особого труда.
Некоторые моменты:
DEVEL_MODE="1"
включается для проверки работоспособности фаирвола. Если все настроено правильно, данный параметр нужно установить в "0", иначе фаирвол будет остановлен через 5 минут после старта.

Описываем входящие порты:
IG_TCP_CPORTS="20,21,25,53,80,110,143,443,587,2222,465,993,995"
# 2222 - для панели directAdmin
# 587 - дополнительный smtp порт для exim-a

Описываем исходящие порты:
EG_TCP_CPORTS="21,25,80,443,43,35000_35999"
# 35000_35999 порты для работы proftpd в пассивном режиме
# эти порты должны соответствовать тем, которые указаны в настройках proftpd

Старт:
apf -s
Остановка:
apf -f
Блокировать определённый IP адрес:
apf -d 123.123.123.123 comments
Разблокировать определённый IP адрес:
apf -u 123.123.123.123

Более подробно о командах и конфигурации описано в файле: /etc/apf/doc.README.apf

Довольно часто AFP используют совместно с BFD (Brute Force Detection)
BFD - это shell-скрипт, который сканирует логи (apache, sshd, ftp) на предмет несанкционированного доступа, подбора паролей и т.д. и при превышении заданных значений - блокирует IP с помощью APF.
Подробнее в README на сайте.

...... продолжение следует....