In diesem How To zeigen wir, wie sich mit strongSwan unter Linux eine IPSec client-to-site VPN-Verbindung mit einer Securepoint Firewall aufbauen lässt. IPSec bietet dabei einige Vorteile, unter anderem eine sehr hohe VPN-Performance und ein hohes Sicherheitsniveau.
In unserem Beispiel verwenden wir Ubuntu Server 22.04.3 LTS als Betriebssystem.
1. Konfiguration der VPN auf der Securepoint Firewall
2. strongSwan auf dem Client installieren
Schritt 1: strongSwan installieren
root@ubuntu-test:~# sudo apt-get install -y strongswan libcharon-extra-plugins strongswan-pkiSchritt 2: IPSec Verbindung konfigurieren. Die Konfiguration der IPSec Verbindung wird in der Datei /etc/ipsec.conf vorgenommen. Wir verwenden hier die Anwendung “vi” zum Bearbeiten der ipsec.conf Datei.
Die Konfiguration findet über “left” und “right” statt. Hier ist die linke Seite der IPSec-Client und die rechte Seite der IPSec-Server. Mit dieser Konfiguration wird die VPN-Verbindung automatisch neu gestartet.
root@ubuntu-test:~# vi /etc/ipsec.conf# ipsec.conf - strongSwan IPsec configuration file
# basic configuration
config setup
        charondebug="cfg 2, chd 2, esp 2, ike 2, knl 2, lib 2, net 2, tls 2" #für Debugging
conn IPSec-RW
        authby=secret
        auto=start
        keyexchange=ikev2
        leftid=RW-IPSec-Client
        leftsubnet=10.0.42.0/24
        leftsourceip=0.0.0.0
        leftfirewall=no
        leftauth=psk
        right=[Öffentliche IP oder Hostname / DynDNS-Adresse]
        rightsubnet=10.20.0.0/24
        rightid=RW-IPSec-Server
        rightauth=psk
        ikelifetime=1h
        dpdaction=restart
        dpddelay=10s
        dpdtimeout=60s
        closeaction=restart
        keyingtries=%foreverSchritt 3: Schlüssel zur Verifizierung in die Datei /etc/ipsec.secrets eintragen. In unserem Beispiel tragen wir hier unseren zuvor erstellten Pre-Shared Key ein. Die Identifizierung des richtigen Schlüssels für die Verbindung findet hier über die IDs des Clients und der Firewall statt.
root@ubuntu-test:~# vi /etc/ipsec.secrets# This file holds shared secrets or RSA private keys for authentication.
# RSA private key for this host, authenticating it to any other host
# which knows the public part.
@RW-IPSec-Client @RW-IPSec-Server : PSK "twt}qsG1w:[[;H*?HSC@GCQ4Z0kSsig]"Schritt 4: IPSec-VPN starten und Status überprüfen. Hier lässt sich erkennen, ob die Verbindung erfolgreich aufgebaut werden konnte. Wenn ICMP Echo Requests im Portfilter erlaubt wurden, kann zum Testen der Ping-Befehl für einen Host im Zielnetzwerk benutzt werden.
root@ubuntu-test:~# ipsec startroot@ubuntu-test:~# ipsec status
Security Associations (1 up, 0 connecting):
IPSec-RW[1]: ESTABLISHED 117 seconds ago, 192.168.100.109[RW-IPSec-Client]...xxx.xxx.xxx.xxx[RW-IPSec-Server]
IPSec-RW{1}:  INSTALLED, TUNNEL, reqid 1, ESP in UDP SPIs: cacf0cd8_i cb580403_o
IPSec-RW{1}:   10.0.42.0/24 === 10.20.0.0/24
 
								 
								 
								 
								 
								 
								 
							 
							