Cara setting vpn l2tp/ipsec di centos 8
Ada beberapa protokol vpn di antara nya pptp, openvpn, sstp, l2tp dan wireguard. kali ini kita akan bahas untuk protokol l2tp dengan kombinasi ipsec. dengan ada nya kombinasi ipsec ini maka protokol l2tp nya akan di enkripsi.
pertama install dulu package nya.
yum install libreswan xl2tpd
kemudian buatlah sebuah configurasi untuk penamaan bebas, disini saya akan mencoba membuat config dengan nama :
conn L2TP-PSK-NAT
rightsubnet=vhost:%priv
also=L2TP-PSK-noNAT
conn L2TP-PSK-noNAT
authby=secret
pfs=no
auto=add
keyingtries=3
dpddelay=30
dpdtimeout=120
dpdaction=clear
rekey=yes
ikelifetime=8h
keylife=1h
type=transport
left=%defaultroute
leftprotoport=17/1701
right=%any
rightprotoport=17/%any
ikev2=never
ike=aes128-sha1-modp1024,aes256-sha1-modp2048
esp=aes128-sha1,aes256-sha1-modp4096
setelah itu tambahkan pre share key
192.168.10.100 %any: PSK "kodesecretanda"
silahkan ganti ip 192.168.10.100
dengan ip server anda.
net.ipv4.ip_forward = 1
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.all.rp_filter= 0
net.ipv4.conf.default.accept_redirects = 0
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.default.rp_filter= 0
setelah itu jalankan perintah untuk melakukan reload sysctl
sysctl -p
sampai disini jalankan service ipsec nya
service ipsec start
kemudian untuk mengecek apakah ipsec ini sudah berhasil atau tidak nya
ipsec verify
seharusnya keluar tampilan output seperti dibawah ini
Verifying installed system and configuration files
Version check and ipsec on-path [OK]
Libreswan 3.29 (netkey) on 4.18.0-193.14.2.el8_2.x86_64
Checking for IPsec support in kernel [OK]
NETKEY: Testing XFRM related proc values
ICMP default/send_redirects [OK]
ICMP default/accept_redirects [OK]
XFRM larval drop [OK]
Pluto ipsec.conf syntax [OK]
Checking rp_filter [OK]
Checking that pluto is running [OK]
Pluto listening for IKE on udp 500 [OK]
Pluto listening for IKE/NAT-T on udp 4500 [OK]
Pluto ipsec.secret syntax [OK]
Checking 'ip' command [OK]
Checking 'iptables' command [OK]
Checking 'prelink' command does not interfere with FIPS [OK]
Checking for obsolete ipsec.conf options [OK]
[global]
ipsec saref = yes
[lns default]
ip range = 10.11.11.2-10.11.11.100
local ip = 10.11.11.1
require chap = yes
refuse pap = yes
require authentication = yes
name = LinuxVPNserver
ppp debug = yes
pppoptfile = /etc/ppp/options.xl2tpd
length bit = yes
ipcp-accept-local
ipcp-accept-remote
ms-dns 8.8.8.8
ms-dns 4.2.2.4
noccp
auth
crtscts
idle 1800
mtu 1450
mru 1450
nodefaultroute
debug
lock
proxyarp
connect-delay 5000
kemudian edit credential username dan password
# Secrets for authentication using CHAP
# client server secret IP addresses
uservpn * passwordvpn *
setelah itu coba jalankan service xl2tpd nya :
service xl2tpd start
jangan lupa untuk allow protocol dan port di firewall nya, disini kita menggunakan firewalld di centos 8 / rocky linux
firewall-cmd --permanent --zone=public --add-service=ipsec
firewall-cmd --permanent --zone=public --add-port={4500,500}/udp
firewall-cmd --permanent --zone=public --add-protocol={50,51}
firewall-cmd --permanent --zone=public --add-port=1701/udp
firewall-cmd --permanent --zone=public --add-masquerade
firewall-cmd --reload
setelah itu mari kita coba testing menggunakan windows