LINUX.ORG.RU
ФорумAdmin

Шлюз с VPN

 , , ,


0

1

Есть шлюз. Есть VPN подключение которое выполняется через NM. Ну просто ставлю или снимаю галку.

Текущие правила iptables такие:

# Generated by iptables-save v1.6.0 on Tue Jun 13 15:57:34 2017
*mangle
:PREROUTING ACCEPT [48397:70549126]
:INPUT ACCEPT [48251:70539386]
:FORWARD ACCEPT [139:8867]
:OUTPUT ACCEPT [24850:2928514]
:POSTROUTING ACCEPT [24989:2937381]
-A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu 
COMMIT
# Completed on Tue Jun 13 15:57:34 2017
# Generated by iptables-save v1.6.0 on Tue Jun 13 15:57:34 2017
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 192.168.1.0/24 -o ppp0 -j SNAT --to-source 80.80.{мой внешний IP}
COMMIT
# Completed on Tue Jun 13 15:57:34 2017
# Generated by iptables-save v1.6.0 on Tue Jun 13 15:57:34 2017
*filter
:INPUT DROP [5:2880]
:FORWARD ACCEPT [139:8867]
:OUTPUT ACCEPT [24850:2928514]
:BAD_PACKETS - [0:0]
:ICMP_PACKETS - [0:0]
:SAFETY_TRACE - [0:0]
:TCP_PACKETS - [0:0]
:UDP_PACKETS - [0:0]
-A INPUT -j SAFETY_TRACE 
-A INPUT -j BAD_PACKETS 
-A INPUT -p tcp -j TCP_PACKETS 
-A INPUT -p udp -j UDP_PACKETS 
-A INPUT -p icmp -j ICMP_PACKETS 
-A BAD_PACKETS -m conntrack --ctstate INVALID -j DROP 
-A BAD_PACKETS -f -j DROP 
-A BAD_PACKETS -s 127.0.0.0/8 ! -i lo -j DROP 
-A BAD_PACKETS -p tcp -m tcp --tcp-flags SYN,ACK SYN,ACK -m conntrack --ctstate INVALID,NEW -j LOG --log-prefix "iptabler:ip spoofing: " 
-A BAD_PACKETS -p tcp -m tcp --tcp-flags SYN,ACK SYN,ACK -m conntrack --ctstate INVALID,NEW -j REJECT --reject-with tcp-reset 
-A BAD_PACKETS -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m conntrack --ctstate NEW -m limit --limit 3/min -j LOG --log-prefix "iptabler:new not syn: " 
-A BAD_PACKETS -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m conntrack --ctstate NEW -j DROP 
-A BAD_PACKETS -p udp -m udp --dport 113 -m limit --limit 3/min -j LOG --log-prefix "iptabler:udp storm: " 
-A BAD_PACKETS -p udp -m udp --dport 113 -j REJECT --reject-with icmp-port-unreachable 
-A ICMP_PACKETS -p icmp -m icmp --icmp-type 4 -j ACCEPT 
-A ICMP_PACKETS -p icmp -m icmp --icmp-type 0 -j ACCEPT 
-A ICMP_PACKETS -p icmp -m icmp --icmp-type 12 -j ACCEPT 
-A SAFETY_TRACE -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT 
-A SAFETY_TRACE -i lo -j ACCEPT 
-A SAFETY_TRACE -s 192.168.1.0/24 -i enp3s6 -j ACCEPT 
-A TCP_PACKETS -p tcp -m tcp --dport {ssh-порт} -j ACCEPT 
-A TCP_PACKETS -p tcp -m tcp --dport {самзабылчего-порт} -j ACCEPT 
-A UDP_PACKETS -p udp -m udp --sport 53 --dport 1024:65535 -j ACCEPT 
-A UDP_PACKETS -p udp -m udp --dport 123 -j ACCEPT 
-A UDP_PACKETS -p udp -m udp --dport {vpn-порт} -j ACCEPT 
COMMIT
# Completed on Tue Jun 13 15:57:34 2017
Придумывал сам еще черт знает когда. Судя по коменту в скрипте который это поднимает в 2011 году.

При подключении vpn на шлюзе все ок. Все что за шлюзом умирает.

Как бы очевидное правило: -A POSTROUTING -s 192.168.1.0/24 -o tun0 -j SNAT --to-source 10.8.0.2 в nat делает работоспособным только ICMP - пинги с машин за шлюзом ходить начинают, но только и всего (((

udp не ходит, tcp не ходит. Что я делаю не так и как правильно?

По хорошему работоспособным должно оставаться не зависимо от того подключен vpn или нет и без маскарада.

Ответ на: комментарий от pekmop1024

Включен конечно. Ведь без подключения VPN все работало и работает и сейчас. Отваливается только когда по VPN подключаюсь. Вот сейчас пишу с ноута через резервное подключение, потому что на шлюзе VPN подрубил.

Suntechnic ★★★★★ ()
Ответ на: комментарий от Suntechnic

Интересно - переподключился опять через этот шлюз - все работает.

Как-так то? Почему потребовалось переподключение чтобы заработало?

Это риторические вопросы. Практический - как подключать/отключать VPN настроенный через NM из командной строки?

Suntechnic ★★★★★ ()
Ответ на: комментарий от Suntechnic

как подключать/отключать VPN настроенный через NM из командной строки?

nmcli

man_of_motley ★★ ()
Ответ на: комментарий от Suntechnic

имхо работать у динамически дергающихся интерфейсов с роутингом и фильтрацией лучше из скриптов обслуживающих поднятие и опускание этих интерфейсов. Применительно к опенвпн это up/down скрипты, указываемые в конфиге.

imul ★★★★★ ()
Ответ на: комментарий от imul

Да, да - безусловно. У меня есть набор скриптов по конфигу настраивающих правила iptables и сохрнющих его так чтобы он применялись при старте системы/поднятии интерфейсов.

Эти правила результат этих скриптов. Но чтобы мне их правильно настроить, я и пытаюсь разобраться.

Suntechnic ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.