Konfiguracja L2TP/IPsec VPN – Kompletny przewodnik
Linux

Konfiguracja L2TP/IPsec VPN – Kompletny przewodnik

Konfiguracja L2TP/IPsec VPN – Kompletny przewodnik

L2TP/IPsec to popularny protokół VPN, który łączy Layer 2 Tunneling Protocol (L2TP) z IPsec w celu zapewnienia szyfrowania i ochrony danych. W tym poradniku skonfigurujemy serwer VPN L2TP/IPsec na systemie Linux, wykorzystując xl2tpd oraz strongSwan.

Dowiesz się:
Jak skonfigurować serwer L2TP/IPsec na Debian/Ubuntu
Jak ustawić klucze pre-shared key (PSK) lub certyfikaty
Jak skonfigurować klienta VPN


1. Instalacja wymaganych pakietów

📢 Na Debian/Ubuntu:

sudo apt update
sudo apt install strongswan xl2tpd ppp

📢 Na CentOS/RHEL:

sudo yum install strongswan xl2tpd ppp

📌 Sprawdzamy wersję IPsec:

ipsec --version

2. Konfiguracja IPsec (strongSwan)

📢 Edytujemy główny plik konfiguracyjny IPsec:

sudo nano /etc/ipsec.conf

📌 Dodajemy konfigurację:

config setup
    uniqueids=never 
    charondebug="ike 2, knl 2, cfg 2"

conn L2TP-IPsec
    authby=secret
    pfs=no
    auto=add
    keyexchange=ikev1
    ike=aes256-sha1-modp1024
    esp=aes256-sha1
    rekey=no
    left=%any
    leftid=YOUR_SERVER_IP
    leftfirewall=yes
    leftprotoport=17/1701
    right=%any
    rightprotoport=17/%any

📌 Podmieniamy YOUR_SERVER_IP na rzeczywisty adres IP serwera.

Konfiguracja L2TP/IPsec VPN – Kompletny przewodnik
Konfiguracja L2TP/IPsec VPN – Kompletny przewodnik

📢 Konfigurujemy klucz pre-shared key (PSK):

sudo nano /etc/ipsec.secrets

📌 Dodajemy linię:

YOUR_SERVER_IP %any: PSK "TWÓJ_SEKRETNY_KLUCZ"

📌 Restartujemy IPsec:

sudo systemctl restart strongswan
sudo systemctl enable strongswan

📌 Sprawdzamy status:

sudo ipsec status

3. Konfiguracja xl2tpd

📢 Edytujemy plik konfiguracyjny xl2tpd:

sudo nano /etc/xl2tpd/xl2tpd.conf

📌 Dodajemy konfigurację:

[global]
ipsec saref = yes

[lns default]
ip range = 192.168.100.10-192.168.100.100
local ip = 192.168.100.1
require chap = yes
refuse pap = yes
require authentication = yes
name = L2TP-VPN
pppoptfile = /etc/ppp/options.xl2tpd
length bit = yes

📌 Edytujemy opcje PPP:

sudo nano /etc/ppp/options.xl2tpd

📌 Dodajemy:

require-mschap-v2
ms-dns 8.8.8.8
ms-dns 8.8.4.4
asyncmap 0
auth
crtscts
lock
hide-password
modem
debug
proxyarp
lcp-echo-interval 30
lcp-echo-failure 4

📌 Dodajemy użytkownika:

sudo nano /etc/ppp/chap-secrets

📌 Wpisujemy:

vpnuser  L2TP-VPN  "haslo123"  *

📌 Restartujemy xl2tpd:

sudo systemctl restart xl2tpd
sudo systemctl enable xl2tpd

4. Ustawienie przekazywania pakietów i reguł iptables

📢 Włączamy przekazywanie IP:

echo "net.ipv4.ip_forward = 1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

📢 Konfigurujemy reguły iptables:

sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A INPUT -p udp --dport 500 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 4500 -j ACCEPT
sudo iptables -A INPUT -p udp --dport 1701 -m policy --dir in --pol ipsec -j ACCEPT
sudo iptables -A FORWARD -s 192.168.100.0/24 -j ACCEPT

📌 Zapisujemy reguły iptables:

sudo apt install iptables-persistent
sudo netfilter-persistent save

5. Konfiguracja klienta VPN (Linux)

📢 Edytujemy plik /etc/ipsec.conf na kliencie:

conn L2TP-IPsec
    auto=add
    keyexchange=ikev1
    authby=secret
    left=%defaultroute
    right=YOUR_SERVER_IP
    rightprotoport=17/1701
    ike=aes256-sha1-modp1024
    esp=aes256-sha1

📢 Dodajemy PSK do /etc/ipsec.secrets:

YOUR_SERVER_IP %any: PSK "TWÓJ_SEKRETNY_KLUCZ"

📢 Uruchamiamy IPsec:

sudo ipsec restart
sudo ipsec up L2TP-IPsec

📢 Uruchamiamy xl2tpd:

sudo systemctl start xl2tpd

6. Testowanie i monitorowanie połączenia

📌 Sprawdzamy status połączenia:

sudo ipsec status
sudo journalctl -u strongswan -f

📌 Pingujemy serwer:

ping 192.168.100.1

📌 Sprawdzamy interfejsy:

ip a

📌 Sprawdzamy logi:

sudo tail -f /var/log/syslog

7. Podsumowanie

L2TP/IPsec zapewnia stabilne i bezpieczne połączenie VPN
Łatwe zarządzanie użytkownikami i połączeniami
Kompatybilność z wieloma systemami operacyjnymi
Wysokie bezpieczeństwo dzięki szyfrowaniu IPsec

Czytaj  Konfiguracja tuneli VPN z wykorzystaniem QoS (Quality of Service)

🎯 Po zastosowaniu tego poradnika masz w pełni funkcjonalny serwer L2TP/IPsec VPN!

Polecane wpisy
Spectre i Meltdown (CVE-2017-5753, CVE-2017-5715, CVE-2017-5754)
Spectre i Meltdown (CVE-2017-5753, CVE-2017-5715, CVE-2017-5754)

W styczniu 2018 roku pojawiły się informacje o exploit-ach o nazwach Spectre i Meltdown, które dotknęły miliony systemów komputerowych na Czytaj dalej

Popularne usługi w Linuksie: Apache, MySQL i SSH – przewodnik z podstawową konfiguracją dla użytkowników
Popularne usługi w Linuksie: Apache, MySQL i SSH - przewodnik z podstawową konfiguracją dla użytkowników

Popularne usługi w Linuksie: Apache, MySQL i SSH - przewodnik z podstawową konfiguracją dla użytkowników Wprowadzenie Linux oferuje szeroki wachlarz Czytaj dalej