Temat: Openwrt vpn poprzez n2n lub wireguard

Które rozwiązanie Waszym zdaniem jest lepsze. N2n czy wireguard

Z tego co się zorientowałem to wireguard dosyć nieźle się już rozwinął i jest dobrze zintegrowany z luci.
https://mullvad.net/en/guides/running-wireguard-router/

Jeśli chciałbym się przesiąść z n2n na wireguarda w celu zestawienia 2 sieci lan tak żebym np z poziomu swojej podsieci
192.168.1.x chciał się dostać do drugiej w innym miejscu 192.168.y.x gdzie y <> 1 (mojej podsieci) to dalej musiałbym zestawiać routing pomiędzy tymi 2 sieciami ?

2

Odp: Openwrt vpn poprzez n2n lub wireguard

Tzn n2n jest od bardzo dawna nie rozwijany. I to zamyka w sumie wszelkie argumenty smile

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

3

Odp: Openwrt vpn poprzez n2n lub wireguard

viper_lasser napisał/a:

Które rozwiązanie Waszym zdaniem jest lepsze. N2n czy wireguard

Z tego co się zorientowałem to wireguard dosyć nieźle się już rozwinął i jest dobrze zintegrowany z luci.
https://mullvad.net/en/guides/running-wireguard-router/

Jeśli chciałbym się przesiąść z n2n na wireguarda w celu zestawienia 2 sieci lan tak żebym np z poziomu swojej podsieci
192.168.1.x chciał się dostać do drugiej w innym miejscu 192.168.y.x gdzie y <> 1 (mojej podsieci) to dalej musiałbym zestawiać routing pomiędzy tymi 2 sieciami ?

routing zawsze musisz zestawic, skad urzadzenia w seci maja wiedza jak sie do siebie dostac ?
w wireguardzie mozesz wszystko (wiekszosc) ustawic w /etc/config/network i wszystko pieknie smiga

4

Odp: Openwrt vpn poprzez n2n lub wireguard

A serwer wireguard mogę postawić na jakimś routerze ?
Czy jest już jakiś patent na zestawienie routingu dla danego klienta ?
Czy lepiej dalej klepać w konsoli route add ... ?

5 (edytowany przez miguelos 2018-07-08 14:43:43)

Odp: Openwrt vpn poprzez n2n lub wireguard

tak wyglada konfiguracja serwera wireguard (jeden tunel site-to-site i jeden dla mobilnego klienta)
trasy dodaja sie same na postawie ponizszego konfigu (sekcja route)
jedynie jesli chcesz policy based routing to musisz "recznie" stworzyc dodatkowa tablice routingu
LAN = 192.168.1.0/24

config interface 'wg0'
        option proto 'wireguard'
        option private_key 'aaaaa'
        list addresses '172.16.1.1/28'
        option listen_port '51820'

# site-to-site, tylko routing wybranych sieci
config wireguard_wg0
        option endpoint_host 'bbb.bb.bb'
        option endpoint_port '51820'
        option public_key 'bbbbbbbb'
        list allowed_ips '192.168.11.0/24'
        list allowed_ips '172.16.1.11/32'

# sieci za tunelem
config route 'behindvpn'
        option interface 'wg0'
        option target '192.168.11.0/24'
        option gateway '172.16.1.11'

# mobilny klient, ma full dostep przez lacze tego routera
config wireguard_wg0
        option public_key 'cccccccc'
        list allowed_ips '172.16.1.3/32'

druga strona (tez router openwrt), LAN = 192.168.11.0/24

config interface 'wg0'
        option proto 'wireguard'
        list addresses '172.16.1.11/28'
        option listen_port '51820'
        option private_key 'dddddddd'

config wireguard_wg0
        option endpoint_host 'ddddd'
        option endpoint_port '51820'
        option public_key 'dddddd'
        list allowed_ips '192.168.1.0/24'
        list allowed_ips '172.16.1.1/32'

config route 'lanbehindtun'
        option interface 'wg0'
        option target '192.168.1.0/24'
        option gateway '172.16.1.1'

mozna niezle bawic sie z adresacja tunelu i maskami, tak ze zrobisz sobie niezlego mesha
ale im wiecej routerow tym bardziej juz oplaca sie zapuscic jakis protokol routingu

troche odpowiedzi masz tutaj :
http://eko.one.pl/forum/viewtopic.php?id=17092

6

Odp: Openwrt vpn poprzez n2n lub wireguard

Zakochałem się w wireguard. smile
Prostota tego rozwiązania jest niesamowita. Do tego stary 1043 (client 2) już nie dostaje zadyszki od VPNa.

Mój przykład konfiguracji (fragmenty /etc/config/network):

Serwer:

config interface 'wg0'
        option proto 'wireguard'
        option private_key 'klucz prywatny serwera'
        option listen_port '22223'
        list addresses '172.16.15.3/24'

config wireguard_wg0
        option route_allowed_ips '1'
        option public_key 'klucz publiczny client 1'
        list allowed_ips '192.168.211.0/24 172.16.15.211/32'

config wireguard_wg0
        option route_allowed_ips '1'
        option public_key 'klucz publiczny client 2'
        list allowed_ips '192.168.22.0/24 172.16.15.22/32'

config wireguard_wg0
        option route_allowed_ips '1'
        option public_key 'klucz publiczny android '
        list allowed_ips '172.16.15.8/32'

Client1:

config interface 'wg0'
        option proto 'wireguard'
        list addresses '172.16.15.211/24'
        option private_key 'klucz prywatny client 1'

config wireguard_wg0
        option route_allowed_ips '1'
        option endpoint_host 'serwer.ddns.pl'
        option endpoint_port '22223'
        option public_key 'klucz publiczny serwera'
        list allowed_ips '192.168.0.0/16'
        list allowed_ips '172.16.15.0/24'

Client 2:

config interface 'wg0'
        option proto 'wireguard'
        list addresses '172.16.15.22/24'
        option private_key 'klucz prywatny client 2'

config wireguard_wg0
        option route_allowed_ips '1'
        option endpoint_host 'serwer.ddns.pl'
        option endpoint_port '22223'
        option public_key 'klucz publiczny serwera'
        list allowed_ips '192.168.0.0/16'
        list allowed_ips '172.16.15.0/24'

Android:

[Interface]
PrivateKey = klucz prywatny androida
Address = 172.16.15.8/32
DNS = 8.8.8.8

[Peer]
PublicKey = klucz publiczny serwera
AllowedIPs = 0.0.0.0/0
Endpoint = serwer.ddns.pl:22223

Komentarz:
Konfiguracja miała na celu umożliwić połączenie lanów trzech routerów: serwera oraz obu clientów. Dodatkowo klient androida ma dostęp do wszystkich sieci oraz puszczony cały ruch sieciowy przez serwer. Serwer może być podawany jako IP oraz jako domena. Oczywiście musi mieć zewnętrzne IP i otwarty port. Trasy tworzą się same na każdym urządzeniu. Pozostaje dostosować firewalle do swoich potrzeb. Docelowo dojdą jeszcze dwa komputery z linuksem, ale konfiguracja będzie analogiczna do androida.

W razie pytań służę pomocą.

Mam i używam: Fujitsu Futro S720, Netgear R6220, Unielec U7621-06, TP-Linki 1043 V1, V2, Linksysy EA7500v2, AeroHive AP350, Linksys EA8500, ZTE MF286d.
Mam: D-Linki DWR-921, DWR-118, DWR-116, TP-Link WDR-4900 v1, Checkpoint L-50, Linksysy 1900ACS, LB-Link BL-W1200,

7 (edytowany przez gonzales 2019-03-12 02:44:21)

Odp: Openwrt vpn poprzez n2n lub wireguard

Chcąc sprawdzić połączenie (pingi) to router na openwrt (jest pierwszym klientem) musi mieć zewnętrzne ip czy może być klientem hot-spota z komórki bo coś mi nie działa?

Czy tak to nie zadziała i muszę podpiąć modem LTE bezpośrednio z routerem i skonfigurować połączenie?

Jakie polecenie wydać w konsoli, żeby to zdiagnozować?

Drugi klient-smartfon.

Ping na androida:

Pinging 10.9.0.3 with 32 bytes of data:
Reply from 192.168.1.1: Destination host unreachable.
Reply from 192.168.1.1: Destination host unreachable.
Reply from 192.168.1.1: Destination host unreachable.
Reply from 192.168.1.1: Destination host unreachable.

Ping statistics for 10.9.0.3:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),

na smartfonie internetu brak.

Chyba coś jest namieszane z kluczami.
Wartość klucza publicznego w pliku /root/privkey
jest inna niż ta podan tutaj:

root@OpenWrt:~# wg
interface: wg0
  public key: xxx klucz publiczny serwera xxx
  private key: (hidden)
  listening port: 55055

peer: xxx klucz publiczny androida xxx
  allowed ips: 10.9.0.3/32
  persistent keepalive: every 25 seconds

peer: xxx klucz publiczny routera xxx
  allowed ips: 10.9.0.2/32
  persistent keepalive: every 25 seconds
root@OpenWrt:~#

da się to jakoś wyprowadzić czy firstboot pozostaje?

8

Odp: Openwrt vpn poprzez n2n lub wireguard

Jak masz innego klucze to wpisz poprawne...

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

9

Odp: Openwrt vpn poprzez n2n lub wireguard

Klucz poprawiłem ale nadal nie działa. Połączenie niby jest ale nie ma internetu na klientach.
Jutro będę walczył dalej ale sugestie mile widziane.

10

Odp: Openwrt vpn poprzez n2n lub wireguard

Jeśli klucze masz na 100% pewne, to wklej configi z wymazanymi kluczami.

Mam i używam: Fujitsu Futro S720, Netgear R6220, Unielec U7621-06, TP-Linki 1043 V1, V2, Linksysy EA7500v2, AeroHive AP350, Linksys EA8500, ZTE MF286d.
Mam: D-Linki DWR-921, DWR-118, DWR-116, TP-Link WDR-4900 v1, Checkpoint L-50, Linksysy 1900ACS, LB-Link BL-W1200,

11 (edytowany przez gonzales 2019-03-14 01:55:30)

Odp: Openwrt vpn poprzez n2n lub wireguard

Serwer

config interface 'wg0'
    option proto 'wireguard'
    option private_key 'xxxxxx'
    option listen_port '55055'
    list addresses '10.9.0.1/24'

router w openwrt - klient 1

config wireguard_wg0
    option public_key 'yyyyyy'
    option route_allowed_ips '1'
    list allowed_ips '10.9.0.2/32'
    option persistent_keepalive '25'
    option description 'openwrt'

smartfon - klient 2

config wireguard_wg0
    option public_key 'zzzzzz'
    option route_allowed_ips '1'
    list allowed_ips '10.9.0.3/32'
    option persistent_keepalive '25'
    option description 'android'

Czegoś tu brakuje. Twoje konfigi mają mniej wpisów niż konfigi miguelos. Ale Wam to działa.

12

Odp: Openwrt vpn poprzez n2n lub wireguard

        option endpoint_host 'serwer.ddns.pl'
        option endpoint_port '22223'

Tą sekcję z adresem ip i portem u klientów wyciąłeś czy nie masz?

Mam i używam: Fujitsu Futro S720, Netgear R6220, Unielec U7621-06, TP-Linki 1043 V1, V2, Linksysy EA7500v2, AeroHive AP350, Linksys EA8500, ZTE MF286d.
Mam: D-Linki DWR-921, DWR-118, DWR-116, TP-Link WDR-4900 v1, Checkpoint L-50, Linksysy 1900ACS, LB-Link BL-W1200,

13

Odp: Openwrt vpn poprzez n2n lub wireguard

Nie mam. Też zwróciłem na to uwagę w Twoich konfigach ale było już za późno na zmianę i sprawdzenie. Dzisiaj dopiszę i dam znać.

14

Odp: Openwrt vpn poprzez n2n lub wireguard

Nie kumam czemu nikt z was nie używa zerotier. Ma wszystkie zalety n2n bez jego wad.

15 (edytowany przez gonzales 2019-03-14 21:31:41)

Odp: Openwrt vpn poprzez n2n lub wireguard

To co zamieściłem to jest tylko konfig z serwera. Ale w konfigu klienta mam te sekcje o których piszesz. Poniżej konfig z klienta:

onfig interface 'wg0'
    option proto 'wireguard'
    option private_key 'xxxxx'
    list addresses '10.9.0.2/32'
    option auto '0'

config wireguard_wg0
    option public_key 'yyyyyyy'
    option route_allowed_ips '1'
    list allowed_ips '0.0.0.0/0'
    option endpoint_host 'x.x.x.x'
    option endpoint_port '55055'
    option persistent_keepalive '25'
    option description 'openwrt'

16

Odp: Openwrt vpn poprzez n2n lub wireguard

Nie za wąska ta maska w  list addresses '10.9.0.2/32' ?
Chodzi ping w puli  10.9.0.x?

Mam i używam: Fujitsu Futro S720, Netgear R6220, Unielec U7621-06, TP-Linki 1043 V1, V2, Linksysy EA7500v2, AeroHive AP350, Linksys EA8500, ZTE MF286d.
Mam: D-Linki DWR-921, DWR-118, DWR-116, TP-Link WDR-4900 v1, Checkpoint L-50, Linksysy 1900ACS, LB-Link BL-W1200,

17 (edytowany przez gonzales 2019-03-14 22:24:49)

Odp: Openwrt vpn poprzez n2n lub wireguard

Szczerze, to nie czaję o co chodzi z tą maską, coś z pólą dostępnych adresów ale co dokładnie to nie wiem.

A ping nie idzie. Żąda adresu docelowego.


Destination address required

dopisałem w konfigu serwera

option endpoint_host 'x.x.x.x'
option endpoint_port '55055'

i teraz kondola to wypluwa ale na kompie podpiętym do klienta nadal IP z LTE a nie mojego publicznego IP.

peer: klucz klienta
  endpoint: x.x.x.x:55055
  allowed ips: 10.9.0.2/32
  transfer: 0 B received, 9.39 KiB sent
  persistent keepalive: every 25 seconds

Wygląda na w miarę prostą do skonfigurowania usługę ale na razie pod górę.

18

Odp: Openwrt vpn poprzez n2n lub wireguard

przecież @Królik Ci napisał że masz za wąską maskę.
/32 to nie jest sieć.

Xiaomi AX3000T @ Netgear R6220
* DVBT2 - T230C *

19 (edytowany przez gonzales 2019-03-15 18:59:42)

Odp: Openwrt vpn poprzez n2n lub wireguard

@mar_w przecież napisałem, że tego nie czaję. Wiem, że /32 to inny sposób zapisu maski sieci czyli 255.255.255.0 ale jaki zakres adresów IP z taką maską wchodzi w grę (odpowiada tej masce sieci) to nie wiem, mimo zapoznaniu się z wikipedią.


Konfigurację robiłem na podstawie artykułu @Cezarego a on na pewno wie co pisze.

Będę walczył dalej. Może w końcu uda się to uruchomić. Może admin włączy się do dyskusji i coś naprowadzi wink

20

Odp: Openwrt vpn poprzez n2n lub wireguard

255.255.255.0 to maska 24. 32 to jeden adres IP.

Mam i używam: Fujitsu Futro S720, Netgear R6220, Unielec U7621-06, TP-Linki 1043 V1, V2, Linksysy EA7500v2, AeroHive AP350, Linksys EA8500, ZTE MF286d.
Mam: D-Linki DWR-921, DWR-118, DWR-116, TP-Link WDR-4900 v1, Checkpoint L-50, Linksysy 1900ACS, LB-Link BL-W1200,

21

Odp: Openwrt vpn poprzez n2n lub wireguard

Panowie, ale co tak właściwie wam biega z tą maską? Jak łącze jednego hosta to łączę jednego hosta, i to nadal działa. Teraz mam połączonego jednego hosta z maską /32:

root@MiFi:~# cat /etc/config/network 

config interface 'loopback'
    option ifname 'lo'
    option proto 'static'
    option ipaddr '127.0.0.1'
    option netmask '255.0.0.0'

config globals 'globals'
    option ula_prefix 'fd6c:4226:28c1::/48'

config interface 'lan'
    option type 'bridge'
    option ifname 'eth1'
    option proto 'static'
    option netmask '255.255.255.0'
    option ip6assign '60'
    option ipaddr '192.168.1.1'

config interface 'wan'
    option ifname 'usb0'
    option proto 'dhcp'

config interface 'wan6'
    option ifname 'eth0'
    option proto 'dhcpv6'

config interface 'wg0'
    option proto 'wireguard'
    option private_key '------------------------------'
    list addresses '10.9.0.3/32'

config wireguard_wg0
    option public_key '------------------------------------'
    option route_allowed_ips '1'
    list allowed_ips '0.0.0.0/0'
    option endpoint_host '79.162.106.52'
    option endpoint_port '55055'
    option persistent_keepalive '25'
    option description 'openwrt'

root@MiFi:~# wget -O - http://checkip.dyndns.org
Downloading 'http://checkip.dyndns.org'
Connecting to 216.146.43.71:80
Writing to stdout
<html><head><title>Current IP Check</title></head><body>Current IP Address: 79.162.106.52</body></html>
-                    100% |*******************************|   105   0:00:00 ETA
Download completed (105 bytes)


root@MiFi:~# ping onet.pl
PING onet.pl (213.180.141.140): 56 data bytes
64 bytes from 213.180.141.140: seq=0 ttl=56 time=136.477 ms
^C
--- onet.pl ping statistics ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 136.477/136.477/136.477 ms
Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.

22

Odp: Openwrt vpn poprzez n2n lub wireguard

Mój błąd, ma kliencie maska 32 jest spoko.

@gonzales
A co z firewallami? Ustawiałeś jakoś strefy?

Mam i używam: Fujitsu Futro S720, Netgear R6220, Unielec U7621-06, TP-Linki 1043 V1, V2, Linksysy EA7500v2, AeroHive AP350, Linksys EA8500, ZTE MF286d.
Mam: D-Linki DWR-921, DWR-118, DWR-116, TP-Link WDR-4900 v1, Checkpoint L-50, Linksysy 1900ACS, LB-Link BL-W1200,

23 (edytowany przez dziakson 2019-03-21 09:31:06)

Odp: Openwrt vpn poprzez n2n lub wireguard

Tak sobie czytałem ten temat, bo sam miałem pewien problem w zestawieniu połączenia według własnych potrzeb i tak:
@gonzales napisałeś w jednym z postów:

Wartość klucza publicznego w pliku /root/privkey

a potem pokazałeś że klucze publiczne się nie zgadzają. Pytanie czy napewno dobrze je powstawiałeś, bo privkey to raczej nie jest klucz publiczny tylko prywatny.
Żeby mi to zadziałało, to naturalnie poza ustawieniem firewalla zarówno na serwerze jak i na kliencie musiałem zrobić przekierowanie z portu serwera, czyli w tutorialu Cezarego 55055, na adres lan routera(serwera). Bez tego nie działało mimo, że konfigurację przenosiłem kropka w kropkę według poradnika Cezarego.
Jeżeli natomiast popatrzysz dokładnie na konfigurację którą zamieścił @Królik w poście nr 6, to pomoże Ci ona zmodyfikować ustawienia tak, aby klient(np client1) miał połączenie z siecią lan serwera i vice versa jednocześnie wychodząc do internetu przez własną bramę(nie przez ip serwera).
Dla celów diagnostycznych posprawdzaj sobie w pierwszej kolejności, czy możesz pingować adresy z sieci 10.9.0.0 - trzymając się poradnika Cezarego.

24

Odp: Openwrt vpn poprzez n2n lub wireguard

Oczywiście serwer musi mieć wyjście w świat - jeżeli serwerem nie jest brama tylko coś w środku to trzeba zrobić przekierownia, ale to jest oczywiście dla wszystkich innych "serwerów".

To tez napisałem w poradniku:

Ponieważ wykorzystany będzie router do instalacji "serwera" - wymagane jest aby miał on publiczny adres IP na wanie (lub przekierowane odpowiednie porty).

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

25 (edytowany przez dziakson 2019-03-21 10:27:51)

Odp: Openwrt vpn poprzez n2n lub wireguard

Żeby nie było @Cezary to nie jest żaden zarzut pod Twoim adresem. Tak właściwie to chciałem podziękować za poradnik i ogólnie dobrą robotę jaką tu wykonujesz. To co było w nim napisane pozwoliło mi na opisane tam zestawienie połączenia, z tym wyjątkiem, że musiałem zrobić przekierowanie portu 55055 na adres lan routera, który w moim wypadku jest serwerem. Router ma publiczny adres, dalej mam modem od ISP w trybie bridge, czyli można powiedzieć że dla mnie router(jednocześnie serwer wireguard)jest urządzeniem brzegowym(nie licząc modemu ISP). Jednak bez tego dodatkowego przekierowania o którym napisałem, nie chciało mi zestawić połączenia, więc stwierdziłem, że może kolaga @gonzales ma podobny problem.

Mój firewall po stronie serwera(sekcje z wireguard) wygląda tak:

config rule
    option src 'wan'
    option dest 'lan'
    option proto 'udp'
    option target 'ACCEPT'
    option dest_port '55055'
    option name 'wireguard'

config zone
    option name 'wg'
    option input 'ACCEPT'
    option forward 'ACCEPT'
    option output 'ACCEPT'
    option masq '1'
    option network 'wg0'

config forwarding
    option src 'wg'
    option dest 'wan'

config forwarding
    option src 'wan'
    option dest 'wg'

config forwarding
    option src 'wg'
    option dest 'lan'

config forwarding
    option src 'lan'
    option dest 'wg'

config redirect
    option target 'DNAT'
    option src 'wan'
    option dest 'lan'
    option proto 'udp'
    option src_dport '55055'
    option dest_ip 'adres_lan_routera'
    option dest_port '55055'
    option name 'wireguard'