Portál AbcLinuxu, 9. srpna 2025 07:18


Dotaz: OpenVPN + routing

7.11.2007 05:07 gandie
OpenVPN + routing
Přečteno: 1777×
Odpovědět | Admin
Zdravim, resim problem s OpenVPN, predpokladam, ze chyba bude v routovani, ale nemuzu prijit na to kde.
Mam VPN server Linux (192.168.2.1), ke kteremu se pripojuje jako klient jiny Linux (192.168.2.2), spojeni se vytvori, ping funguje na obe IP adresy. Problem je, ze toto spojeni potrebuji vyuzit obracene, klient je ve vnitrni siti, kde je na FW zakazany pristup a ja potrebuji k dalsim serverum pristupovat prave z teto vnitrni site ven.
Laptop (eth0/192.168.1.10) -> VPN server (eth0/ver.ejna.ip.adr, eth1/192.168.1.100, tun0/192.168.2.1) -> INTERNET
VPN klient (eth0/192.168.1.130, tun0/192.168.2.2) -> Router/FW (eth0/ver.ejna.ip.adr, eth1/192.168.1.1) -> INTERNET
VPN klient inicializuje spojeni, nastavi tunel a ja se potrebuji z Laptopu tunelem dostat na Internet z verejne IP adresy Routeru/FW na druhe strane.

Vim, ze je to silene a jeden hloupy port by usetril asi tisic hodin premysleni, ale vysvetlete si to adminovi v jine firme, se kterym musite "zapasit".
Ke vsemu ty site na sebe v podstate nesmi videt, ale to uz se da vyresit firewallem na strane VPN klienta.

Nejak jsem se v tom zamotal a nevim zda to vubec lze resit... Za "kopance" moc diky.

Diky, Jan PAVLÍK
--
Jabber: gandie
Skype: gandie
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

7.11.2007 06:46 Rockfire | skóre: 14 | blog: blg
Rozbalit Rozbalit vše Re: OpenVPN + routing
Odpovědět | | Sbalit | Link | Blokovat | Admin
Melo by to jit, ale nemam to vyzkousene

1) je potreba na strane klienta povolit, preposilani paketu (echo 1 > /proc/sys/net/ipv4/ip_forwarding )

2) provadet nat na klientovi tj iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 192.168.1.130

3) ted se bude routovat na strane serveru: pridat cestu na klienta route add verejna_ip_klienta gw brana

4) smazes vychozi branu route del default gw vychozi_brana

5) pridas branu na tun zarizeni route add default gw 192.168.2.1

snad to bude fungovat.
7.11.2007 07:49 pht
Rozbalit Rozbalit vše Re: OpenVPN + routing
To nebude fungovat. Klient musi mit vzdy defaultni branu na vlastni siti, tj. prichazi v uvahu pouze VPN server. Na VPN serveru se pak musi zajistit aby se packety z Laptopu routovaly JINOU defaultni branou. Osobne bych k tomu pouzil markovani packetu pres iptables + pomoci iproute sestavil jinou routovaci tabulku s jinou defaultni branou pro markovane pakety. Cca takto:
iptables -t mangle -A PREROUTING -j MARK --set-mark 3 -s laptop -i eth1 -d ! 192.168.0.0/16
ip rule add fwmark 3 table 2
ip route add default via vpn klient dev tun0 table 2
Jak tak na to koukam, budete taky muset zajistit aby vpn klient forwardoval packety (coz uz bylo receno) a aby znal cestu k laptopu pres vpn tunel.

No, je to docela zajimavy prekladatelsky orisek. :) Nebylo by lepsi provest ssh na klienta a pracovat odtud?
7.11.2007 08:10 Rockfire | skóre: 14 | blog: blg
Rozbalit Rozbalit vše Re: OpenVPN + routing
To co jsem napsal ja to nepopira, resp. u klienta openvpn se pouze nastavi ze veskere pakety prijate z openvpn se maji natovat a jeste se zapne preposilani paketu. Pokud neni problem primo v openvpn, ze by klient nemohl prijimat pozadavky a dal je routovat (o cemz nevim), tak by to nemel byt problem.
multi avatar 7.11.2007 10:13 multi | skóre: 38 | blog: JaNejsemOdsut
Rozbalit Rozbalit vše Re: OpenVPN + routing
Odpovědět | | Sbalit | Link | Blokovat | Admin
moc otazku nechapu ale zkousel jsi pridat do konfigurace vpn serveru:
push "route 192.168.2.0 255.255.255.0"
nebo jeste dalsi site
Fitness ajťák: kutilův web; bezdrátová čidla teploty vývoj softwaru linux server
7.11.2007 12:22 anonym
Rozbalit Rozbalit vše Re: OpenVPN + routing
Odpovědět | | Sbalit | Link | Blokovat | Admin
a co tak u klienta nastavit redirect-gateway... V tomto pripade sa veskery traffic bude routovat cez VPN... Ak nechces cez VPN routovat vsetko tak treba spravne nastavit 'push route ...', ako radil kolega v predchadzajucom prispevku
8.11.2007 02:37 gandie
Rozbalit Rozbalit vše Re: OpenVPN + routing
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zdravim, dekuji vsem za prispevky, nakonec me napadla jeste jedna varianta, jak to v podstate obejit. Jelikoz nepotrebuji vsechny protokoly, ale staci mi pouze nektere porty, nainstaloval jsem proxy server (zatim jen na 3128, pote mozna zkusim SOCKS4/5). VPN spojeni mezi klientem a serverem je v poradku a funguje, pridal jsem NAT mezi eth1 lokalni a tun0:
iptables -t nat -A PREROUTING -p tcp -i eth1 -d 192.168.1.100 --dport 3128 -j DNAT --to 192.168.2.2:3128
iptables -A FORWARD -p tcp -i tun0 -d 192.168.2.2 --dport 3128 -j ACCEPT
A do nastaveni klienta IP adresu laptopu, abych dostal odpoved na server.
route 192.168.1.10 255.255.255.255
Tim se dostanu z Laptopu na VPN klienta na proxy server (3proxy - mimochodem zajimava aplikace, ma podporu mnoho protokolu). Dekuji vsem za prispevky, pokud budete mit naladu, zkomentujte reseni, zajima me, jestli je to moc "zprasene" :))

Diky, Jan PAVLÍK

--
Jabber: gandie
Skype: gandie

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.