Portsentry - угадайте на кого охота?
@boro64
Приступим наконец к установке и настройке в debian.
sudo apt-get install portsentry
Поправим конфиг файл:
nano /etc/portsentry/portsentry.conf
ВАЖНО! Будьте аккуратны, не пытайтесь при данном конфиге ходить по портам указанным в TCP_PORTS, UDP_PORTS - Вас забанит ваш же сервер! Если хотите только сканер настройте в конфиге:
BLOCK_UDP="2" BLOCK_TCP="2"
Эти опции в зависимости от значения, задают ответную реакцию Portsentry на сканирование портов: 0 — не блокировать хост, не запускать заданную пользователем команду, 1 — блокировать хост и запустить команду, 2 — только запустить заданную команду. Команда задается при помощи опции KILL_RUN_CMD.
TCP_PORTS="1,11,8080,3128,15,79,111,119,143,540,635,1080,1524,2000,5742,6667,12345,12346,20034,27665,31337,32771,32772,32773,32774,40421,49724,54320" UDP_PORTS="1,7,9,69,161,162,513,635,640,641,700,37444,34555,31335,32770,32771,32772,32773,32774,31337,54321" ADVANCED_PORTS_TCP="1024" ADVANCED_PORTS_UDP="1024" ADVANCED_EXCLUDE_TCP="113,139" ADVANCED_EXCLUDE_UDP="520,138,137,67" IGNORE_FILE="/etc/portsentry/portsentry.ignore" HISTORY_FILE="/var/lib/portsentry/portsentry.history" BLOCKED_FILE="/var/lib/portsentry/portsentry.blocked" RESOLVE_HOST = "0" BLOCK_UDP="1" BLOCK_TCP="1" KILL_ROUTE="/sbin/iptables -I INPUT -s $TARGET$ -j DROP && /sbin/iptables -I INPUT -s $TARGET$ -m limit --limit 3/minute --limit-burst 5 -j LOG --log-level DEBUG --log-prefix 'Portsentry: dropping: '" KILL_HOSTS_DENY="ALL: $TARGET$ : DENY" KILL_RUN_CMD_FIRST = "1" KILL_RUN_CMD="./etc/portsentry/notify.sh $TARGET$ $PORT$ $MODE$" SCAN_TRIGGER="1"
В данном примере конфига задумано так, что уведомление о скане портов будет приходить админу в тележеньку.
Если вам не нужно, закоментируйте KILL_RUN_CMD_FIRST и KILL_RUN_CMD.
nano /etc/portsentry/notify.sh chmod +x /etc/portsentry/notify.sh
#!/bin/bash
TOKEN=bottoken
CHAT_ID=adminid
attak_date="`date +%Y-%m-%d`"
attak_time="`date +%H:%M:%S`"
local_mashine="`uname -n`"
hacker_IP=$1
scanned_port=$2
mode=$3
hacker_DNS=`host ${hacker_IP} | awk '{print $5}'`
URL="https://api.telegram.org/bot$TOKEN/sendMessage"
curl -s -X POST $URL -d chat_id=$CHAT_ID -d text="Обнаружен скан портов на $local_mashine, Отсканированные порты: $scanned_port, Режим: $mode. Скан был произведён с IP: $hacker_IP, DNS:$hacker_DNS, $attak_date $attak_time"
nano /etc/default/portsentry
TCP_MODE="atcp" UDP_MODE="audp"
И наконец перезапустим:
/etc/init.d/portsentry restart
На этом всё.
Инфу черпал отсюда http://ishop-security.blogspot.ru/2014/11/portsentry-debianubuntu-gnulinux.html