GNU/Linux >> Znalost Linux >  >> Ubuntu

Nainstalujte a nakonfigurujte StrongSwan VPN na Ubuntu 20.04

Virtuální privátní síť se používá k vytvoření privátní sítě z veřejného internetového připojení k ochraně vaší identity. VPN používá k bezpečnému odesílání a přijímání dat šifrovaný tunel.

strongSwan je jeden z nejznámějších VPN softwaru, který podporuje různé operační systémy včetně Linuxu, OS X, FreeBSD, Windows, Android a iOS. Pro bezpečné navázání spojení používá protokoly IKEv1 a IKEv2. Jeho funkčnost můžete rozšířit pomocí vestavěných pluginů.

V tomto tutoriálu vysvětlíme krok za krokem pokyny, jak nastavit KEv2 VPN Server se StrongSwan na Ubuntu 20.04.

Předpoklad

• Dva systémy se serverem Ubuntu 20.04
• Na obou serverech je nakonfigurováno heslo uživatele root

Nainstalujte StrongSwan

Ve výchozím nastavení je StrongSwan k dispozici ve výchozím úložišti Ubuntu 20.04. Můžete jej nainstalovat s dalšími požadovanými součástmi pomocí následujícího příkazu:

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

Po instalaci všech balíčků můžete přistoupit ke generování certifikátu CA.

Vygenerujte certifikát pro server VPN

Dále budete muset vygenerovat certifikát a klíč pro server VPN, abyste ověřili pravost serveru na straně klienta.

Nejprve vytvořte soukromý klíč pro kořenovou certifikační autoritu pomocí následujícího příkazu:

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

Dále vytvořte kořenovou CA a podepište ji pomocí výše uvedeného klíče:

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

Dále vytvořte soukromý klíč pro server VPN pomocí následujícího příkazu:

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

Nakonec vygenerujte certifikát serveru pomocí následujícího příkazu:

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

V tomto okamžiku jsou všechny certifikáty připraveny pro server VPN.

Konfigurace StrongSwan VPN

Výchozí konfigurační soubor strongswanu je /etc/ipsec.conf. Můžeme zazálohovat hlavní konfigurační soubor a vytvořit nový soubor:

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

Dále vytvořte nový konfigurační soubor:

nano /etc/ipsec.conf

Přidejte následující nastavení konfigurace a připojení:

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

Uložte a zavřete soubor /etc/ipsec.conf.

Dále budete muset definovat přihlašovací údaje uživatele EAP a soukromé klíče RSA pro ověřování.

Můžete jej nastavit úpravou souboru /etc/ipsec.secrets:

nano /etc/ipsec.secrets

Přidejte následující řádek:

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

Poté restartujte službu StrongSwan následovně:

systemctl restart strongswan-starter

Chcete-li povolit spuštění aplikace StrongSwan při spouštění systému, zadejte:

systemctl enable strongswan-starter

Ověřte stav serveru VPN, zadejte:

systemctl status strongswan-starter

Povolit předávání paketů jádra

Dále budete muset nakonfigurovat jádro tak, aby umožňovalo předávání paketů úpravou souboru /etc/sysctl.conf:

nano /etc/sysctl.conf

Odkomentujte následující řádky:

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

Uložte a zavřete soubor a poté znovu načtěte nová nastavení pomocí následujícího příkazu:

sysctl -p

Nainstalujte a nakonfigurujte klienta StrongSwan

V této části nainstalujeme klienta StrongSwan na vzdálený počítač a připojíme se k serveru VPN.

Nejprve nainstalujte všechny požadované balíčky pomocí následujícího příkazu:

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

Jakmile jsou všechny balíčky nainstalovány, zastavte službu StrongSwan následujícím příkazem:

systemctl stop strongswan-starter

Dále budete muset zkopírovat soubor ca.cert.pem ze serveru VPN do adresáře /etc/ipsec.d/cacerts/. Můžete jej zkopírovat pomocí příkazu SCP, jak je znázorněno níže:

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

Chcete-li nastavit ověřování klienta VPN, použijte soubor /etc/ipsec.secrets:

nano /etc/ipsec.secrets

Přidejte následující řádek:

vpnsecure : EAP "password"

Poté upravte hlavní konfigurační soubor strongSwan:

nano /etc/ipsec.conf

Přidejte následující řádky, které odpovídají vaší doméně, heslu, které jste zadali v souboru /etc/ipsec.secrets.

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

Nyní spusťte službu StrongSwan VPN pomocí následujícího příkazu:

systemctl start strongswan-starter

Dále ověřte stav připojení VPN pomocí následujícího příkazu:

ipsec status

Měli byste získat následující výstup:

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

Výše uvedený výstup znamená, že mezi klientem a serverem je navázáno připojení VPN a klientskému počítači je přiřazena adresa IP 10.10.10.1.

Svou novou IP adresu můžete také ověřit pomocí následujícího příkazu:

ip a

Měli byste získat následující výstup:

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

Závěr

Ve výše uvedené příručce jsme se naučili, jak nastavit server a klienta StrongSwan VPN na Ubuntu 20.04. Nyní můžete chránit svou identitu a zabezpečit své online aktivity.


Ubuntu
  1. Nainstalujte a nakonfigurujte PHP OPcache na Ubuntu 20.04

  2. Jak nainstalovat a nakonfigurovat Algo VPN Server na Ubuntu 20.04

  3. Jak nainstalovat a nakonfigurovat strongSwan VPN na Ubuntu 18.04

  1. Jak nainstalovat a nakonfigurovat Redis na Ubuntu 18.04

  2. Jak nainstalovat a nakonfigurovat Redmine na Ubuntu 18.04

  3. Jak nainstalovat a nakonfigurovat Sambu na Ubuntu 18.04

  1. Jak nainstalovat a nakonfigurovat Redis na Ubuntu 20.04

  2. Jak nainstalovat a nakonfigurovat Jenkins na Ubuntu 20.04

  3. Jak nainstalovat a nakonfigurovat Askbot na Ubuntu 16.04