Архивы: iptables

как найти спаммера в LAN сети

Перестали уходить письма с почтового сервера с вот таким сообщением

Subject: Undelivered Mail Returned to Sender

This is the mail system at host example.ru.

I'm sorry to have to inform you that your message could not
be delivered to one or more recipients. It'
s attached below.

For further assistance, please send mail to postmaster.

If you do so, please include this problem report. You can
delete your own text from the attached returned message.

                   The mail system

<vyborov@blabla.ru>: host mail.blabla.ru[89.188.122.122] said: 554 5.7.1
    Service unavailable; Client host [111.111.176.99] blocked using
    cbl.abuseat.org; Blocked - see
    http://cbl.abuseat.org/lookup.cgi?ip=111.111.176.99 (in reply to RCPT TO
    command)

Сеть за нашим натом большая, и вполне возможно кто-то подхватил троян.
Как найти кто?

Сначала смотрим начнём вести лог кто пользуется 25м портом шлюза

iptables -A FORWARD -p tcp -m tcp -s 192.168.0.0/16 --dport 25 -j LOG --log-level debug --log-prefix "outgoing mail "

Теперь посмотрим кто будет нам светится.

tail -f /var/log/syslog | grep outgoing

Долго ждать не пришлось, супермега активность идёт от.

Nov 12 09:38:57  kernel: [1502790.410756] outgoing mail IN=eth0 OUT=eth1 SRC=192.168.5.133 DST=205.188.186.137 LEN=54 TOS=0x00 PREC=0x00 TTL=127 ID=47636 DF PROTO=TCP SPT=4779 DPT=25 WINDOW=64886 RES=0x00 ACK PSH URGP=0
Nov 12 09:38:57  kernel: [1502790.607265] outgoing mail IN=eth0 OUT=eth1 SRC=192.168.5.133 DST=205.188.186.137 LEN=58 TOS=0x00 PREC=0x00 TTL=127 ID=47671 DF PROTO=TCP SPT=4779 DPT=25 WINDOW=64868 RES=0x00 ACK PSH URGP=0
Nov 12 09:38:57  kernel: [1502790.833908] outgoing mail IN=eth0 OUT=eth1 SRC=192.168.5.133 DST=205.188.186.137 LEN=70 TOS=0x00 PREC=0x00 TTL=127 ID=47706 DF PROTO=TCP SPT=4779 DPT=25 WINDOW=64804 RES=0x00 ACK PSH URGP=0

идём лечим комп от вирусов.

Дальше на будущее можно поставить так
Создаём цепочку

iptables -N LOGDROP > /dev/null 2> /dev/null
iptables -F LOGDROP
iptables -A LOGDROP -j LOG --log-prefix "LOGDROP "
iptables -A LOGDROP -j DROP

И направляем его в эту цепочку

iptables -A FORWARD -p tcp -s 192.168.5.133 --dport 25 -j LOGDROP

Удаление правил iptables по их номерам

Смотрим список правил с номерами.

 iptables -L -t nat --line-numbers

Видим примерно следущее

 Chain PREROUTING (policy ACCEPT)
num  target     prot opt source               destination
1  DNAT       udp  --  anywhere             proxy               udp dpt:475 to:192.168.100.6:475
2 DNAT       tcp  --  anywhere             proxy               tcp dpt:3389 to:192.168.100.202:3389
3 DNAT       tcp  --  anywhere             anywhere            tcp dpt:www to:192.168.100.192:3128

Chain POSTROUTING (policy ACCEPT)
num  target     prot opt source               destination
1 MASQUERADE  all  --  192.168.0.0/16       anywhere
2 SNAT       tcp  --  anywhere             192.168.100.202     tcp dpt:3389 to:91.196.161.26

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination

Чтобы удалить нужное правило нужной цепочки —  Указываем цепочку и номер правила.

iptables -t nat -D PREROUTING 3

Вроде всё 🙂

iptables Автозагрузка

И так есть у нас вбитые правила и мы хотим чтоб они при рестарте сами вгружались.

1 сохраняем правила в файл

sudo iptables-save > /etc/iptables.up.rules

Дальше в конец файла /etc/network/interfaces дописываем

pre-up iptables-restore < /etc/iptables.up.rules

Ребутемся и проверяем iptables -L

Iptables SNAT

iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to 1.2.3.4

eth1 — внешний интерфейс сервера
1.2.3.4 — внешний ИП сервера

iptables nat + torrent

iptables -A INPUT -p tcp --destination-port 6881:6999 -j ACCEPT
iptables -A OUTPUT -p tcp --source-port 6881:6999 -j ACCEPT
Страница 1 из 212