====== Wireguard VPN tunel ======
Pomocí wireguard tunelu je možné obejít některé problémy nebo záměrné blokování některých poskytovatelů internetu (v ČR nikdo VoIP záměrně neblokuje, ale jinde ve světě to možné je).
Wireguard také pakety šifruje, takže se tím zvyšuje i bezpečnost. Wireguard je velmi nenáročný, nepředstavuje výraznou zátěž ani zvýšení přenesených dat.
Wireguard pro Windows, MacOS nebo Android lze stáhnout odsud. https://www.wireguard.com/install/ V Linuxu jsou přítomné balíčky z distribuce. Wireguard tunel umí používat některé routery (např. s OpenWRT), nebo i některé novější VoIP telefony. Wireguard je několiknásobně méně náročný na hardware v porovnání třeba s OpenVPN a umí využít více vláken.
Nainstalujte si aplikaci z odkazu výše.
Další kroj je vygenerovat pár veřejného a privátního klíče.
Ve verzi pro Windows to uděláte viz obrázek.
{{:pasted:20230628-104359.png}}
{{:pasted:20230628-110041.png}}
- Zvolíte si název tunelu - libovolné
- Veřejný klíč je nutné nám zaslat. Možné to je obyčejným emailem, není to nic tajného, střežit se musí privátní klíč.
- Do konfiguračního souobru přidáte část, kterou vám pošleme emailem.
{{:pasted:20230628-170230.png}}
A dáte uložit. Nyní by mělo být možné tunel používat.
Pokud potřebujete připojit jiné zařízení jako např. router a jste začátečníci, může být dobré si wireguard tunel nejdříve otestovat na windows.
Část kterou vám pošleme emailem bude vypadat takto:
Address=172.16.X.X/16
[Peer]
AllowedIPs = 81.31.43.192/28, 81.31.43.232/29, 81.31.45.32/27, 89.185.255.32/28, 89.185.255.48/29, 89.185.255.56/32, 89.185.255.58/31, 89.185.255.60/30, 172.16.0.0/16
PublicKey = Odor8VaaxS9YIdZv6xGcuibSccYRFVWk7ctTGSp43C8=
Endpoint = 89.185.255.57:38150
PersistentKeepalive = 30
Nastavení je pro všechny stejné (včetně veřejného klíče) s výjimkou ip adresy, kterou bude mít každý jinou. Každý uživatel bude mít samozřejmě jiný pár veřejného a soukromého klíče, který vygeneruje onen program. Nám se posílá jen veřejný klíč.
Úspěšně vytvořený tunel vypadá takto. Přenosy dat jsou obousměrné. Pokud se data přenáší jen jedním směrem, tunel nefunguje.
{{:pasted:20230628-172831.png}}
Defaultně jsou přes tunel směrovány jen [[http://www.odorik.cz/w/ip_adresy_pro_verejnost|všechny IP adresy služby Odorik.cz]], nemělo by to tak ovlivnit žádné jiné služby, které by mohly sledovat např. podezřelé změny ip adresy a základě toho blokovat. To se nastavuje pomocí parametru AllowedIps, který jsme si nechali vygenerovat pomocí [[https://www.procustodibus.com/blog/2021/03/wireguard-allowedips-calculator/|kalkulátoru]]. Omezeno je též firewallem u nás, o výjimku je třeba požádat emailem.
Pokud by jste chtěli z jednoho wireguard zařízení přistupovat na jiné, můžeme to na požádání povolit, defaultně to kvůli bezpečí není povoleno. Taktéž je možné přesměrovat port na veřejné adrese, ale to může být nebezpečné. Tunel není určen pro datově náročné služby jako streamovací služby pro sledovače filmů ani k tomu, aby se někdo schovával za naši veřejnou ip adresu protože dělá něco nekalého. K tomu jsou určené jiné služby. https://www.hidemyass.com/cs-cz/index Naopak pro různou vzdálenou konfiguraci lze používat bez omezení.
====== Kontrola že tunel funguje ======
Va tabulce přihlášených zařízení bude vidět veřejná ip adresa naší brány 89.185.255.57 a neveřejná vaše wireguard ip adresa 172.16.x.x
Leda, že by jste měl nastaven STUN, pak bude neveřejná adresa nesmysl, ale na funkci by to nemělo mít vliv. STUN je však lepší nepoužívat.
{{:pasted:20230629-112249.png}}
Jiná možnost kontroly je spustit program co se jmenuje cmd. Dále můžete nechat provést přikazy na obrázku. ipconfig, ping 172.16.0.1 a tracert sip.odorik.cz . Příkaz ping přerušíte zmáčknutím ctrl + c.
U příkazu tracert je pak vidět, že na sip.odorik.cz to jde přes ip adresu 172.16.0.1 tedy wireguard.
Viz výsledky fungujícího tunelu níže:
C:\Users\dodo>ipconfig
Windows IP Configuration
Unknown adapter wg_odorik: <<<<<< virtuální tunelová síťová karta
Connection-specific DNS Suffix . :
IPv4 Address. . . . . . . . . . . : 172.16.X.X <<<<<< Vaše tunelová ip adresa
Subnet Mask . . . . . . . . . . . : 255.255.0.0
Default Gateway . . . . . . . . . :
Ethernet adapter Ethernet:
Connection-specific DNS Suffix . : lan
IPv4 Address. . . . . . . . . . . : 192.168.0.118
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.0.1
C:\Users\dodo>ping 172.16.0.1
Pinging 172.16.0.1 with 32 bytes of data:
Reply from 172.16.0.1: bytes=32 time=27ms TTL=64
Reply from 172.16.0.1: bytes=32 time=28ms TTL=64
Ping statistics for 172.16.0.1:
Packets: Sent = 2, Received = 2, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 27ms, Maximum = 28ms, Average = 27ms
Control-C
^C
C:\Users\dodo>tracert sip.odorik.cz
Tracing route to sip.odorik.cz [81.31.45.51]
over a maximum of 30 hops:
1 27 ms 24 ms 24 ms 172.16.0.1
2 28 ms 26 ms 27 ms 81-31-45-51.static.masterinter.net [81.31.45.51]
Trace complete.
==== GL.iNet router====
GL.iNet routery používají OpenWRT, ale nad tím mají svojí zjednodušenou nadstavbu.
Bohužel to vypadá, že zjednodušená verze webového rozhraní neumí vygenerovat pár veřejného a privátního klíče a tak je třeba is od nás zaslat vygenerovaný pár klíčů.
Konfigurační soubor. Nebo jej vypnit podle obrázku. "Listening Port" není třeba vyplňovat a vlastní privátní klíč bude mít každý jiný.
{{:pasted:20230724-174327.png}}