OpenVPN tunnel opzetten tussen Linux en een client

Zelf loop ik er als flexwerker regelmatig tegen aan dat ik ondersteuning moet verlenen, echter is de beveiliging middels een firewall op IP-adres geregeld. Het probleem waar ik tegen aan loop is dat ik een wisselend IP-adres heb en dit onhandig vind in de communicatie.

Door gebruik te maken van een Linux VPS in combinatie met OpenVPN is het mogelijk een enkel IP-adres naar de klant te communiceren.

Als eerste moet gezorgd worden dat UDP poort 1194 op de server open staat, dit is de poort waar standaard het OpenVPN-verkeer over gaat. Mocht deze geblokkeerd staan, kan deze open worden gezet met 't volgende iptables-commando,

    iptables -I INPUT -p udp --dport 1194 -j ACCEPT

Vervolgens kunnen server-side de routing-regels worden ingesteld en ipv4-forwarding aangezet,

    iptables -I FORWARD -i tun0 -o eth0 -m conntrack --ctstate NEW -j ACCEPT
    iptables -I FORWARD -i eth0 -o tun0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
    iptables -I FORWARD -i tun0 -o eth0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
    iptables -t nat -I POSTROUTING -s 10.200.0.0/24 -o eth0 -j MASQUERADE

    sysctl net.ipv4.ip_forward=1


Nu de firewall juist is geconfigureerd, is de volgende stap om  OpenVPN te configureren en starten. Als eerste is het verstandig een secret-key aan te maken om de VPN te beveiligen. Deze secret.key wordt in deze opzet zowel door de server als client gebruikt,

    openvpn --genkey --secret secret.key


Server-side kan vervolgens OpenVPN gestart worden. Dit configureerd een zogeheten 'tun'-device met een server/client ip-adres 10.200.0.1 & 10.200.0.2.

    sudo openvpn --ifconfig 10.200.0.1 10.200.0.2 --secret secret.key --dev tun


Client-side kan vervolgens verbinding gemaakt worden met de OpenVPN server met het volgende commando,

    sudo openvpn --ifconfig 10.200.0.2 10.200.0.1 --secret secret.key --dev tun --remote server1.itxplain.nl --redirect-gateway autolocal


Nu moet er een tunnel tot stand zijn gekomen tussen de server en de client. Al het TCP/IP verkeerd zal via de server worden geroute.

 

- Bent u opzoek naar een Php of Java programmeur voor uw website of applicatie? (freelance / detachering)
- Losse tickets, opdrachten, of gehele projecten in de planning?
- Systeembeheer van Linux of Windows Server ?

Dan kom ik graag met u in contact! Meer informatie over mij vindt u hier.
Sitemap | Op alle producten & diensten zijn de algemene voorwaarden van toepassing