Ubuntu 20.04 - Site-to-Site-VPN mit Sophos UTM und openVPN
Vorwort
Diese Dokumentation beschreibt den Installationsvorgang bzw. Einrichtung einer Site-to-Site-VPN-Verbindung zwischen einer Sophos UTM 9 und openVPN.
Bitte vergewissern Sie sich, dass Ihr System über die nötigen Voraussetzungen verfügt, wie in der Infobox beschrieben. Weiterhin sind Grundkenntnisse im Umgang mit Linux erforderlich, da die Vorgehensweise, wie sie hier beschrieben ist, in manchen Teilen abweichen kann. Kein System ist wie das Andere. Die Dokumentation wurde sorgfältig von mir geprüft. Dennoch kann ich keinerlei Haftung für Schäden an Ihrem System oder eine Gewährleistung übernehmen. Bitte verwenden Sie diese Dokumentation auf eigene Gefahr.
Verwendete Software:
Voraussetzungen:
- Sophos UTM9
Weitere, empfohlene Dokumentationen:
Server vorbereiten
Root-Rechte einräumen
Während der gesamten Dokumentation werden Root-Rechte benötigt. Um auf das Voranstellen von sudo
zu verzichten, verschaffen Sie sich für die gesamte Sitzung erhöhte Rechte mit:
# sudo -i
Update durchführen
Bringen Sie den Server auf den aktuellen Patchstand:
# apt update && apt upgrade
Software herunterladen und installieren
Installieren Sie die benötigte Software:
# apt install openvpn
Site-to-Site-VPN einrichten
Sophos einrichten
Kryptografische Einstellungen vornehmen
Verbinden Sie sich mit der Sophos UTM und wählen Sie in der Menüleiste unter Site-to-Site-VPN den Punkt SSL aus:
Wählen Sie den Reiter Erweitert aus und stellen Sie die folgenden Parameter ein:
SSL-VPN einrichten
Verbinden Sie sich mit der Sophos UTM und wählen Sie in der Menüleiste unter Site-to-Site-VPN den Punkt SSL aus:
Wählen Sie den Reiter Verbindungen aus und erstellen Sie eine Neue SSL-Verbindung nach folgendem Syntax:
Laden Sie anschliessend die Peer-Konfiguration herunter:
openVPN einrichten
Zertifikate exportieren
Erstellen Sie zunächste einen neuen Ordner /etc/openvpn/certs
:
# mkdir /etc/openvpn/certs
In der Datei Peer-Konfiguration befinden sich zwei Zertifikate und ein Private-Key.
Öffnen Sie die Datei und kopieren Sie den ersten Block von einschliesslich -----BEGIN CERTIFICATE-----
bis einschliesslich -----END CERTIFICATE-----
in eine neue Datei client.crt
:
# nano /etc/openvpn/certs/client.crt
Kopieren Sie den zweiten Block von einschliesslich -----BEGIN CERTIFICATE-----
bis einschliesslich -----END CERTIFICATE-----
in eine neue Datei ca.crt
:
# nano /etc/openvpn/certs/ca.crt
Kopieren Sie den dritten Block von einschliesslich -----BEGIN PRIVATE KEY-----
bis einschliesslich -----END PRIVATE KEY-----
in eine neue Datei client.key
:
# nano /etc/openvpn/certs/client.key
Schränken Sie die Zugriffsrechte auf den Private-Key ein:
# chmod 600 /etc/openvpn/certs/client.key
Zugangsdaten exportieren
In der Datei Peer-Konfiguration befinden sich ein Benutzername und ein Kennwort.
Suchen Sie in der Date nach username
und nach password
. Der Benutzername und das Kennwort befinden sich jeweils davor:
[...] [] ca_cert []REF_AaaUse1[] username[]¨[] -----BEGIN PRIVATE KEY----- MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDHlFRtHwIn+UZu +8yE/LL8E9NvWwSpAtgqW07JKPNGJdL2CGLPcvzxKEBHtBJtsULVZRstCaSc/Y82 [...] eJSUP1sPUuNKnaFLIgdjC9DgSCfZA1ClcgvYnf7/k3KK3x+Ugs3JH6q/n35/xxjS LK9IBW4mK7FlLRnFWwWwut8g -----END PRIVATE KEY----- [] key []AES-256-CBC[] encryption_algorithm[][][] compression ,REF_SSLSERVPNEXAMPLE0000ref_sslservpnexample[] password [...]
In unserem Beispiel lautet die Kombination aus Benutzname und Kennwort:
- Benutzername:
REF_AaaUse1
- Kennwort:
REF_SSLSERVPNEXAMPLE0000ref_sslservpnexample
Erstellen Sie eine neue Datei /etc/openvpn/user.creds
nach folgendem Syntax:
# nano /etc/openvpn/user.creds
REF_AaaUse1 REF_SSLSERVPNEXAMPLE0000ref_sslservpnexample
Konfiguration erstellen
Erstellen Sie eine neue Datei /etc/openvpn/sophos_site-to-site.conf
mit folgendem Inhalt:
# nano /etc/openvpn/sophos_site-to-site.conf
script-security 2 down-pre client dev tun proto tcp hand-window 30 port 4443 remote utm.example.com resolv-retry infinite nobind persist-key persist-tun ca /etc/openvpn/certs/ca.crt cert /etc/openvpn/certs/client.crt key /etc/openvpn/certs/client.key cipher AES-256-CBC auth SHA512 comp-lzo route-delay 4 verb 3 reneg-sec 0 auth-user-pass /etc/openvpn/user.creds keepalive 10 60
# sophos_site-to-site.conf [...] remote utm.example.com [...]
Autostart einrichten
Damit openVPN beim Starten die erstellte Verbindung automatisch herstellt, muss die Datei /etc/default/openvpn
angepasst werden.
Öffnen Sie die Datei /etc/default/openvpn
und fügen Sie folgenden Parameter hinzu:
# nano /etc/default/openvpn
# openvpn [...] AUTOSTART="sophos_site-to-site" [...]
Führen Sie anschliessend ein daemon-reload
durch:
# systemctl daemon-reload