{"id":603,"date":"2010-02-01T10:00:15","date_gmt":"2010-02-01T08:00:15","guid":{"rendered":"http:\/\/www.butschek.de\/?p=603"},"modified":"2012-03-11T12:43:09","modified_gmt":"2012-03-11T11:43:09","slug":"openvpn-einrichten","status":"publish","type":"post","link":"https:\/\/www.butschek.de\/2010\/02\/01\/openvpn-einrichten\/","title":{"rendered":"OpenVPN einrichten"},"content":{"rendered":"
<\/a>Im Artikel SSH-Tunnel: Proxy \u00fcber SSH<\/a> habe ich bereits \u00fcber die M\u00f6glichkeit eines „Pseudo-VPNs“ berichtet. Nun will ich zeigen, wie man mit der Software OpenVPN ein einfaches Point-to-Point VPN einrichten kann.<\/p>\n Ziel soll es sein, auf einem Server OpenVPN so zu installieren, dass es auf einem UDP-Port eine verschl\u00fcsselte Verbindung entgegennimmt. Als Client benutze ich dazu unter Windows die Software OpenVPN-Portable, da diese gleich die GUI mit dabei hat und dar\u00fcberhinaus auch auf dem USB-Stick mitgenommen werden kann.<\/p>\n Eine einfache Steuerung von Serverdiensten ohne die Dienste dabei frei im Internet erreichbar zu haben, wie es Maxe<\/a> im SSH-Tunnel Thema ansprach, ist damit sehr einfach m\u00f6glich.<\/p>\n Zuerst installieren wir den Server, was unter Debian oder Ubuntu mit einem einfachen `apt-get install openvpn` geschieht. Danach in \/etc\/openvpn alle Beispiele l\u00f6schen und im gleichen Verzeichnis mit `openvpn –genkey –secret server.key` eine Keydatei anlegen, die k\u00fcnftig als Passwort zum VPN dient. Vor dem Neustart des Servers (\/etc\/init.d\/openvpn restart) sollte mit `modprobe tun` noch das Tunnel-Device unter Linux angelegt werden.<\/p>\n Nun ist noch die Server-Konfiguration zu erstellen. Hier schlage ich folgenden Inhalt f\u00fcr die server.conf vor:<\/p>\nmode p2p\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # Connection Mode: Point-2-Point\r\ndev tun\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # Device: Tunnel\r\n\r\nproto udp\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # Protocol (udp\/tcp-server\/tcp-client)\r\nport 1194\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # Listen port\r\n\r\nsecret server.key\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # Secred \"password\" file\r\n\r\nifconfig 10.1.75.1 10.1.75.2\u00a0\u00a0\u00a0\u00a0\u00a0 # local ip <-> remote ip\r\n\r\nping 10\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # Keepalive ping every 10 seconds\r\nping-restart 60\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # Reconnect after 60 seconds of no answer\r\nping-timer-rem\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # Restart ping only if we have a remote ip\r\npersist-key\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # Don't re-read key files across ping-restart\r\npersist-tun\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # Don't reopen TUN\/TAP across ping-restart\r\n\r\nuser root\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # Systemuser\r\ngroup nogroup\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # Systemgroup\r\n\r\nverb 3\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 # Give some more informations (default: 1)\r\nlog-append \/var\/log\/openvpn.log\u00a0\u00a0 # Logfile<\/pre>\n