OpenVPN klient funguje na Linuxu a macOS, s Windows jsou problémy

Ahoj,

mám problém s OpenVPN.
VPNka nám funguje v pořádku už delší dobu, ale nefunguje s Windows.
Doposud jsme neměli moc lidí, co by používali Windows, tak jsem to neřešil, ale bohužel nastala situace, kdy to musím řešit. Už jsem dost googlil, ale nic nepomohlo.

Když se Windows client připojí do VPN, tak přestane jim fungovat internet a funguje jen traffic do VPNky.
Když jsem to řešil naposledy, tak nějak vůbec nefungoval routing, ale nevěděl jsem, co s tím dělat, protože ve Windows se nevyznám...

Tady je config:
Kód: [Vybrat]
client

nobind

dev tun

remote-cert-tls server

remote ****** **** udp

route 192.168.0.200 255.255.255.255

<key>

</key>

<cert>

</cert>

<ca>

</ca>

key-direction 1

<tls-auth>
</tls-auth>

tls-cipher TLS-ECDHE-RSA-WITH-AES-256-GCM-SHA384

cipher AES-256-GCM

auth SHA512

auth-user-pass

auth-nocache

comp-lzo

reneg-sec 0

« Poslední změna: 24. 03. 2020, 18:31:56 od Petr Krčmář »


Rhinox

  • ***
  • 107
    • Zobrazit profil
    • E-mail
Re:OpenVPN klient funguje na Linuxu a MacOS, s Windows jsou problémy...
« Odpověď #1 kdy: 24. 03. 2020, 17:43:47 »
Jak vypada routovaci tabulka? Otevri na Windows command-line a napis:

route print

Re:OpenVPN klient funguje na Linuxu a MacOS, s Windows jsou problémy...
« Odpověď #2 kdy: 24. 03. 2020, 17:53:41 »
Už si k sobě do virtuálky instaluju windows, abych na to mohl kouknout. Dám vědět, až se mi to podaří.

ja.

  • ****
  • 316
    • Zobrazit profil
    • E-mail
Re:OpenVPN klient funguje na Linuxu a MacOS, s Windows jsou problémy...
« Odpověď #3 kdy: 24. 03. 2020, 18:11:43 »
Z configu klienta dat prec riadok "route...".

Na serveri doplnit do configu servera:

Kód: [Vybrat]
push "route 192.168.0.200 255.255.255.255"

teda ak vazne chcete routovat /32... preco nie /24? Fakt iba na ten jeden pocitac? A to verite klientovi, ze sa sam obmedzi?

Re:OpenVPN klient funguje na Linuxu a macOS, s Windows jsou problémy
« Odpověď #4 kdy: 24. 03. 2020, 19:14:30 »
No zkoušel jsem to přes push a push mi nefungoval, tak jsem to musel přidat do klientova configu.
Ano, chci routovat jen ten jeden server, ale nemám problém s celou sítí. Pak tam byl ale problém, že když měl někdo třeba router v networku 192.168.0.0/24, tak se lokálně nikam nedostal. Chci to přesunout na jiný rozsah, ale zatím nebyl čas...


Re:OpenVPN klient funguje na Linuxu a macOS, s Windows jsou problémy
« Odpověď #5 kdy: 24. 03. 2020, 19:28:49 »
Smazal jsem tu route z toho configu a je to pořád stejné...
Jinak tady je paste route print(poprvé s route v configu a podruhé bez): https://dpaste.org/j7vX

ZAJDAN

  • *****
  • 2 078
    • Zobrazit profil
    • E-mail
Re:OpenVPN klient funguje na Linuxu a macOS, s Windows jsou problémy
« Odpověď #6 kdy: 24. 03. 2020, 20:31:04 »
starší verze openVPN pokud nebyli spuštěny s právy Administratora nepřidali routy!
Určitě nasadit poslední verzi.
Vesele, vesele do továrny dělník běží...vesele, vesele do továrny jde. Vesele se usmívá když mu soustruh zazpívá...vesele, vesele do továrny jde. Vesele si poskočí když se soustruh roztočí ...vesele, vesele do továrny jde.

Re:OpenVPN klient funguje na Linuxu a macOS, s Windows jsou problémy
« Odpověď #7 kdy: 24. 03. 2020, 21:16:29 »
Mám nejnovější OpenVPN Connect a spustil jsem to jako admin a stejný problém.
Zjistil jsem, že problém je v DNS.  Nastavil jsem tedy DNS obou adaptéru - jak ethernetu tak TAP adaptéru na googlí DNS a stejně DNSko nefunguje. Respektive po nastavení to fungovalo asi 5 sekund a už to zase nejede...


ZAJDAN

  • *****
  • 2 078
    • Zobrazit profil
    • E-mail
Re:OpenVPN klient funguje na Linuxu a macOS, s Windows jsou problémy
« Odpověď #8 kdy: 24. 03. 2020, 21:58:52 »
stalo by zato zmínit na čem beží openVPN
já to dělám tak, že si na openVPN serveru udělám extra IP pool a extra DHCP server kterým kliošovi naserviruju vše(IP, DNS, domain) a jen routu dam do configu klienta.
Pak mohu skrze tunnel používat firemní hostname všech stanic.
« Poslední změna: 24. 03. 2020, 22:04:11 od ZAJDAN »
Vesele, vesele do továrny dělník běží...vesele, vesele do továrny jde. Vesele se usmívá když mu soustruh zazpívá...vesele, vesele do továrny jde. Vesele si poskočí když se soustruh roztočí ...vesele, vesele do továrny jde.

Re:OpenVPN klient funguje na Linuxu a macOS, s Windows jsou problémy
« Odpověď #9 kdy: 24. 03. 2020, 22:06:16 »
No, běží v kontejneru na Linux hostovi (ArchLinux).
Nám to takto funguje správně na MacOS a na Linuxu a nejspíš i na telefonech. Chci to přehodit na jinej rozsah, aby si tam lidi nemuseli manuálně vepisovat do route configu, když chtějí přístup i na jinej server, ale zatím na to nebyl čas.

ZAJDAN

  • *****
  • 2 078
    • Zobrazit profil
    • E-mail
Re:OpenVPN klient funguje na Linuxu a macOS, s Windows jsou problémy
« Odpověď #10 kdy: 24. 03. 2020, 22:24:37 »
urcitě bych na těch funkčních i nefunkčních klientech zkusil nslookup ať se ukáže, jaké DNS překládá názvy
to co popisujete je jakoby šel celej traffic do tunnelu, ale klient neví kde je DNS  a kam požadavek poslat
Vesele, vesele do továrny dělník běží...vesele, vesele do továrny jde. Vesele se usmívá když mu soustruh zazpívá...vesele, vesele do továrny jde. Vesele si poskočí když se soustruh roztočí ...vesele, vesele do továrny jde.

Re:OpenVPN klient funguje na Linuxu a macOS, s Windows jsou problémy
« Odpověď #11 kdy: 24. 03. 2020, 23:39:08 »
Toto servíruju Windows klientům (vlastně všem klientům) a pokud vím, chodí mi všecko co chci:

Kód: [Vybrat]
push "route 192.168.0.0 255.255.0.0"
push "ip-win32 dynamic"
push "dhcp-option DNS 192.168.1.2"
push "dhcp-option DNS 192.168.3.4"
push "dhcp-option WINS 192.168.5.6"
push "dhcp-option NBT 8"
push "dhcp-option DOMAIN soukr.unas.cz"

Výše uvedený výstřižek je z konfigurace serverové strany. BTW i já jedu "device tun".

Chování "všechen provoz do tunelu" se na klientu dá vyvolat zaklínadlem
Kód: [Vybrat]
redirect-gateway  Toto patří do konfigu na klientu, nebo to můžete pushnout. Naopak pokud Vám server toto pushuje a Vy nechcete, dá se toho zbavit protizaklínadlem
Kód: [Vybrat]
pull-filter ignore redirect-gateway  Odkazy: 1 a 2 .

Souhlasím se Zajdanem, že by se taky mohlo jednat o situaci, kdy si pushnete DNS server, ale tento z klienta reálně není dostupný... BTW ale to si budu hodně cintat pentli u křišťálové koule: co když se např. windowsový DNS resolver ptá z UDP portu >1024 (na port 53), zatímco resolvery v UNIXu a Linuxu se ptají z 53 na 53? Krát nějaký filtr na VPN access firewallu. (/konec halucinace) Možná bych vedle nslookupu doporučil ještě tcpdump nebo wireshark.

Dost mě mrzelo, že poslední verze, která uměla "disconnect on suspend", byla 2.3.18, která do Win10 už moc dobře nepasuje. Novější verze se chovají tak, že při zaklapnutí a otevření noťase se VPN rovnou chytí znovu a jede dál, nezeptá se na login a heslo. Lze to napravit "naplánovanou úlohou" která startuje na event 507 ze zdroje "Kernel-Power" a jejím obsahem je
Kód: [Vybrat]
taskkill /F /IM openvpn.exe  V příloze screenshot nejvýživnější části konfigurace. Nezapomeňte ještě v tabu "podmínky" odstranit fajfku z boxu "Spustit úlohu pouze při připojení k napájení" ;-)
« Poslední změna: 24. 03. 2020, 23:44:16 od František Ryšánek »

Re:OpenVPN klient funguje na Linuxu a macOS, s Windows jsou problémy
« Odpověď #12 kdy: 24. 03. 2020, 23:47:59 »
Smazal jsem tu route z toho configu a je to pořád stejné...
Jinak tady je paste route print(poprvé s route v configu a podruhé bez): https://dpaste.org/j7vX

Co je interface 1a ? To vidím prvně... :-O

Re:OpenVPN klient funguje na Linuxu a macOS, s Windows jsou problémy
« Odpověď #13 kdy: 25. 03. 2020, 20:42:13 »
Tak problém byl v tom, že jsem na serveru měl:
Citace
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"

Sice mi to přijde divné, ale vyřešilo se to tím, že nepushuju žádné DNS servery...