Voraussetzungen
- OPNSense-Grundinstallation
- Kostenloser Test-Zugang oder ein bezahlter Zugang auf unserem IP-Tunnel-Server OVPNIP3 (ovpnip3.internet-xs.de / 212.58.69.3)
CA-Zertifikat importieren
Zunächst muss das CA-Zertifikat unseres OpenVPN-Servers in die OPNSense-Installation importiert werden. Dazu gehen Sie wie folgt vor:
Download “ovpnip3.internet-xs.de.ca.crt.txt”
- Navigieren Sie zu System > Trust > Authorities
- Klicken Sie auf + Add
- Descriptive name: ovpnip3.internet-xs.de
- Method: Import an existing Certificate Authority
- Certificate data: Inhalt der Datei ovpnip3.internet-xs.de.ca.crt.txt inklusive
-----BEGIN CERTIFICATE-----
und-----END CERTIFICATE-----
- Certificate Private Key: leer
- Serial for next certificate: leer
- Klicken Sie auf Save
OpenVPN Client-Verbindung konfigurieren
- Navigieren Sie zu VPN > OpenVPN > Clients
- Klicken Sie auf + Add
- Disabled: deaktiviert
- Description: z.B. ixs003-1234-a1b2c3d4 (Ihr Benutzername auf dem IP-Tunnel-Server)
- Server Mode: Peer to Peer (SSL/TLS)
- Protocol: UDP
- Device mode: tap
- Interface: any
- Remote Server: Host or address: 212.58.69.3
- Remote Server: Port: 1194
- Retry DNS resolution > Infinitely resolve remote server: aktiviert
- Proxy host or address: leer
- Proxy port: leer
- Proxy authentication extra options > Authentication method: none
- Local port: leer
- User name/pass > Username: Ihr Benutzername auf dem IP-Tunnel-Server (z.B. ixs003-1234-a1b2c3d4)
- User name/pass > Password: Das zum IP-Tunnel-Zugang zugehörige Passwort, das Sie von uns erhalten haben
- Renegotiate time: 0
- TLS Authentication > Enable authentication of TLS packets.: deaktiviert
- TLS Authentication > Automatically generate a shared TLS authentication key.: deaktiviert
- Peer Certificate Authority: ovpnip3.internet-xs.de (das im Abschnitt “CA-Zertifikat importieren” importierte CA-Zertifikat)
- Client Certificate: None (Username and Passwort required)
- Encryption algorithm: None (No Encryption)
- Auth Digest Algorithm: None (No Authentication)
- Hardware Crypto: No Hardware Cryption Acceleration oder eine zur Verfügung stehende Hardwarebeschleunigung
- IPv4 Tunnel Network: leer
- IPv6 Tunnel Network: leer
- IPv4 Remote Network: leer
- IPv6 Remote Network: leer
- Limit outgoing bandwidth: leer
- Compression: No Preference
- Type-of-Service: deaktiviert
- Don’t pull routes: deaktiviert
- Don’t add/remove routes: deaktiviert
- Kopieren Sie diese Einstellungen in das Feld Advanced:
sndbuf 0
rcvbuf 0
keepalive 20 120
nobind
route-delay 5
mute 5
explicit-exit-notify
auth-retry nointeract
persist-key
persist-tun
reneg-bytes 0
setenv CLIENT_CERT 0
- Verbosity level: 3 (recommended)
- Klicken Sie auf Save, um die Konfiguration abzuspeichern.
Ausführung prüfen
- Navigieren Sie zu VPN > OpenVPN > Connection Status
- In der Zeile mit dem Namen z.B. ixs003-1234-a1b2c3d4 in der Spalte Status sollte nun up stehen.
- Navigieren Sie zu VPN > OpenVPN > Log File
- Die oberste Zeile sollte einen Inhalt ähnlich openvpn[64476]: Initialization Sequence Completed haben
Interface Assignment konfigurieren
Damit das neue OpenVPN-Client-Interface ovpnc1
über die OPNSense-Web-Oberfläche konfiguriert werden kann, muss das Interface dem System bekannt gemacht werden.
- Navigieren Sie zu Interface > Assignments
- New Interface: Spalte Network port: ovpnc1 (XX:XX:XX:XX:XX:XX)
- New Interface: Description: z.B. ixs003-1234-a1b2c3d4 (z.B. Benutzername Ihres IP-Tunnel-Zugangs)
- Auf das + klicken, um zu speichern
Maskierung
Damit Traffic, der die OPNSense über den IP-Tunnel verlässt mit der korrekten Absender-IP-Adresse versehen wird, ist die Einrichtung einer Maskierung (Masquerading) notwendig:
- Navigieren Sie zu Firewall > NAT > Outbound
- Mode: Hybrid outbound NAT rule generation
- Save
- Add
- Interface: z.B. ixs003-1234-a1b2c3d4 (bzw. der Name, der über das Interface-Assignment festgelegt wurde)
- Save
ICMP erlauben
Es wird empfohlen, ICMP-Anfragen (z.B. Ping) auf dem virtuellen Netzwerk-Interface (z.B. ovpnc1) zu erlauben.
- Navigieren Sie zu Firewall > Rules > OpenVPN
- Klicken Sie auf + Add
- Action: Pass
- Disabled: deaktiviert
- Quick: aktiviert
- Interface: OpenVPN
- Direction: in
- TCP/IP Version: IPv4
- Protocol: ICMP
- ICMP type: any
- Source / Invert: deaktiviert
- Source > Advanced: keine Einstellungen
- Destination / Invert: deaktiviert
- Destination: Single host or Network
- Destination > Single host or Network > Netzwerk: Die Ihrem IP-Tunnel-Zugang zugeteilte feste, öffentliche IPv4-Adresse (z.B. 212.58.77.XXX)
- Destination > Single host or Network > CIDR-Angabe: 32
- Destination port range > from: any
- Destination port range > to: any
- Log > Log packets that are handled by this rule: Nach Belieben
- Category: Nach Belieben
- Description: z.B. Allow ICMP on 212.58.77.XXX
- Source OS: Any
- No XMLRPC Sync: Nach Belieben
- Schedule: none
- Gateway: Nothing selected
- Advanced Options: keine Einstellungen
- Klicken Sie auf Save
- Klicken Sie auf Apply changes
ICMP testen
Sie können nun von einem externen Gerät, z.B. von einem Smartphone, das im LTE eingebucht ist, die Ihrem IP-Tunnel-Zugang zugewiesene feste, öffentliche IPv4-Adresse pingen.