Temat: OpenVPN między ruterami - widoczność klientów.

Walczę z OpenVPN
Konfiguracja jest taka:
Domowy LAN {A} <-> główny router (OpenWRT), serwer OpenVPN {A}<-> ISP1        <kabel-INTERNET-gsm>      ISP2 <-> Drugi router OpenWRT {B} <-> Drugi LAN{B}

Wszystko w domowym LANie działa, router robi co trzeba itd.
Adresy IP: 192.168.1.0 {A}


Drugi LAN to na razie kamera, ale do testow podlaczam tez laptopa
Drugi router rozdaje adresy po DHCP do drugiego LAN - też 192.168.1.0 {B}
I to też działa.
Zaznaczam, że pula adresów wewnętrznych w {B} jest taka sama jak w {A}

I teraz przychodzi VPN. Skonfigurowałem go, kleint VPN (czyli drugi router) powinien dostać adres z puli 192.168.2.0 i dostaje: 192.168.2.2, a główny router (ten z Domowego LAN) jest przez niego widoczny jako 192.168.2.1

I właśnie: routery się wzajemnie komunikują. Ale to wszystko: żaden klient z {A} nie widzi routera {B}, ani żadnego klienta {B}, i tak samo - klienty {B} nie widzą routera ani klientów {A}

Maski w obu przypadkach to 255.255.255.0. Podejrzewałem, że to może być problem, więc przestawiłem na 255.255.0.0, ale to rozwaliło sieć całkiem - żadnym klientem nie mogłem się połączyć z routerami, nowi klienci dostawali ip z puli 192.168.0.0 - w obu sieciach i nie widzieli routerów.

Acha - mój WAN w {B} to modem Hilink, z adresem 192.168.8.1 - i on działa i serwuje sieć dla całego lanu {B}, a więc sieć nie jest ograniczona do 192.168.1.*
Mało tego - jeśli będąc w sieci {A} spróbuję przez przeglądarkę wejść na 192.168.2.2 - czyli router {B} to pojawia mi się na moment
LuCi - Lua Configuration interface
po czym - nie udaje się nawiązać połączenia - czego nie rozumiem zupełnie, bo pingnąć tego 192.168.2.2 nie mogę

Ponadto, dla testów zmieniłem pulę wewnętrzną {B} na 192.168.2.1 - ale nic to nie zmieniło, w żadną stronę.

Jak to poprawnie ustawić?

konfig z serwera {A}

config openvpn 'home'
    option enabled '1'
    option dev 'tun0'
    option log '/tmp/openvpn.log'
    option verb '3'
    option ca '/etc/easy-rsa/pki/ca.crt'
    option cert '/etc/easy-rsa/pki/issued/serwer.crt'
    option key '/etc/easy-rsa/pki/private/serwer.key'
    option topology 'subnet'
    option dh '/etc/easy-rsa/pki/dh.pem'
    option port '8088'
    option proto 'udp'
    option server '192.168.2.0 255.255.255.0'

Konfig z klienta {B}

config openvpn 'garaz'
    option enabled '1'
    option dev 'tun0'
    option log '/tmp/openvpn.log'
    option verb '3'
    option ca '/etc/openvpn/ca.crt'
    option cert '/etc/openvpn/garaz.crt'
    option key '/etc/openvpn/garaz.key'
    option client '1'
    option remote 'abec.no-ip.org 8088'
    option remote_cert_tls 'server'
    option proto 'udp'

2

Odp: OpenVPN między ruterami - widoczność klientów.

Na A i B zrób inną adresację. Inaczej z lanu A nie dostaniesz się do lanu B jeżeli ci na tym zależy. I nie na 192.168.2.1 bo takiej adresacji używasz na openvpn, a jesteś w trybie tun.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

3

Odp: OpenVPN między ruterami - widoczność klientów.

Czyli mam mieć (przykładowo) 192.168.1.0 na A, 192.168.2.0 na B i 192.168.3.0 dla VPN?

Tak zmieniłem.
Router B dostał przez VPN adres 192.168.3.2 i to działa. Ale nadal nie działa nic dalej.

Ale drugie urządzenie w sieci B nie dostaje adresu VPN...
Tylko, że uświadomiłem sobie, że... nie konfigurowałem w żaden sposób tego urządzenia! Czy każdy klient za routerem B musi mieć swój certyfikat itd i podłączać się osobno?

Tylko że to nie tłumaczy, dlaczego router A 192.168.1.1 widzi router B 192.168.3.2,a już laptop A 192.168.1.10 nie

4

Odp: OpenVPN między ruterami - widoczność klientów.

To zależy co chcesz chcesz zrobić.

Albo łączysz dwie sieci (dwa routery) ze sobą i wtedy każdy klient w lanie jest osiągalny albo każdy klient łączy się do sieci (road warrior) niezależnie. I wszystko opiera się na odpowiedniej konfiguracji routingu.  Zobacz poradnik i punkty dostęp do lanu serwera i dostęp do lanu klienta: https://eko.one.pl/?p=openwrt-openvpntun

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

5

Odp: OpenVPN między ruterami - widoczność klientów.

Korzystałem z tego właśnie poradnika, ale być może źle podszedłem do sprawy,|
Może mi podpowiesz, czego TECHNICZNIE potrzebuję?

Chcę mieć sieć A główną, , której router jest moją bramą na świat, i drugą sieć - B, która ma swoich klientów, ma interfejs WAN, ale najchętniej widziałbym, że można się z niej łączyć ze światem WYŁĄCZNIE za pośrednictwem routera A.
Wewnętrznie klienci obu sieci powinni się widzieć wzajemnie (będę chciał przesyłać np. komunikaty mqtt między nimi, czy streamować kamerę).

Chyba więc chodzi o połączenie sieci, ale tak, żeby ruch odbywał się (cały) przez router A. To możliwe?

Dodatkowo nie pogardziłbym łączeniem się z moją siecią A, ze świata, oczywiście z urządzenia odpowiednio przygotowanego (czytaj - zainstalowane certyfikaty do VPN), ale to jest drugorzędne, a poza tym wydaje mi się (!), że wiem jak to zrobić.

6

Odp: OpenVPN między ruterami - widoczność klientów.

Masz serwer z lanem, łączysz się do niego klientem ze swoim lanem. Każdy lan ma swoją adresację. Masz tak zrobić konfigurację żeby cały ruch przechodził przez serwer openvpn i serwer miał zdefiniowane trasy do do obu podsieci. Po prostu robisz wg poradnika.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

7

Odp: OpenVPN między ruterami - widoczność klientów.

Przyznaję, że poprzednio nie dojechałem do końca poradnika, przykłady odpowiadają dość dobrze moim potrzebom. W teorii, bo u mnie nie zadzialaly.

Przeszedlem przez
- Dostęp do sieci LAN za serwerem
- Przekierowanie całego ruchu klientów przez tunel vpn

No i z logów wynika, że serwer serwuje, a klient odbiera konfigurację
PUSH: Received control message: 'PUSH_REPLY,route 192.168.1.0 255.255.255.0,redirect-gateway def1,route-gateway 192.168.3.1,topology subnet,ifconfig 192.168.3.2 255.255.255.0,peer-id 1,cipher AES-256-GCM'

trasy się dodają
Sun Feb 18 22:02:58 2024 /sbin/ifconfig tun0 192.168.3.2 netmask 255.255.255.0 mtu 1500 broadcast 192.168.3.255
Sun Feb 18 22:02:58 2024 /sbin/route add -net 31.11.184.147 netmask 255.255.255.255 gw 192.168.8.1
Sun Feb 18 22:02:58 2024 /sbin/route add -net 0.0.0.0 netmask 128.0.0.0 gw 192.168.3.1
Sun Feb 18 22:02:58 2024 /sbin/route add -net 128.0.0.0 netmask 128.0.0.0 gw 192.168.3.1
Sun Feb 18 22:02:58 2024 /sbin/route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.3.1


Ale nadal - wszystko działa tylko między routerami, a już nawet klienci w poszczególnych lanach nie widzą drugiego z routerów, nie mówiąc o klientach nawzajem.


---------------------
Domyślam się, że przedostatni punkt (Dostęp do internetu urządzeń w sieci lan klienta OpenVPN tylko po podłączeniu do serwera) też będzie mnie interesował, ale to dopiero jak zestawię jakoś resztę.

8

Odp: OpenVPN między ruterami - widoczność klientów.

I teraz patrz na "kliencie" - powinien mieć trasę domyślną przez openvpn, powinien mieć routing do sieci lan za serwerem i powinieneś móc się dostać do hostów w lanie. Jak nie - sprawdź maskaradę i firewalla na serwerze.

W sumie nie ty pierwszy to robisz. To tak stary i sprawdzony temat że musi działać jeżeli tylko robisz wszystko po kolei.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

9

Odp: OpenVPN między ruterami - widoczność klientów.

Domyśłam się, że Ameryki nie odkrywam - tym bardziej, że poradnik (zapewne twojego autorstwa?) opisuje dokładnie te rozwiązania, których chcę. No ale u mnie się nie udało jak na razie. Wieczorem spróbuję - może od nowa.

10

Odp: OpenVPN między ruterami - widoczność klientów.

Najpierw sprawdził byś to co napisałem.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

11

Odp: OpenVPN między ruterami - widoczność klientów.

Myślę i próbuję i nie wiem jak to ogarnąć.
Mam tak:
root@client:~# traceroute 8.8.8.8

traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 38 byte packets
 1  192.168.3.1 (192.168.3.1)  80.845 ms  85.902 ms  79.028 ms
 2  192.168.3.1 (192.168.3.1)  88.009 ms  78.161 ms  71.477 ms
root@client:~# 

Czyli ruch z klienta (routera) nie przechodzi poza Router-server

(192.168.3.1 to VPN IP głównego routera, ten połączony z WAN, server OpenVPN)

Tak jest na serwerze:

firewall.@zone[3]=zone
firewall.@zone[3].name='vpn'
firewall.@zone[3].output='ACCEPT'
firewall.@zone[3].network='vpn'
firewall.@zone[3].input='ACCEPT'
firewall.@zone[3].forward='ACCEPT'
firewall.@zone[3].masq='1'
firewall.@forwarding[3]=forwarding
firewall.@forwarding[3].src='vpn'
firewall.@forwarding[3].dest='wan'

No i routing na kliencie:

root@client:~# ip route show table main
0.0.0.0/1 via 192.168.3.1 dev tun0 
default via 192.168.8.1 dev eth1  src 192.168.8.100 
31.11.184.147 via 192.168.8.1 dev eth1 
128.0.0.0/1 via 192.168.3.1 dev tun0 
192.168.1.0/24 via 192.168.3.1 dev tun0 
192.168.2.0/24 dev br-lan scope link  src 192.168.2.3 
192.168.3.0/24 dev tun0 scope link  src 192.168.3.2 
192.168.8.0/24 dev eth1 scope link  src 192.168.8.100 

Czyli:
Mam default routing przez modem (192.168.8.1), ale traceroute idzie (próbuje iść) przez server (192.168.3.1). Przyznaję, że nic nie kumam.


Zmieniłem default na
default via 192.168.3.1 dev tun0

ale nie pomoglo, nic sie nie zmienilo.
traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 38 byte packets
1  192.168.3.1 (192.168.3.1)  90.771 ms  76.308 ms  88.453 ms
2  192.168.3.1 (192.168.3.1)  88.795 ms  82.381 ms  67.794 ms

Acha, po restartcie klienta default wraca na 192.168.8.1 ale to chyba normalne.
Nie odpowiadają również pingi z klienta do głównego LANu, więc wydaje mi się, że główny problem leży w konfiguracji servera.Choć z LANu do clienta też nie odpowiadają. Wciąż jedyne połączenie to Server-openwrt  <-> client-OpenWRT. Reszta się nie widzi.

Zupełnie nie wiem co miałbym z tym zrobić.
Pomocy!

12

Odp: OpenVPN między ruterami - widoczność klientów.

Pokaż network z serwera.

Tak ma  być jak jest. Możesz mieć kilka tras domyślnych, wtedy ruch idzie tą "na górze" lub tą o mniejszej metryce.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

13

Odp: OpenVPN między ruterami - widoczność klientów.

Oto network z servera.
Mam (dawno nie użyty) konfig dla modemu GSM - obecnie wyjętego, ale nie zmieniałem nic w routerze, oraz niepotrzebny mi IPv6 - najchętniej bym go trwale wyłączył, ale to drugorzędne.

network.loopback=interface
network.loopback.ifname='lo'
network.loopback.proto='static'
network.loopback.ipaddr='127.0.0.1'
network.loopback.netmask='255.0.0.0'
network.globals=globals
network.lan=interface
network.lan.type='bridge'
network.lan.ifname='eth0.1'
network.lan.proto='static'
network.lan.ipaddr='192.168.1.1'
network.lan.ip6assign='60'
network.lan.dns='208.67.222.222' '208.67.220.220'
network.lan.netmask='255.255.255.0'
network.lan.ipv6='off'
network.lan_eth0_1_dev=device
network.lan_eth0_1_dev.name='eth0.1'
network.lan_eth0_1_dev.macaddr='08:02:8e:da:e7:40'
network.wan=interface
network.wan.ifname='eth0.2'
network.wan.proto='dhcp'
network.wan.metric='10'
network.wan.dns='8.8.8.8' '8.8.4.4'
network.wan.peerdns='0'
network.wan.ipv6='off'
network.wan_eth0_2_dev=device
network.wan_eth0_2_dev.name='eth0.2'
network.wan_eth0_2_dev.macaddr='08:02:8e:da:e7:41'
network.wan6=interface
network.wan6.ifname='eth0.2'
network.wan6.proto='dhcpv6'
network.@switch[0]=switch
network.@switch[0].name='switch0'
network.@switch[0].reset='1'
network.@switch[0].enable_vlan='1'
network.@switch_vlan[0]=switch_vlan
network.@switch_vlan[0].device='switch0'
network.@switch_vlan[0].vlan='1'
network.@switch_vlan[0].ports='0 1 2 3 6t'
network.@switch_vlan[1]=switch_vlan
network.@switch_vlan[1].device='switch0'
network.@switch_vlan[1].vlan='2'
network.@switch_vlan[1].ports='4 6t'
network.wanb=interface
network.wanb.proto='dhcp'
network.wanb.ifname='eth1'
network.wanb.metric='20'
network.wanb.dns='8.8.8.8' '8.8.4.4'
network.wanb.peerdns='0'
network.vpn=interface
network.vpn.device='tun0'
network.vpn.proto='none'
network.vpn.ifname='eth0.2'
network.vpn.delegate='0'

Widzę tu:
network.vpn.proto='none'
...i to mi wygląda najbardziej podejrzanie?
Nie czuję tego. Przez analogię do network.lan wygląda  mi to na ustawienia samego routera w odniesieniu do sieci VPN, czyli powinno definiować router-server widziany przez klienta i jego klientów. Czyli w zasadzie powinien być proto:static i ipaddr: 192.168.3.1 ?
Tylko, że ten ip i tak działa, mimo, że nie jest tu zdefiniowany.

14

Odp: OpenVPN między ruterami - widoczność klientów.

Nie. Natomiast masz stary system i network.vpn.ifname='eth0.2' zamień na network.vpn.ifname='tun0' jeżeli faktycznie używasz jeszcze ifname. device jest w nowszych openwrt po wersji 21.xx-rc2.

Restart i zobacz co będzie.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

15

Odp: OpenVPN między ruterami - widoczność klientów.

Tak, jest stary - 19.07. Swego czasu padł mi router podczas upgradu i trochę się go boję. Ale mam drugi identyczny, może sklonuję system, żeby mieć backup i dopiero zrobię upgrade. Ale to drugorzędne.

Tak czy inaczej - zrobiłem jak poleciłeś, znów bez efektu, Spróbowałem też ponownie ustawić default route na 192.168.3.1, ale tez bez zmian.

16

Odp: OpenVPN między ruterami - widoczność klientów.

To musi działać...

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

17

Odp: OpenVPN między ruterami - widoczność klientów.

Jestem przekonany, że zrobiłem wszystko jak trzeba, zgodnie z instrukcją. Chyba usunę wpisy związane z VPN i zacznę od nowa. Może czegoś nie widzę.
Może uda mi się zrobić upgrady OpenWRT, ale niemal cały czas ktoś potrzebuje dostępu, więc nie będzie to łatwe.
Muszę jeszcze namierzyć najnowszy obraz dla moich netgearów r6220.

18

Odp: OpenVPN między ruterami - widoczność klientów.

Mam więc pytanie towarzyszące: czy mogę zrobić backup wersji 19.07 i odtworzyć go na najnowszym systemie?
Z rzeczy, które nie instalowały się w trakcie instalacji mam dyndns, opevpn (który chcę zrobić od zera) i obsugę modemu jako awaryjne łącze - przy czym tego nie muszę odwtarzać, bo modem właśnie zmienia zastosowanie. To chyba wszystko.
Problem w tym, że nie wiem jak działą ten backup - czy to jest po prostu uci show -> uci set ? Jeśli tak, to wywali się na takich zmianach jak powyżej (network.vpn.ifname='eth0.2' >>> network.vpn.ifname='tun0' ).

Najnowsza wersja, o ile wiem, to 23.05.2
Czy słusznie mi się wydaje, że do upgrade mam ściągnąć netgear_r6220-squashfs-sysupgrade.bin? Czy raczej factory?
Zadowala mnie nadpisanie systemu od zera i odtworzenie backupu.

19

Odp: OpenVPN między ruterami - widoczność klientów.

Zrób sobie nawet teraz ten backup i zobacz co wchodzi w skład tego backupu.
Następnie wejdź do routera np. przez WinSCP i zobacz, czy jest to samo co w backupie.
Backup nie robi kopi 1:1 tego co jest w routerze.
To czego nie ma, a chcesz żeby było wrzucasz do backupu o ile się da, bo nie wszystko się da.
Niektóre routery z OpenWrt 23 przeszły na DSA, więc wtedy z backupu nie odtwarzasz networku i robisz go na nowo.

Następnym razem kopie zapasowe rób przed zmianami.

20

Odp: OpenVPN między ruterami - widoczność klientów.

Zabrałem się za to inaczej.
Muszę mieć działający ruter, koniecznie. Wyciągnąłem mój żelazny zapas - identyczny model (Netgear R6220). Ten zupdateowałem do najnowszego OpenWRT. Skonfigurowałem podstawy (IP Lanu itd) i podłączyłem zamiast głównego.
Przez niego piszę, więc mam dobry początek.

Teraz ręcznie uzupełnię co trzeba (ddns, leases itd, co tam jeszcze znajdę).

Problem z tym routerem jest taki, że kiedyś nawalił (https://eko.one.pl/forum/viewtopic.php?id=22149) i nie chcę go na stałe jako produkcyjny.
Więc gdy go skonfiguruję, zrobię backup i znów podmienię sprzęt na ten sam, który działa od dawna, wraz z wgraniem backupu.

I po tych operacjach zabiorę się za OpenVPN od nowa, na nowiutkim OpenWRT.

21

Odp: OpenVPN między ruterami - widoczność klientów.

Nie wiem co kombinujesz ale to co napisałem wyżej jest chyba proste jak drut.
Może się mylę, to niech mnie ktoś sprostuje.

22

Odp: OpenVPN między ruterami - widoczność klientów.

Zależy co odtwarzasz i na czym. Ale zakładaj że nie jest kompatybilny, zwłaszcza pliki network i wireless. Firewall się też zmienił, szczególnie jak używasz własnych reguł.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

23

Odp: OpenVPN między ruterami - widoczność klientów.

Nie mam własnych reguł firewalla. Zrobiłem już działający setup, mam najnowszą wersję OpenWRT i skonfigurowane to co mi potrzebne i przy okazji zlikwidowane śmieci. Dziś/jutro będę od początku robił OpenVPN, wg instrukcji. Stronę klienta też podniosłem z 21.07 a 23.05 i też zrobię od nowa.

24 (edytowany przez express 2024-02-23 23:55:13)

Odp: OpenVPN między ruterami - widoczność klientów.

Tak jak zapowiadałem - zacząłem od nowa, na nowych wersjach OpenWRT po obu stronach.
Jedyny efekt jest taki, że urządzenia w lanie klienta mają dostęp do internetu, ale przez modem, z pominięciem VPNa - tak mówi traceroute
Nadal routery się widzą, a klienty w obu lanach nie widzą nawet drugiego routera. W żadną stronę.
Nic nowego nie udało mi się osiągnąć


Żeby się co chwilę nie zastanawiać zmieniłem adresację VPN
Jest
A - Lan głównego routera, servera VPN z dostępem do sieci: 192.168.1.1
B - Lan drugiego routera, klienta VPN: 192.168.2.1
C - Adresacja VPN: 192.168.9.1


Poniżej mój konfig:

Firewall na serwerze:

firewall.@zone[2]=zone
firewall.@zone[2].name='vpn'
firewall.@zone[2].input='ACCEPT'
firewall.@zone[2].forward='ACCEPT'
firewall.@zone[2].output='ACCEPT'
firewall.@zone[2].network='vpn'
firewall.@forwarding[1]=forwarding
firewall.@forwarding[1].src='vpn'
firewall.@forwarding[1].dest='wan'
firewall.@rule[9]=rule
firewall.@rule[9].name='openvpn'
firewall.@rule[9].target='ACCEPT'
firewall.@rule[9].src='wan'
firewall.@rule[9].proto='udp'
firewall.@rule[9].dest_port='1194'

Network (na serwerze)

root@server:~# uci show network
network.loopback=interface
network.loopback.device='lo'
network.loopback.proto='static'
network.loopback.ipaddr='127.0.0.1'
network.loopback.netmask='255.0.0.0'
network.globals=globals
network.globals.ula_prefix='fd67:6631:8743::/48'
network.globals.packet_steering='1'
network.@device[0]=device
network.@device[0].name='br-lan'
network.@device[0].type='bridge'
network.@device[0].ports='lan1' 'lan2' 'lan3' 'lan4'
network.@device[0].ipv6='0'
network.lan=interface
network.lan.device='br-lan'
network.lan.proto='static'
network.lan.ipaddr='192.168.1.1'
network.lan.netmask='255.255.255.0'
network.lan.ip6assign='60'
network.lan.delegate='0'
network.wan=interface
network.wan.device='wan'
network.wan.proto='dhcp'
network.wan.hostname='*'
network.wan6=interface
network.wan6.device='wan'
network.wan6.proto='dhcpv6'
network.vpn=interface
network.vpn.device='tun0'
network.vpn.proto='none'





Na kliencie mam

root@client:~# ip route show table main
default via 192.168.8.1 dev eth1  src 192.168.8.100 
192.168.2.0/24 dev br-lan scope link  src 192.168.2.1 
192.168.8.0/24 dev eth1 scope link  src 192.168.8.100 
192.168.9.0/24 dev tun0 scope link  src 192.168.9.2 
root@client:~# ip route add default via 192.168.9.1 dev tun0

zmiana na poniższe nie pomogło, jedynie odcięło dostęp do internetu

root@client:~# ip route show table main
default via 192.168.9.1 dev tun0 
192.168.2.0/24 dev br-lan scope link  src 192.168.2.1 
192.168.8.0/24 dev eth1 scope link  src 192.168.8.100 
192.168.9.0/24 dev tun0 scope link  src 192.168.9.2 

traceroute na serwerze



traceroute to 8.8.8.8 (8.8.8.8), 30 hops max, 46 byte packets
 1  192.168.8.1 (192.168.8.1)  17.766 ms  17.609 ms  19.511 ms
 2  172.18.121.202 (172.18.121.202)  39.694 ms  14.636 ms  23.149 ms
 3  172.18.216.67 (172.18.216.67)  32.759 ms  25.633 ms  19.082 ms
 4  172.18.216.33 (172.18.216.33)  15.223 ms  172.18.216.34 (172.18.216.34)  27.365 ms  16.503 ms
 5  *  *  *
 6  80.50.105.129 (80.50.105.129)  34.663 ms  26.375 ms  60.944 ms
 7  195.116.35.198 (195.116.35.198)  36.631 ms  28.063 ms  39.742 ms
 8  72.14.214.158 (72.14.214.158)  24.275 ms  24.196 ms  24.188 ms
 9  64.233.174.229 (64.233.174.229)  34.958 ms  192.178.96.241 (192.178.96.241)  38.085 ms  64.233.174.229 (64.233.174.229)  23.451 ms
10  216.239.40.43 (216.239.40.43)  36.753 ms  209.85.250.175 (209.85.250.175)  25.272 ms  209.85.252.109 (209.85.252.109)  26.992 ms
11  dns.google (8.8.8.8)  36.515 ms  34.109 ms  29.423 ms

Logi z servera:

2024-02-23 23:46:46 31.61.172.182:3004 TLS: Initial packet from [AF_INET]31.61.172.182:3004, sid=69e22315 2727b077
2024-02-23 23:46:46 31.61.172.182:3004 VERIFY OK: depth=1, CN=server
2024-02-23 23:46:46 31.61.172.182:3004 VERIFY OK: depth=0, CN=client
2024-02-23 23:46:46 31.61.172.182:3004 peer info: IV_VER=2.5.8
2024-02-23 23:46:46 31.61.172.182:3004 peer info: IV_PLAT=linux
2024-02-23 23:46:46 31.61.172.182:3004 peer info: IV_PROTO=6
2024-02-23 23:46:46 31.61.172.182:3004 peer info: IV_NCP=2
2024-02-23 23:46:46 31.61.172.182:3004 peer info: IV_CIPHERS=AES-256-GCM:AES-128-GCM
2024-02-23 23:46:46 31.61.172.182:3004 peer info: IV_LZ4=1
2024-02-23 23:46:46 31.61.172.182:3004 peer info: IV_LZ4v2=1
2024-02-23 23:46:46 31.61.172.182:3004 peer info: IV_LZO=1
2024-02-23 23:46:46 31.61.172.182:3004 peer info: IV_COMP_STUB=1
2024-02-23 23:46:46 31.61.172.182:3004 peer info: IV_COMP_STUBv2=1
2024-02-23 23:46:46 31.61.172.182:3004 peer info: IV_TCPNL=1
2024-02-23 23:46:46 31.61.172.182:3004 Control Channel: TLSv1.3, cipher TLSv1.3 TLS_CHACHA20_POLY1305_SHA256, peer certificate: 2048 bit RSA, signature: RSA-SHA256
2024-02-23 23:46:46 31.61.172.182:3004 [client] Peer Connection Initiated with [AF_INET]31.61.172.182:3004
2024-02-23 23:46:46 client/31.61.172.182:3004 MULTI_sva: pool returned IPv4=192.168.9.2, IPv6=(Not enabled)
2024-02-23 23:46:46 client/31.61.172.182:3004 MULTI: Learn: 192.168.9.2 -> client/31.61.172.182:3004
2024-02-23 23:46:46 client/31.61.172.182:3004 MULTI: primary virtual IP for client/31.61.172.182:3004: 192.168.9.2
2024-02-23 23:46:46 client/31.61.172.182:3004 Data Channel: using negotiated cipher 'AES-256-GCM'
2024-02-23 23:46:46 client/31.61.172.182:3004 Outgoing Data Channel: Cipher 'AES-256-GCM' initialized with 256 bit key
2024-02-23 23:46:46 client/31.61.172.182:3004 Incoming Data Channel: Cipher 'AES-256-GCM' initialized with 256 bit key
2024-02-23 23:46:46 client/31.61.172.182:3004 SENT CONTROL [client]: 'PUSH_REPLY,route-gateway 192.168.9.1,topology subnet,ifconfig 192.168.9.2 255.255.255.0,peer-id 0,cipher AES-256-GCM' (status=1)

Logi z klienta

root@client:~# tail -f /tmp/openvpn.log 
2024-02-23 23:46:47 OPTIONS IMPORT: data channel crypto options modified
2024-02-23 23:46:47 Data Channel: using negotiated cipher 'AES-256-GCM'
2024-02-23 23:46:47 Outgoing Data Channel: Cipher 'AES-256-GCM' initialized with 256 bit key
2024-02-23 23:46:47 Incoming Data Channel: Cipher 'AES-256-GCM' initialized with 256 bit key
2024-02-23 23:46:47 TUN/TAP device tun0 opened
2024-02-23 23:46:47 net_iface_mtu_set: mtu 1500 for tun0
2024-02-23 23:46:47 net_iface_up: set tun0 up
2024-02-23 23:46:47 net_addr_v4_add: 192.168.9.2/24 dev tun0
2024-02-23 23:46:47 /usr/libexec/openvpn-hotplug up client tun0 1500 1552 192.168.9.2 255.255.255.0 init
2024-02-23 23:46:47 Initialization Sequence Completed

Podejrzane wydawało mi się (na serwerze) network.vpn.proto=none. Jednak zmiana na udp (+commit, +restart openvpn) nie pomogła.
Nadal nie wiem co zrobić, proszę o pomoc.


EDIT: dodałem jeszcze

firewall.@zone[2].masq='1'

bo nie było, ale bez efektu


-----------------------
Acha, i jeszcze poprawki do artykułu: certfikaty są tworzone w innych miejscach, niż openvpn ich potem szuka.
W konfiguracji OpenVPN na serwerze zamiast

    # uci set openvpn.home.ca=/etc/openvpn/ca.crt
    # uci set openvpn.home.cert=/etc/openvpn/serwer.crt
    # uci set openvpn.home.key=/etc/openvpn/serwer.key
(...)
    # uci set openvpn.home.dh=/etc/openvpn/dh.pem

Powinno być

    # uci set openvpn.home.ca=/etc/easy-rsa/pki/ca.crt
    # uci set openvpn.home.cert=/etc/easy-rsa/pki/issued/serwer.crt
    # uci set openvpn.home.key=/etc/easy-rsa/pki/private/serwer.key
(...)
    # uci set openvpn.home.dh=/etc/easy-rsa/pki/dh.pem

25 (edytowany przez express 2024-02-24 02:29:48)

Odp: OpenVPN między ruterami - widoczność klientów.

Jedną rzecz zrobiłem - teraz z routera-klienta mam wjazd do urządzeń w sieci servera.
To z sekcji "Dostęp do sieci LAN za serwerem", z poradnika. Działa.

Ale żaden inny kierunek nie działa., urządzenia z LANu klienta już nie widzą nic. Sprawdziłem, że nie dostają IP z OpenVPN, więc to niekoniecznie kwestia trasy czy firewall.



I jeszcze jedno - nie wiem, czy to ma tu znaczenie, ale i w kliencie i serwerze nie mam urządzeń o nazwie tun0 jest jedynie tun -  w filesystemie. Luci i uci pokazuje tun0 jak najbardziej.
Ale chyba nie ma to wpływu, skoro częściowo VPN już działa.