💾 Archived View for betahowto.duckdns.org › yggdrasil:firewall_setup captured on 2024-05-10 at 11:11:22. Gemini links have been rewritten to link to archived content
⬅️ Previous capture (2024-03-21)
-=-=-=-=-=-=-
Сеть ( gemini://betahowto.duckdns.org/yggdrasil:Yggdrasil ) открывает много возможноcтей. Однако, иногда она открывает даже то, что хотелось бы не открывать.
Не всякий сразу сообразит о дырах в защите, которые предоставляет эта сеть. Запустив Yggdrasil вы
открываете все порты на своей машине для доступа из сети Yggdrasil (tun-интерфейс), даже если она закрыта файрволом где-то
на уровне роутера или провайдера. Вот понятная инструкция по установке защиты. Все команды ниже нужно выпулнять с правами суперпользователя.
Примечание: приведенные ниже правила применяются ко всем IPv6, не только Yggdrasil. Укажите dev tun0, чтобы ограничения работали только для указанного интефейса (tun0 - интерфейс Yggdrasil (в вашей конфигурации имя может отличаться)).
1. Убираем все правила, если надо. Если не знаете - тоже убираем.
bash
ip6tables -P INPUT ACCEPT ip6tables -P FORWARD ACCEPT ip6tables -P OUTPUT ACCEPT ip6tables -t nat -F ip6tables -t mangle -F ip6tables -F ip6tables -X
2. Устанавливаем защиту. В данном случае мы оставляем открытыми
только ssh и http порты. Все остальные закрываем.
bash
ip6tables -P INPUT DROP ip6tables -P FORWARD DROP ip6tables -P OUTPUT ACCEPT ip6tables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT ip6tables -I INPUT 1 -i lo -j ACCEPT ip6tables -A INPUT -p icmpv6 -j ACCEPT ip6tables -A INPUT -p tcp --dport 80 -j ACCEPT ip6tables -A INPUT -p tcp --dport 22 -j ACCEPT
3. Проверяем. Должно показать примерно то же самое, но в других выражениях.
ip6tables -L
4. Теперь эту конфигурацию нужно сохранить.
ip6tables-save > /etc/ip6tables.conf
5. Готово. Для того, чтобы поднять защиту, сразу после старта системы нужно
выполнить команду
ip6tables-restore < /etc/ip6tables.conf
В ОС на базе Debian ( https://ru.wikipedia.org/wiki/Debian ) для автоматического применения правил iptables при загрузке можно использовать пакет iptables-persistent ( https://packages.debian.org/ru/sid/iptables-persistent ).
Некоторые системы, например Федора или RH имеют сервис iptables.service или firewalld.service, который стартует при загрузке и устанавливает файрвол по своему усмотрению.
Если вы за NATом, то это дело можно смело отключить. Можно также дополнить этот стандартный сервис тем, что я написал выше.
Просто об управлении iptables: https://www.digitalocean.com/community/tutorials/how-to-list-and-delete-iptables-firewall-rules-ru
gemini://betahowto.duckdns.org/yggdrasil:Yggdrasil
https://ru.wikipedia.org/wiki/Debian
https://packages.debian.org/ru/sid/iptables-persistent
https://www.digitalocean.com/community/tutorials/how-to-list-and-delete-iptables-firewall-rules-ru