Longobard
написал 5 июня 2006 года в 01:15 (1430 просмотров)
Ведет себя
как мужчина; открыл 291 тему в форуме, оставил 2499 комментариев на сайте.
Где можно почитать что-либо на эту тему? А то правил все больше и больше…
Последние комментарии
-
OlegL, 17 декабря 2023 года в 15:00 →
Перекличка
21
-
REDkiy, 8 июня 2023 года в 9:09 →
Как «замокать» файл для юниттеста в Python?
2
-
fhunter, 29 ноября 2022 года в 2:09 →
Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt?
6
-
Иванн, 9 апреля 2022 года в 8:31 →
Ассоциация РАСПО провела первое учредительное собрание
1
-
Kiri11.ADV1, 7 марта 2021 года в 12:01 →
Логи catalina.out в TomCat 9 в формате JSON
1
DevOps as a Service from Palark
24/7 SRE & DevOps service to cover all your Kubernetes needs.

а что, собственно, оптимизировать? ты хоть дал бы тогда кофиг какой-нибудь цепочки. может, у тебя для одного ip-адреса тысячу строк с однотипными правилами ;)
общий принцип: разделяй и влавствуй.. ;)
ну авообще, старайся сократить число проверок
огранизовывай в дерево там, ещё как, но от списка старайся избавиться. ;)
Ну например такой момент:
нужно закрыть доступ на 21 и 8000 порт из инета.
Я делаю так:
#Closing ftp and icecast access from internet (21 and 8000 ports) einfo " Closing FTP access from the internet (21 port)" for i in "${valid_networks[@]}" do iptables -A INPUT -s $i -p tcp --dport 21 -j ACCEPT done iptables -A INPUT -p tcp --dport 21 -j DROP ############################################### einfo " Closing Icecast access from the internet (8000 port)" for i in "${valid_networks[@]}" do iptables -A INPUT -s $i -p tcp --dport 8000 -j ACCEPT done iptables -A INPUT -p tcp --dport 8000 -j DROP ###############################################Т.е. пройдут лишь пакетики с нужных мне подсетей, остальные попадут под дроп :)
А можно сделать так:
for i in "${valid_networks[@]}" do iptables -A INPUT -s $i -m mport -p tcp --dports 21,8000 -j ACCEPT done iptables -A INPUT -m mport -p tcp --dports 21,8000 -j DROPВроде как правил будет поменьше, но зато они теперь используют дополнительный модуль (mport).
Что будет шустрее работать?
я делаю так, как меня научил один из поситителей этого форума…
закрываю все (-P DROP), а потом открываю только то, что мне надо. у меня файервол не так много чего открывает/зарывает, поэтому мой совет вряд ли применим к твоей схеме.
шустрее будет радотатть, если ты сделаешь где-то так:
iptables -A INPUT -p tcp --dport 80 -j FILTER_HTTP iptables -A INPUT -p tcp --dport 21 -j FILTER_FTP for n in "${subnetsB_ftp[@]}" do iptables -A FILTER_FTP -s $n/16 -j FILTER_FTP_$n for f in "${ips_ftp[@]}" do iptables -A FILTER_FTP_$n -s $f -j ACCEPT done done #...Кстати, вопрос интересен не только Longobard’у :)
Это-то понятно..
Но вот почитать что-нибудь на эту тему:
было бы очень интересно.. Метод научного тыка не всегда применим..
Есть какая-нибудь статистика того, насколько нагружает файрволл использование разных модулей?
собери такую статистику сам.
кстати, ты ещё подумай, как ты будешь её собирать.
методику, так сказать, сбора данной статистики ;)
по мне — так это попросту неуловимый Джо. очередной. ;)
основное правило: строй проверки так, чтобы среднее число проверок было минимальным.
для этого — собери статистику, кто как и сколько к какому правилу попадает.
после этого — оптимизируй путь.