2012-08-03 01:03:06 +0000 2012-08-03 01:03:06 +0000
50
50

OpenVPN: Alleen een specifiek IP adres routeren via VPN?

Op een extern privénetwerk staan twee servers – een bestandsserver en een databaseserver (het zijn allebei Win machines, voor het geval dat er iets toe doet).

De bestandsserver heeft zijn eigen tamelijk robuuste authenticatiemechanismen, en stelt me in staat om direct verbinding te maken vanaf een locatie op afstand.

De databaseserver gebruikt een eenvoudige gebruikersnaam en wachtwoord, dus om toegang door onbevoegden te voorkomen, is hij afgesloten voor het lokale netwerk – extern verkeer wordt geblokkeerd.

Om toegang te krijgen tot de database server, gebruik ik de OpenVPN client op Windows om verbinding te maken met een VPN server op het prive netwerk.

Standaard stuurt OpenVPN alle netwerkpakketten die bestemd zijn voor het externe netwerk waarop de VPN server zich bevindt, door de VPN. Helaas is toegang tot de bestandsserver via de VPN extreem traag!

Vraag:

Hoe kan ik de OpenVPN client zo instellen dat hij ALLEEN verkeer door de VPN routeert dat bestemd is voor een enkel, specifiek IP adres – namelijk de database server?

Antwoorden (5)

57
57
57
2013-08-06 08:15:41 +0000

De juiste configuratie voor OpenVpn is:

route-nopull 
route 192.168.0.0 255.255.255.0

Deze regels horen in uw .ovpn bestand en zal al het 192.168.0.* subnet verkeer door de VPN leiden.

Voor slechts één IP (192.168.0.1):

route-nopull 
route 192.168.0.1 255.255.255.255
27
27
27
2012-08-03 03:53:45 +0000

Doelen

  • Gebruik standaard de gewone internetverbinding voor al het internetverkeer, zelfs wanneer het VPN verbonden is.
  • Routeer verkeer naar één specifiek IP adres via de VPN.

Stappen

  1. Druk op Win + R en voer ncpa.cpl uit.

  2. Klik met de rechtermuisknop op de VPN-verbinding en ga naar Eigenschappen → Netwerken.

  3. Selecteer Internet Protocol Versie 4 en ga naar Eigenschappen → Geavanceerd….

  4. Schakel Use default gateway on remote network uit en klik op OK.

  5. (optioneel) Herhaal de vorige stappen voor Internet Protocol versie 6.

  6. (Opnieuw) verbinding maken met uw VPN.

  7. Open een opdrachtprompt en voer route print -4 uit.

  8. Zoek de interface van de VPN in de Interface lijst en zijn gateway in de Active Routes.

  9. Voeg een persistente route toe die zal worden toegevoegd aan de actieve routes telkens als er een verbinding is met het VPN:

  10. (optioneel) Herhaal de vorige stappen voor route print -6.

  11. Test de opstelling.

12
12
12
2013-02-04 14:38:03 +0000

Voeg aan de configuratie van uw OpenVPN-client een regel toe zoals:

route The.IP.To.Go 255.255.255.255

(Waarbij The.IP.To.Go het IP is dat je wilt routeren door de VPN)

Dit instrueert OpenVPN om de entry aan te maken in de routing tabel van je OS.

Als alternatief zou de OpenVPN server deze routing configuratie naar de clients kunnen “pushen”, door aan de server config toe te voegen:

push "route The.IP.To.Go 255.255.255.255"

EDIT: Eén ding heb ik over het hoofd gezien-het standaard doorsturen van al het verkeer… Het kan ofwel uitgeschakeld worden op de server, of clients kunnen kiezen om “pushed” directives te negeren (dus onze tweede optie “pushen” van de route zou niet werken) via:

route-nopull
0
0
0
2020-01-10 21:36:56 +0000

In antwoord op de opmerkingen die vroegen om een eenvoudige linux / netwerkmanager-vriendelijke oplossing voor het aanpassen van wat wordt gerouteerd via OpenVPN, hier is een GUI-vriendelijke manier om het in te stellen. Dit antwoord is, voor zover ik kan zien, gewoon de GUI-versie van Thomas’s antwoord .

Stap 1 : selecteer je VPN configuratie

Stap 2 : ga naar de relevante tab (ofwel IPv4 of IPv6)

Stap 3 : Klik op de knop “Routes…” rechtsonder

Stap 4 : Voeg de gewenste route toe (in dit geval wordt al het verkeer van 192.168.0.* omgeleid via de VPN

Stap 5 : Vink het vakje “alleen gebruiken voor bronnen op deze verbinding” aan zodat het verbinden met de VPN niet uw standaard gateway instellingen verandert om al het verkeer via de VPN te leiden.

-3
-3
-3
2015-02-13 09:07:32 +0000
iptables -A PREROUTING -t mangle -i <LAN_interface> \
-d <remote_network>/<remote_netmask> -j ROUTE --gw <openvpn_host_ip>