Openvpn a routy
Ahoj,
jdu si pro radu. Potřebuji zprovoznit OpenVPN server (síť `10.8.0.0/24`). Což se mi podařilo, ale nyní si hraju s tím, že bych potřeboval nastavit routování.
Mám 2 klienty z toho ten jeden je přímo router. Ten druhý je něčí PC, který se připojí a skrze VPN se potřebuje dostat na PC, které je v místní síti za routerem (`10.22.28.0/24`), který je připojený jako klient 1.
Co jsem pochopil, tak je potřeba přidat direktivu `client-to-client`, ale to mi nepomohlo. Co ještě je potřeba? OpenVpn server je v defaultu, jen jsem přidal ccd kvůli statickým IP pro klienty
Server mi běží na Debian11.
Díky mockrát
Není lépe se zeptat na OpenVPN fóru?
A ten OpenVPN server máš pod tvojí kontrolou? Hodilo by se sem pastnout jeho konfigurák, bez certifikátů/klíčů a dalších citlivých informací.
Ano, server je čistě v mé správě
server.conf
client template
Okay.
Do server.conf si přidej řádku
Do adresáře ccd doplň do konfiguráku pro klient 1 volbu
tím specifikuješ, že za klient 1 je síť 10.22.28.0/24
Pak zrestartuj OpenVPN server, znovu navaž spojení z obou klientů a ověř si, jestli funguje komunikace. Příkaz tracert / traceroute ti případně ukáže cestu packetu a kde se ztratí. Ten router v roli klient 1 je co za stroj?
Zadám to tam a uvidíme.
Klient 1 je klasický PC
Klient 2 je router
Potřeba je se dostat z Klient 1 na počítač, který běží v síti, která je za Klient 2
V tom případě si tu direktivu
přidej do ccd konfiguráku klient 2.
Jasně a v případě, že bych měl ještě klient 3, tak jemu omezím přístup pomocí ufw, že? Když nechci aby tam měl přístup do té sítě
Ano, firewall (iptables nebo nftables) tohle řeší.
Btw, nevadí ti, že přesměrováváš provoz klientů skrz tvůj OpenVPN server? Jako že default routa jde do VPNky?
No, k tomu jsem se ještě nedostal :D ALe jo, to mi vadí :D
Z konfiguráku server.conf v tom případě odstraň direktivy
A k tomu abych odebral podporu ipv6, tak odeberu tyhle řádky, že?
proto udp6
server-ipv6 fd42:42:42:42::/112
tun-ipv6
push tun-ipv6
Upřímně bych to nedělal, protože to ničemu nevadí a máš aspoň základ do budoucna, až se rozhodneš IPv6 používat. Navíc klientům přiděluješ adresy z ULA - neveřejného rozsahu takže to ničemu nevadí dvojnásob, stejně se z těch adres nikam do IPv6 světa nedostanou.
Pokud se i přesto rozhodneš podporu pro IPv6 vyhodit, tak rozhodně ponech direktivu
protože bez ní se ti server nerozjede vůbec (a dle manuálu, který jsi jistě četl, pouze způsobuje to, že OpenVPN server naslouchá na IPv4 i IPv6 rozhraních)
Když i přes to, mi datový tok jde skrze server, tak může to být i v konfiguraci klienta, že?
Dneska jsem se dostal k testu teprve. Ping mi končí na IP routeru, dostanu se na 10.22.28.1, ale např. na 10.22.28.2 se již nedostanu.
Ten pc, na ktery se chces dostat to ma s firewalkem jak?
Nyní jsem to zkoušel oproti své síti a nedostanu se na tiskárnu (192.168.1.160) ani na NAS (192.168.1.244). Tam firewall není. Ale na DreamMachine se dostanu. Takže úplně stejná situace
Co je ale zajímavý, tak mi příjde že se mi špatně nastaví routing table na klientovi
no tak si přidej routu ručně a otestuj, ne?
Mimochodem, proč jsi zvolil OVPN a ne WG? Pokud dnes implementuju novou VPNku, tak volím automaticky WG, pokud není potřeba speciality z prostředí OVPN.
Jenže jakou routu? Protože mne to směřuje správně na 10.8.0.50, jelikož ten nas je v síti, která je za 10.8.0.50. Na router 192.168.1.1 se dostanu.
OVPN jsem volil protože je to požadavek, jelikož jsou využívány routery, které nepodporují WG, ale jen OVPN.
Pokud pingáš všechny lokální iface routeru na druhé straně, pak je problém v routeru, pravděpodobně firewall (forwarding pravidla) a/nebo routovací pravidla na routeru, popřípadě tvůj OVPN router není výchozím routerem pro klienty na které se snažíš dopingat (v takovém případě bys musel buď změnit výchozí bránu, nebo přidat statické routy, nebo pro směr z VPN použít NAT.)
edit: testovat můžeš i z druhé strany, tj. zkoušej pingat hostitele ve VPN...