Ja ja – lange nichts mehr geschrieben. Aber ich lebe noch und habe gerade eine OpenVPN Odyssee mit MikroTik Routern hinter mich gebracht. Warum? Ihr kennt es: Man googelt hoch motiviert nach einem knackigen Howto und entdeckt lauter Blogs, die mit viel Halbwissen gefüllt sind. Man merkt das die meisten noch nie ein OpenVPN unter Linux konfiguriert haben, geschweige denn den Unterschied zwischen TUN und TAP kennen. Sei es drum. Du hast diese Doku gefunden und sollst nicht enttäuscht werden, denn sie funktioniert 🙂
Erst mal die Zertifikate und Schlüssel mit OpenSSL bauen. Zu kompliziert? Stimmt. Dafür gibt es ja auch Easy-RSA. Zuerst die Datei „vars“ editieren und die gewünschten Parameter anpassen:
1 2 3 4 5 6 7 8 9 |
# These are the default values for fields # which will be placed in the certificate. # Don't leave any of these fields blank. export KEY_COUNTRY="DE" export KEY_PROVINCE="Saarland" export KEY_CITY="Saarbruecken" export KEY_ORG="MikroTik Router" export KEY_EMAIL="noreply@mikrotik.local" export KEY_OU="IT" |
Dann bosseln wir schnell die benötigten Certs und Keys mit den folgenden Befehlen zusammen:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
cd /usr/share/easy-rsa/ source vars NOTE: If you run ./clean-all, I will be doing a rm -rf on /usr/share/easy-rsa/keys ./build-ca # CA erstellen ./build-key-server mikrotik # Server Zertifikat ./build-key client1 # Client Zertifikat (am besten mehrere erstellen) Inhalt von "Keys": /snip/ 538098 -rw-r--r-- 1 root root 1809 Jul 11 11:33 ca.crt 538097 -rw------- 1 root root 1704 Jul 11 11:33 ca.key 538108 -rw-r--r-- 1 root root 5591 Jul 11 11:34 client1.crt 538107 -rw-r--r-- 1 root root 1094 Jul 11 11:34 client1.csr 538106 -rw------- 1 root root 1704 Jul 11 11:34 client1.key 538113 -rw-r--r-- 1 root root 5591 Jul 11 11:34 client2.crt 538096 -rw-r--r-- 1 root root 1094 Jul 11 11:34 client2.csr 538094 -rw------- 1 root root 1708 Jul 11 11:34 client2.key 538101 -rw-r--r-- 1 root root 5715 Jul 11 11:33 mikrotik.crt 538100 -rw-r--r-- 1 root root 1094 Jul 11 11:33 mikrotik.csr 538099 -rw------- 1 root root 1704 Jul 11 11:33 mikrotik.key |
Zuerst importieren wir die Zertifikate. Die Certs am besten mit WinSCP auf den MikroTik Router kopieren:
In der Winbox ins System importieren (System > Files > Import):
Der Buchstabe „K“ erscheint sobald der Key zum passenden Zertifikat gefunden wurde:
Jetzt legen wir ein Profil für OpenVPN Server an. Damit bestimmen wir die lokale Server-IP für den OpenVPN Adapter (TUN/TAP) und den IP-Pool der Remote Clients (PPP > Profiles):
IP Pool. Gute Sache. Bevor man diesen auswählen kann, muss er erzeugt werden (IP > Pool):
Jetzt kann der eigentliche OpenVPN Server aktiviert werden (PPP > OVPN Server):
Zum Einwählen fehlt noch ein Benutzer mit Passwort (PPP > Secrets):
Das war’s jetzt auf dem MikroTik Router. Nun geht’s auf dem WIndows Client weiter. Folgende Dateien und Config in den Programmordner von OpenVPN kopieren:
Hier meine Beispielkonfiguration:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
remote 10.1.1.65 1194 proto tcp-client dev tun resolv-retry infinite nobind persist-key persist-tun tls-client ca ca.crt cert client1.crt key client1.key auth-user-pass ping 10 verb 3 cipher AES-256-CBC auth SHA1 pull # Hier die lokalen Routen eintragen die in den Tunnel gehen sollen route 10.8.111.0 255.255.255.0 10.8.10.1 |
Verbinden uns loslegen:
Kleiner Ping aufs Gateway und das war’s: