Все о Linux. LinuxRSP.Ru


Cвежие новости Linux и BSD, анонсы статей и книг прямо в почтовый ящик!
Подписаться письмом


 Сегодняшние новости:

25 лет исполнилось ядру Linux

Релиз KDevelop 5.0

Oracle открывает код JDK9 для ARM

Выпущен Timewarrior 1.0.0

Релиз Android 7.0

Percona Memory Engine для MongoDB на базе WiredTiger

PowerShell открыт и доступен для Linux

Форк TrueCrypt: VeraCrypt 1.18

Релиз Snapcraft 2.14

Релиз Go 1.7

Стабильный выпуск рабочего стола Lumina

Вышла первая версия аналога OpenCV - DCV 0.1

Выпуск минималистичной программы для мониторинга jsonmon 3

В MIT разработали новый язык программирования

Первый релиз Qt5Gtk2

Godot 2.1 - новая версия открытого игрового движка

Свободная цифровая станция звукозаписи: Ardour 5.0

Обновление SkypeWeb Plugin for Pidgin

Вышла версия 3.0 Android File Transfer для Linux (и для OS X)

Программный аналог MIDI-контроллера для создания музыки: Launchpadd v1.3

Mozilla спонсирует поддержку Python 3.5 в PyPy

Ef 0.08 - программа для моделирования динамики заряженных частиц

Обновление текстового редактора TEA до версии 42.0.0

Релиз OpenOrienteering Mapper 0.6.4

Вышли Guix и GuixSD 0.11

Релиз Opera 39

Выпуск LibreOffice 5.2

В OpenSSH обнаружены и устранены некоторые уязвимости

Эмулятор FCEUX 2.2.3

Компания Билайн переходит на российскую СУБД с открытым исходным кодом Tarantool

Google

 Новые статьи :

Утилиты для восстановления потерянных данных в Linux

Лучшие файловые менеджеры для Android

20 лучших бесплатных книг о Linux

Как сгенерировать открытый/закрытый SSH-ключ в Linux

Grive - клиент Google Drive для Linux с открытым исходным кодом

Протокол IPv6: варианты подключения

Сервер из образа: DHCP + TFTP + Initrd + OpenVZ

Обзор веб-панелей управления хостингом

Приёмы работы с Vim

Nginx как Reverse Proxy для сайта, использующего SSL

Разработка модулей ядра Linux

Мониторинг нагрузки http-сервера Apache 2

Перевод комментариев к файлу конфигурации Squid

Решение проблем при использовании "1c предприятие" 8.2 в Linux

Advanced Bash-Scripting Guide Искусство программирования на языке сценариев командной оболочки







Rambler's Top100





 
 

Portsentry

Настройка

Теперь ты можешь настроить работу Portsentry по своему усмотрению. Файл portsentry.conf содержит директивы конфигурации следующего формата:


ОПЦИЯ="значение"

Опции поддерживаются такие:

TCP_PORTS
Здесь через запятую перечисляются TCP-порты, которые проверяются Portsentry. При подключении к ним, Portsentry записывает в информацию об этом в логи, затем выполняет команду, заданную пользователем, после этого блокирует хост посредством ipchains. Опция используется при работе в режиме Classic и Enhanced Stealth Scan Detection Mode. Желательно всегда оставлять порт 1 открытым, т.к. большинство сканировщиков портов начинают проверять с 1 и далее. Это способствует более быстрому обнаружению сканирования. TCP-порты, открытые другими программами (25 при загруженном sendmail, 80 при загруженном httpd и т.д.) в этот список включатся не должны.

TCP_PORTS="1,11,15,79,111,119,143,540,635"

UDP_PORTS
То же что и TCP_PORTS, но для UDP-портов.

UDP_PORTS="1,7,9,69,161,162,513,635,640,641"
ADVANCED_PORTS_TCP
Значение этой опции определяет верхнюю границу множества TCP-портов, которые проверяются Portsentry при работе в режиме Advanced Stealth Scan Detection Mode. Нижней границей является 1, т.е. при значении ADVANCED_PORTS_TCP равное 1024 проверяется подключение к любому порту в промежутке от 1 до 1024.

ADVANCED_PORTS_TCP="1023"
ADVANCED_PORTS_UDP
То же, что и ADVANCED_PORTS_TCP, но для UDP-портов.

ADVANCED_PORTS_UDP="1023"
ADVANCED_EXCLUDE_TCP
TCP-порты, которые исключаются из промежутка 1..ADVANCED_PORTS_TCP, т.е. из списка портов, предназначенных для проверки. Здесь обязательно нужно перечислить TCP-порты, открытые работающими программами.

ADVANCED_EXCLUDE_TCP="23,25,80,110,113,139"
ADVANCED_EXCLUDE_UDP
То же, что и ADVANCED_EXCLUDE_TCP, но для UDP-портов.

ADVANCED_EXCLUDE_UDP="520,138,137,67"
IGNORE_FILE
Имя и путь к файлу с IP-адресами хостов, которые не блокируются при подключении к порту, проверяемому Portsentry.

IGNORE_FILE="/usr/local/psionic/portsentry/portsentry.ignore"
HISTORY_FILE
Имя и путь к файлу с историей работы Portsentry. В файл записывается время блокирования, имя и IP хоста, атакованный порт, протокол (TCP или UDP). Файл не создается заново при каждом запуске.

HISTORY_FILE="/usr/local/psionic/portsentry/portsentry.history"
BLOCKED_FILE
Строка, из которой формируется имя и путь к файлам, куда записывается информация о блокированных хостах. Имя файла формируется так BLOCKED_FILE.РЕЖИМ_РАБОТЫ, где режим работы может быть tcp, udp, stcp, sudp, atcp, audp, т.е. если BLOCKED_FILE равен /usr/local/psionic/portsentry/portsentry.blocked, а режим работы audp, то имя файла будет /usr/local/psionic/portsentry/portsentry.blocked.audp.

BLOCKED_FILE="/usr/local/psionic/portsentry/portsentry.blocked"
BLOCK_TCP
Эта опция в зависимости от значения, задает ответную реакцию Portsentry на сканирование портов: 0 - не блокировать хост, не запускать заданную пользователем команду, 1 - блокировать хост и запустить команду, 2 - только запустить заданную команду. Команда задается при помощи опции KILL_RUN_CMD.

BLOCK_TCP="1"
BLOCK_UDP
То же, что и BLOCK_TCP, но для UDP.

BLOCK_UDP="1"
KILL_ROUTE
Эта опция задает команду, которую надо выполнить для блокирования атакующего хоста, установив на него firewall или удалив его сетку из таблицы роутинга. Для указания IP-адреса используется переменная $TARGET$. Переменная $PORT$ используется для указания порта, к которому было подключение.

KILL_ROUTE="/sbin/ipchains -I input -s $TARGET$ -j DENY -l"
KILL_HOSTS_DENY
Эта опция задает строку, которая вписывается в /etc/hosts.deny, для блокирования доступа к сервисам, запускаемым через inetd.

KILL_HOSTS_DENY="ALL: $TARGET$"
KILL_RUN_CMD
С помощью этой опции можно определить команду, запускаемую до блокирования хоста. Можно поставить туда отправку e-mail'а администратору или запуск нюка в сторону сканировщика.:)

KILL_RUN_CMD="teardrop 192.168.0.1 $TARGET$ -s $PORT$ -t 139 -n 5000"
SCAN_TRIGGER
Данная опция задает количество разрешенных подключений к проверяемым Portsentry портам одного и того же хоста, прежде, чем Portsentry начнет действовать. 0 определяет немедленную реакцию.

SCAN_TRIGGER="0"
PORT_BANNER
Задает сообщение, которое будет выводится при подключении к проверяемому Portsentry порту. Автор Portsentry Craig H. Rowland в инструкции по установке пишет, что не рекомендует вставлять туда какое либо сообщение, т.к. это может разозлить или раззадорить сканировщика и подтолкнуть его к дальнейшим действиям. Решать тебе...:)

PORT_BANNER="** UNAUTHORIZED ACCESS PROHIBITED *** YOUR CONNECTION ATTEMPT HAS BEEN LOGGED. GO AWAY."

Пример portsentry.conf:


TCP_PORTS="1,11,15,79,111,119,143,540,635,1080,1524,2000,5742,6667,12345,12346"
UDP_PORTS="1,7,9,69,161,162,513,635,640,641,700,32770,32771,32772,32773,32774"
ADVANCED_PORTS_TCP="1023"
ADVANCED_PORTS_UDP="1023"
ADVANCED_EXCLUDE_TCP="23,25,80,110,113,139"
ADVANCED_EXCLUDE_UDP="520,138,137,67"
IGNORE_FILE="/usr/local/psionic/portsentry/portsentry.ignore"
HISTORY_FILE="/usr/local/psionic/portsentry/portsentry.history"
BLOCKED_FILE="/usr/local/psionic/portsentry/portsentry.blocked"
BLOCK_UDP="1"
BLOCK_TCP="1"
KILL_ROUTE="/sbin/ipchains -I input -s $TARGET$ -j DENY -l"
KILL_HOSTS_DENY="ALL: $TARGET$"
KILL_RUN_CMD="echo Ports Scaning from $TARGET$ on $PORT$ | mail root"
SCAN_TRIGGER="0"

В файле portsentry.ignore ты должен перечислить IP-адреса компьютеров, которые не должны быть блокированы программой при подключении к проверяемому порту. По умолчанию, там содержится два IP-адреса: 127.0.0.1 и 0.0.0.0.

Предыдущая

Содержание

Следующая


(c)Ерижоков А.А., 2000.
Использование данного документа разрешено только с согласия автора и с указанием первоисточника: DH's Linux Site




      

Связь | О проекте LinuxRSP | Реклама | О Linux
© 1999-2017 LinuxRSP