Настройка VPN для всей домашней сети

Через NAT.

Если на ru-vps настроены два тунеля входящий tun_ingress и исходящий tun_egress то можно настроить NAT примерно так:

  1. Добавить в /etc/iproute2/rt_tables именованную таблицу, например 128 transit.
  2. Добавить входящий интерфейс в неё ip rule add iif tun_ingress table transit
  3. Добавить шлюз ip route add default via адрес_шлюза_из_tun_egress table transit
  4. В брандмауэре создать зону для входящего трафика firewall-cmd --permanent --new-zone="ingress_zone"
  5. Добавить к ней входящий интерфейс firewall-cmd --permanent --zone="ingress_zone" --add-interface=tun_ingress
  6. Создать зону для исходящего трафика firewall-cmd --permanent --new-zone="egress_zone"
  7. Добавить к ней исходящий интерфейс firewall-cmd --permanent --zone="egress_zone" --add-interface=tun_egress
  8. Включить SNAT в исходящей зоне firewall-cmd --permanent --zone="egress_zone" --add-masquerade
  9. Создать политику транзита firewall-cmd --permanent --new-policy="in_to_e"
  10. Разрешить по умолчанию firewall-cmd --permanent --policy="in_to_e" --set-target=ACCEPT
  11. Добавить входящую зону firewall-cmd --permanent --policy="in_to_e" --add-ingress-zone="ingress_zone"
  12. Добавить исходящую зону firewall-cmd --permanent --policy="in_to_e" --add-egress-zone="egress_zone"
  13. Применить настройки брандмауэра firewall-cmd --reload
  14. ???
  15. PROFIT