Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

iptables: используйте ipset правильно #49

Open
socketpair opened this issue Jul 24, 2016 · 3 comments
Open

iptables: используйте ipset правильно #49

socketpair opened this issue Jul 24, 2016 · 3 comments

Comments

@socketpair
Copy link

socketpair commented Jul 24, 2016

Требует коннтрака. можно и без state NEW, нужно управление этим. на нагруженных роутерах без ната, контраки обычно отключают. на нероутерах они, как правило, совсем не нужны.

Да, для IPv6 немного другие правила будут. особенно reject.

# ipset create antizapret hash:net
# iptables -N antizapret
# iptables -F antizapret
# iptables -A antizapret -m set ! --match-set antizapret dst -j RETURN
# iptables -A antizapret -p tcp -j REJECT --reject-with tcp-reset
# iptables -A antizapret -j REJECT --reject-with icmp-admin-prohibited
# iptables -A INPUT -m state --state NEW -j antizapret
# iptables -A FORWARD -m state --state NEW -j antizapret
  • белый список который админы могут сами заводить -- правила типа nomatch в айписете. Это правильнее, удобнее и быстрее, чем то что предложено сейчас. опять же требует некоторой версии ядра и фронтенда.
  • убрать вариант без айписета. кому это надо?
  • в айписете у каждой записи есть комментарии (добавлять туда название ведоства) и счётчики (удобно чтобы смотреть статистику). Единственное, это зависит от версии ядра и версии зерспейса.
@socketpair
Copy link
Author

socketpair commented Jul 24, 2016

create antizapret hash:net
create tmp_antizapret hash:net
flush tmp_antizapret
add tmp_antizapret net1/mask
add tmp_antizapret net2/mask
...
add tmp_antizapret net42/mask
swap tmp_antizapret antizapret
destroy tmp_antizapret

содержимое этого файлика (или из пайпа, удобно на awk читать оригинальный список и выдавать в таком формате) передать команде ipset -! restore.

@socketpair socketpair changed the title iptables: используйте ipset, не кошмарьте процессор iptables: используйте ipset правильно, не кошмарьте процессор Jul 24, 2016
@socketpair socketpair changed the title iptables: используйте ipset правильно, не кошмарьте процессор iptables: используйте ipset правильно Jul 24, 2016
@msva
Copy link
Contributor

msva commented Jul 25, 2016

How about pull request? :)

@socketpair
Copy link
Author

ну может, попозже...

# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

No branches or pull requests

2 participants