In Zeiten von Internetzensur und Internetdiensten die nur bestimmte IP-Bereiche zulassen gibt es nichts besseres als seinen eigenen kleinen OpenVPN Server als Gateway zum Internet zu nutzen. Außerdem kann man somit auch ein wenig anonymer im WWW unterwegs sein. Deswegen hier mal eine kleine Anleitung zum Installieren eines OpenVPN Servers und Debian. Ziel ist es, das mein ganzer Internettraffic meines PCs über den Serve,r der z.B. in den USA steht, weiterzuleiten.
Kleine Anmerkung am Rande, ich werde hier nicht ins kleinste Detail gehen, sondern nur eine grobe Anleitung gebe. Weitere Details und eine ausführliche Anleitung könnt ihr auf der OpenVPN Webseite nachlesen. Als Server wird Debian 6 eingesetzt und als Client-PC Windows7
OpenVPN installieren
#apt-get install openvpn
Vorbereitung um die Keys zu generieren
#mkdir /etc/openvpn/easy-rsa
#cp /usr/share/doc/openvpn/examples/easy-rsa/2.0/* /etc/openvpn/easy-rsa
“certificate authority” generieren
#cd /etc/openvpn/easy-rsa
#source ./vars
#./clean-all
#./build-ca
Server Keys generieren
#./build-key-server servername
#./build-dh
#./build-key-pkcs12 client
unter /etc/openvpn/ die server.conf anlegen.
nano /etc/openvpn/server.conf
server.conf
server 10.8.0.0 255.255.255.0
dev tun
port 443
proto udp
ca easy-rsa/keys/ca.crt
cert easy-rsa/keys/servername.crt
key easy-rsa/keys/servername.key
dh easy-rsa/keys/dh1024.pem
push "redirect-gateway def1"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
ping-timer-rem
keepalive 20 180
persist-key
persist-tun
comp-lzo
# user nobody #unprivilegierten User unter dem OpenVPN nach dem Start laufen könnte
# group nogroup #Gruppe
verb 3
mute 50
Dann einfach die “ca.crt”; “client.crt”; “client.key” von /etc/openvpn/easy-rsa/keys auf euren PC ziehen und in den config-Ordner von openvpn packn. Danach die Datei client.ovpn mit eurem Texteditor erstellen.
client.ovpn
client
remote 13.33.33.37 443 #IP Adresse des Servers und Port
proto udp
dev tun
# Pfad zu den Keys anpassen bei bedarf
ca ca.crt
cert client.crt
key client.key
ns-cert-type server
persist-key
persist-tun
comp-lzo
verb 3
mute 50
Außerdem sollte noch die /etc/rc.local um folgendes erweitert werden damit das Masquerading auch nach einem Neustart des Servers noch funktioniert.
#natting for openvpn
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -s 10.8.0.0/24 -j SNAT --to eure.ip.hier.einfügen
(evtl. muss das Netzwerkinterface bei euch abgeändert werden. Statt eth0 kann es sein das bei euch venet0 hinkommt! Kommt drauf an ob ihr einen vServer oder einen dedicated Server habt.)
Mittels “/etc/init.d/openvpn start” den VPN Server starten und glücklich sein. Wichtig damit der VPN Server auch läuft muss bei eurem Server TUN/TAP aktiviert sein!