How to Wiki Database (change log)
http://[222:a8e4:50cd:55c:788e:b0a5:4e2f:a92c]
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
3.6 KiB
59 lines
3.6 KiB
10 months ago
|
====== Установка firewall на yggdrasil сервер ======
|
||
|
|
||
|
===== Введение =====
|
||
|
|
||
|
Сеть [[yggdrasil:Yggdrasil]] открывает много возможноcтей. Однако, иногда она открывает даже то, что хотелось бы не открывать.
|
||
|
Не всякий сразу сообразит о дырах в защите, которые предоставляет эта сеть. Запустив Yggdrasil вы
|
||
|
открываете все порты на своей машине для доступа из сети Yggdrasil (tun-интерфейс), даже если она закрыта файрволом где-то
|
||
|
на уровне роутера или провайдера. Вот понятная инструкция по установке защиты. Все команды ниже нужно выпулнять с правами суперпользователя.
|
||
|
|
||
|
//**Примечание:** приведенные ниже правила применяются ко всем IPv6, не только Yggdrasil. Укажите ''%%dev tun0%%'', чтобы ограничения работали только для указанного интефейса (tun0 - интерфейс Yggdrasil (в вашей конфигурации имя может отличаться)).//
|
||
|
|
||
|
|
||
|
**1.** Убираем все правила, если надо. Если не знаете - тоже убираем.
|
||
|
<code 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
|
||
|
</code>
|
||
|
**2.** Устанавливаем защиту. В данном случае мы оставляем открытыми
|
||
|
только ssh и http порты. Все остальные закрываем.
|
||
|
<code 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
|
||
|
</code>
|
||
|
**3.** Проверяем. Должно показать примерно то же самое, но в других выражениях.
|
||
|
<code>
|
||
|
ip6tables -L
|
||
|
</code>
|
||
|
**4.** Теперь эту конфигурацию нужно сохранить.
|
||
|
<code>
|
||
|
ip6tables-save > /etc/ip6tables.conf
|
||
|
</code>
|
||
|
**5.** Готово. Для того, чтобы поднять защиту, сразу после старта системы нужно
|
||
|
выполнить команду
|
||
|
<code>
|
||
|
ip6tables-restore < /etc/ip6tables.conf
|
||
|
</code>
|
||
|
|
||
|
===== Заключение =====
|
||
|
|
||
|
В ОС на базе [[wpru>Debian|Debian]] для автоматического применения правил iptables при загрузке можно использовать пакет [[https://packages.debian.org/ru/sid/iptables-persistent|iptables-persistent]].
|
||
|
|
||
|
Некоторые системы, например Федора или RH имеют сервис iptables.service или firewalld.service, который стартует при загрузке и устанавливает файрвол по своему усмотрению.
|
||
|
Если вы за NATом, то это дело можно смело отключить. Можно также дополнить этот стандартный сервис тем, что я написал выше.
|
||
|
|
||
|
====== Ссылки ======
|
||
|
|
||
|
Просто об управлении iptables: https://www.digitalocean.com/community/tutorials/how-to-list-and-delete-iptables-firewall-rules-ru
|