#
# Local testing counterintelligence
#
rexec stream tcp nowait root /etc/local/klaxon klaxon rexec
link stream tcp nowait root /etc/local/klaxon klaxon link
supdup stream tcp nowait root /etc/local/klaxon klaxon supdup
tftp dgram udp wait root /etc/local/klaxon klaxon tftp
Подразумевается, что программа установлена в директории /etc/local/klaxon. Описанные в конфигурационном файле сервисы перенаправляются на klaxon, и вы сможете контролировать, когда и кто пытался обратиться к ним. Реально эти сервисы не должны использоваться в системе, и соответствующий порт открывает программа klaxon, и если обращение все же было, то это, скорее всего, сканирование или даже попытка взлома. Просто так на неиспользуемый порт никто подключаться не будет.
Такой метод хорош тем, что, например, сервис rexec (удаленное выполнение команд) не нужен пользователям, и его очень часто ищут хакеры для проникновения в систему. Если с определенного адреса была попытка (пусть и неудачная) обратиться к rexec, можно взять на заметку это событие и этот IP и уделять ему больше внимания.
Я рекомендую установить klaxon в системе не более чем на 2–3 сервиса, потому что слишком большое количество портов вызовет подозрение у взломщика. К тому же, если klaxon возьмет на обслуживание более 5 портов, то многократное сканирование может отнять лишние ресурсы системы. Это создаст предпосылки для проведения успешной атаки отказа от обслуживания.
Раньше эта программа принадлежала компании Psionic, но сейчас ссылка www.psionic.comведет на один из разделов компании Cisco, и утилиты там уже нет. Но в Интернете она еще осталась, и полный исходный код можно взять с сайта http://sourceforge.net/projects/sentrytools.
Так как программа поставляется в исходных кодах, то для ее установки требуется распаковка архива и компиляция. Это уже не должно у вас вызывать проблем.
Для разархивирования выполняем команду:
tar xzvf portsentry-1.2.tar.gz
В моем случае создалась директория portsentry_beta. У вас это имя может быть другим из-за несовпадения версии программы, возможно, изменившейся к моменту выхода книги. Имя каталога будет видно в процессе разархивирования, т.к. программа отображает на экране список файлов в виде каталог/имя файла
.
Перейдите в созданный каталог с исходными кодами, чтобы выполнять команды в нем:
cd portsentry_beta
Теперь поговорим о компиляции. Программа PortSentry написана универсально и может работать в разных Unix-подобных системах, и помимо Linux это может быть Solaris, FreeBSD, OpenBSD и т.д. При компиляции вы должны явно указать, какая ОС у вас установлена:
make linux
Теперь собственно установка. По умолчанию файлы программы копируются в директорию /usr/local/psionic, но этим можно управлять, если в файле makefile поменять параметр INSTALLDIR
. Если все устраивает, то выполняем команду:
make install
Затем нужно установить описанным для PortSentry способом программу Logcheck, поэтому приведу только команды:
tar xzvf logcheck-1.1.1.tar.gz
cd logcheck-1.1.1
make linux
make install
Эта программа по умолчанию устанавливается в директорию /usr/local/etc. Каталог также можно изменить, отредактировав параметр INSTALLDIR
в файле makefile.
Все настройки программы PortSentry находятся в файле /usr/local/psionic/portsentry/prtsentry.conf. По умолчанию все закомментировано, и вам необходимо только открыть нужные строки.
Например, вы хотите, чтобы программа следила за определенными портами. На этот случай в конфигурационном файле подготовлены закомментированные записи для разных типов серверов. Выберите нижний и уберите в начале строки знак "#". Тем самым вы укажете порты для наблюдения:
TCP_PORTS="1,11,15,79,111,119,143,540,635,1080,1524,2000,5742,6667"
UDP_PORTS="1,7,9,69,161,162,513,635,640,641,700,32770,32771,32772"
Помимо мониторинга в программе есть отличная способность — при выявлении попытки атаки конфигурировать Firewall на запрет любого трафика с компьютером, который пытался взломать систему. Но это тоже по умолчанию отключено, и чтобы воспользоваться этой возможностью, нужно убрать комментарий со строки, соответствующей вашему серверу.
Мы рассматриваем Linux, а в нем, чаще всего, используют Firewall ipchains. Для него нужна запись:
KILL_ROUTE="/sbin/ipchains -I input -s $TARGET$ -j DENY -l"
Убедитесь только, что программа сетевого экрана установлена по указанному пути ( /sbin/ipchains). Для этого можно выполнить команду поиска программы:
which ipchains
Если в вашей системе применяется iptables, то нужно использовать строку:
Читать дальше
Конец ознакомительного отрывка
Купить книгу