The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Правила iptables для входящих соединений."
Вариант для распечатки  
Пред. тема | След. тема 
Форум Информационная безопасность (Linux iptables, ipchains / Linux)
Изначальное сообщение [ Отслеживать ]

"Правила iptables для входящих соединений."  +/
Сообщение от paltusssss (ok) on 09-Май-11, 12:39 
                                       Здравствуйте!

Какое правило для входящих tcp-соединений на закрытые порты с интерфейса eth0 лучше ипользовать

#Цепочка bad_tcp_packets

iptables -N bad_tcp_packets
iptables -A bad_tcp_packets -p tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j REJECT --reject-with tcp-reset
iptables -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j LOG --log-prefix "New not syn:"
iptables -A bad_tcp_packets -p tcp ! --syn -m state --state NEW -j DROP


iptables -A INPUT -p tcp -i eth0 -s 0/0 -m state --state NEW -j bad_tcp_packets
iptables -A INPUT -p tcp -i eth0 -s 0/0 --dport 22 -m state --state NEW -j ssh_check
iptables -A INPUT -p tcp -i eth0 -s 0/0          --dport 80 -j allowed
iptables -A INPUT -p tcp -i eth0 -s 0/0          --dport 25 -j allowed

Нашёл ещё вариант:

iptables -A INPUT -p tcp -i eth0 -s 0/0 --dport 22 -m state --state NEW -j ssh_check
iptables -A INPUT -p tcp -i eth0 -s 0/0          --dport 80 -j allowed
iptables -A INPUT -p tcp -i eth0 -s 0/0          --dport 25 -j allowed
iptables -A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,ACK SYN -j REJECT --reject-with icmp-port-unreachable

Какое из этих правил лучше использовать и чем они отличаются.

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Правила iptables для входящих соединений."  +/
Сообщение от reader (ok) on 09-Май-11, 21:04 
>[оверквотинг удален]
> Нашёл ещё вариант:
> iptables -A INPUT -p tcp -i eth0 -s 0/0 --dport 22 -m
> state --state NEW -j ssh_check
> iptables -A INPUT -p tcp -i eth0 -s 0/0    
>       --dport 80 -j allowed
> iptables -A INPUT -p tcp -i eth0 -s 0/0    
>       --dport 25 -j allowed
> iptables -A INPUT -i eth0 -p tcp -m tcp --tcp-flags FIN,SYN,ACK SYN
> -j REJECT --reject-with icmp-port-unreachable
> Какое из этих правил лучше использовать и чем они отличаются.

отличается проверками флагов, плюс в первом варианте будет еще и логирование, того что дропнится.

если порт закрыт, то по моему нет смысла проверять флаги для пакетов на закрытый порт

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Правила iptables для входящих соединений."  +/
Сообщение от Andrey Mitrofanov on 10-Май-11, 12:22 
>  Какое правило для входящих tcp-соединений на закрытые порты с интерфейса eth0

"-j DROP" (*), конечно, но....

> лучше ипользовать

...закрытые порты _лучше_ закрывать общей политикой "запрещено всё, что не разрешено [явными правилами]". См. например, https://www.opennet.ru/openforum/vsluhforumID10/3880.html#7 -- проверяем и разрешаем _чётко выписанные порты-сервисы, а в конце - общий DROP (firehol делает ещё и логирование "неизвестных").

(*) для внутренних сетей или отдельных хостов, или отдельных сервисов -- если именно что _нужно_ -- можно отвечать и REJECT-ом. Такой отдельный вид сервиса~~

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Правила iptables для входящих соединений."  +/
Сообщение от LSTemp (ok) on 15-Май-11, 04:11 
>>  Какое правило для входящих tcp-соединений на закрытые порты с интерфейса eth0
> "-j DROP" (*), конечно, но....

повод и возможность для атаки. на другие хосты правда (но подставным источником будешь ты - и все вопросы будут к тебе в конечном счете).

рекомендуется tcp-reset для ack-пакетов пришедших на твой хост, для которых syn-пакетов от тебя не было.

>> лучше ипользовать
> ...закрытые порты _лучше_ закрывать общей политикой "запрещено всё, что не разрешено [явными
> правилами]". См. например, https://www.opennet.ru/openforum/vsluhforumID10/3880.html#7
> -- проверяем и разрешаем _чётко выписанные порты-сервисы, а в конце -
> общий DROP (firehol делает ещё и логирование "неизвестных").
> (*) для внутренних сетей или отдельных хостов, или отдельных сервисов -- если
> именно что _нужно_ -- можно отвечать и REJECT-ом. Такой отдельный вид
> сервиса~~

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру