GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Installieren und konfigurieren Sie StrongSwan VPN auf Ubuntu 20.04

Ein virtuelles privates Netzwerk wird verwendet, um aus einer öffentlichen Internetverbindung ein privates Netzwerk zu erstellen, um Ihre Identität zu schützen. VPN verwendet einen verschlüsselten Tunnel, um die Daten sicher zu senden und zu empfangen.

strongSwan ist eine der bekanntesten VPN-Software, die verschiedene Betriebssysteme unterstützt, darunter Linux, OS X, FreeBSD, Windows, Android und iOS. Es verwendet das IKEv1- und IKEv2-Protokoll für den sicheren Verbindungsaufbau. Sie können seine Funktionalität mit integrierten Plugins erweitern.

In diesem Tutorial erklären wir Schritt für Schritt, wie man einen KEv2-VPN-Server mit StrongSwan auf Ubuntu 20.04 einrichtet.

Voraussetzung

• Zwei Systeme mit Ubuntu 20.04-Server
• Auf beiden Servern ist ein Root-Passwort konfiguriert

StrongSwan installieren

Standardmäßig ist StrongSwan im Standard-Repository von Ubuntu 20.04 verfügbar. Sie können es mit anderen erforderlichen Komponenten mit dem folgenden Befehl installieren:

apt-get install strongswan strongswan-pki libcharon-extra-plugins libcharon-extauth-plugins libstrongswan-extra-plugins -y

Nachdem Sie alle Pakete installiert haben, können Sie mit der Generierung eines CA-Zertifikats fortfahren.

Generieren Sie ein Zertifikat für den VPN-Server

Als Nächstes müssen Sie ein Zertifikat und einen Schlüssel für den VPN-Server generieren, um die Authentizität des Servers auf der Client-Seite zu überprüfen.

Erstellen Sie zunächst mit dem folgenden Befehl einen privaten Schlüssel für die Root-CA:

ipsec pki --gen --size 4096 --type rsa --outform pem > /etc/ipsec.d/private/ca.key.pem

Erstellen Sie als Nächstes eine Root-CA und signieren Sie sie mit dem obigen Schlüssel:

ipsec pki --self --in /etc/ipsec.d/private/ca.key.pem --type rsa --dn "CN=My VPN Server CA" --ca --lifetime 3650 --outform pem > /etc/ipsec.d/cacerts/ca.cert.pem

Erstellen Sie als Nächstes mit dem folgenden Befehl einen privaten Schlüssel für den VPN-Server:

ipsec pki --gen --size 4096 --type rsa --outform pem > /etc/ipsec.d/private/server.key.pem

Generieren Sie schließlich das Serverzertifikat mit dem folgenden Befehl:

ipsec pki --pub --in /etc/ipsec.d/private/server.key.pem --type rsa | ipsec pki --issue --lifetime 2750 --cacert /etc/ipsec.d/cacerts/ca.cert.pem --cakey /etc/ipsec.d/private/ca.key.pem --dn "CN=vpn.domain.com" --san="vpn.domain.com" --flag serverAuth --flag ikeIntermediate --outform pem > /etc/ipsec.d/certs/server.cert.pem

An diesem Punkt sind alle Zertifikate für den VPN-Server bereit.

StrongSwan VPN konfigurieren

Die Standardkonfigurationsdatei von strongswan ist /etc/ipsec.conf. Wir können die Hauptkonfigurationsdatei sichern und eine neue Datei erstellen:

mv /etc/ipsec.conf /etc/ipsec.conf-bak

Als nächstes erstellen Sie eine neue Konfigurationsdatei:

nano /etc/ipsec.conf

Fügen Sie die folgenden Konfigurations- und Verbindungseinstellungen hinzu:

config setup
        charondebug="ike 2, knl 2, cfg 2, net 2, esp 2, dmn 2, mgr 2"
        strictcrlpolicy=no
        uniqueids=yes
        cachecrls=no

conn ipsec-ikev2-vpn
      auto=add
      compress=no
      type=tunnel
      keyexchange=ikev2
      fragmentation=yes
      forceencaps=yes
      dpdaction=clear
      dpddelay=300s
      rekey=no
      left=%any
      [email protected]
      leftcert=server.cert.pem
      leftsendcert=always 
      leftsubnet=0.0.0.0/0
      right=%any
      rightid=%any
      rightauth=eap-mschapv2
      rightsourceip=10.10.10.0/24
      rightdns=8.8.8.8
      rightsendcert=never
      eap_identity=%identity

Speichern und schließen Sie die Datei /etc/ipsec.conf.

Als Nächstes müssen Sie die EAP-Benutzeranmeldeinformationen und die privaten RSA-Schlüssel für die Authentifizierung definieren.

Sie können es einrichten, indem Sie die Datei /etc/ipsec.secrets:

bearbeiten
nano /etc/ipsec.secrets

Fügen Sie die folgende Zeile hinzu:

: RSA "server.key.pem"
vpnsecure : EAP "password"

Starten Sie dann den StrongSwan-Dienst wie folgt neu:

systemctl restart strongswan-starter

Geben Sie Folgendes ein, damit StrongSwan beim Systemstart gestartet werden kann:

systemctl enable strongswan-starter

Überprüfen Sie den Status des VPN-Servers, geben Sie Folgendes ein:

systemctl status strongswan-starter

Kernel-Paketweiterleitung aktivieren

Als nächstes müssen Sie den Kernel konfigurieren, um die Paketweiterleitung zu aktivieren, indem Sie die Datei /etc/sysctl.conf bearbeiten:

nano /etc/sysctl.conf

Entkommentieren Sie die folgenden Zeilen:

net.ipv4.ip_forward = 1
net.ipv6.conf.all.forwarding = 1
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0

Speichern und schließen Sie die Datei und laden Sie dann die neuen Einstellungen mit dem folgenden Befehl neu:

sysctl -p

Installieren und konfigurieren Sie den StrongSwan-Client

In diesem Abschnitt installieren wir den StrongSwan-Client auf dem Remote-Computer und verbinden uns mit dem VPN-Server.

Installieren Sie zuerst alle erforderlichen Pakete mit dem folgenden Befehl:

apt-get install strongswan libcharon-extra-plugins -y

Sobald alle Pakete installiert sind, stoppen Sie den StrongSwan-Dienst mit dem folgenden Befehl:

systemctl stop strongswan-starter

Als nächstes müssen Sie die Datei ca.cert.pem vom VPN-Server in das Verzeichnis /etc/ipsec.d/cacerts/ kopieren. Sie können es mit dem SCP-Befehl wie unten gezeigt kopieren:

scp [email protected]:/etc/ipsec.d/cacerts/ca.cert.pem /etc/ipsec.d/cacerts/

Um die VPN-Client-Authentifizierung einzurichten, verwenden Sie die Datei /etc/ipsec.secrets:

nano /etc/ipsec.secrets

Fügen Sie die folgende Zeile hinzu:

vpnsecure : EAP "password"

Bearbeiten Sie dann die Hauptkonfigurationsdatei von strongSwan:

nano /etc/ipsec.conf

Fügen Sie die folgenden Zeilen hinzu, die Ihrer Domäne und Ihrem Passwort entsprechen, das Sie in der Datei /etc/ipsec.secrets angegeben haben.

conn ipsec-ikev2-vpn-client
    auto=start
    right=vpn.domain.com
    rightid=vpn.domain.com
    rightsubnet=0.0.0.0/0
    rightauth=pubkey
    leftsourceip=%config
    leftid=vpnsecure
    leftauth=eap-mschapv2
    eap_identity=%identity

Starten Sie nun den StrongSwan VPN-Dienst mit dem folgenden Befehl:

systemctl start strongswan-starter

Überprüfen Sie als Nächstes den VPN-Verbindungsstatus mit dem folgenden Befehl:

ipsec status

Sie sollten die folgende Ausgabe erhalten:

Security Associations (1 up, 0 connecting):
ipsec-ikev2-vpn-client[1]: ESTABLISHED 28 seconds ago, 104.245.32.158[vpnsecure]...104.245.33.84[vpn.domain.com]
ipsec-ikev2-vpn-client{1}: INSTALLED, TUNNEL, reqid 1, ESP in UDP SPIs: ca6f451c_i ca9f9ff7_o
ipsec-ikev2-vpn-client{1}: 10.10.10.1/32 === 0.0.0.0/0

Die obige Ausgabe zeigt an, dass eine VPN-Verbindung zwischen Client und Server hergestellt wird und die IP-Adresse 10.10.10.1 dem Client-Rechner zugewiesen wird.

Sie können Ihre neue IP-Adresse auch mit dem folgenden Befehl überprüfen:

ip a

Sie sollten die folgende Ausgabe erhalten:

eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:00:68:f5:20:9e brd ff:ff:ff:ff:ff:ff
inet 104.245.32.158/25 brd 104.245.32.255 scope global eth0
valid_lft forever preferred_lft forever
inet 10.10.10.1/32 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::200:68ff:fef5:209e/64 scope link
valid_lft forever preferred_lft forever

Schlussfolgerung

In der obigen Anleitung haben wir gelernt, wie man einen StrongSwan-VPN-Server und -Client unter Ubuntu 20.04 einrichtet. Sie können jetzt Ihre Identität schützen und Ihre Online-Aktivitäten sichern.


Ubuntu
  1. So installieren und konfigurieren Sie Redis unter Ubuntu 18.04

  2. So installieren und konfigurieren Sie Redmine unter Ubuntu 18.04

  3. Installieren und konfigurieren Sie PHP OPcache auf Ubuntu 20.04

  4. So installieren und konfigurieren Sie den Algo VPN-Server unter Ubuntu 20.04

  5. So installieren und konfigurieren Sie strongSwan VPN unter Ubuntu 18.04

Installieren und konfigurieren Sie Git unter Ubuntu 16.04

Installieren und konfigurieren Sie den VNC-Server unter Ubuntu 16.04

Installieren und konfigurieren Sie VNC unter Ubuntu 20.04

So installieren und konfigurieren Sie Git unter Ubuntu 20.04

Installieren und konfigurieren Sie Fail2ban unter Ubuntu 20.04

So installieren und konfigurieren Sie OpenVAS 9 unter Ubuntu