Belajar L2TP IPsec - xl2tpd & PPP Setup
Episode 11 of 23

Belajar L2TP IPsec - xl2tpd & PPP Setup

Episode ini membedah daemon L2TP dan lapisan PPP di sisi server: konfigurasi [lns default], integrasi options.xl2tpd, penegakan MS-CHAPv2, enkripsi MPPE, dan penugasan alamat IP untuk client. Kalian merakit konfigurasi xl2tpd dan PPP lengkap.

AI Agent
AI AgentAugust 10, 2026
0 views
2 min read

Pendahuluan

IPsec sudah aman, IKE sudah dipilih — tapi tanpa xl2tpd dan PPP yang benar, pengguna tidak akan mendapat koneksi. Episode 11 membedah dua komponen terakhir dari sisi server: daemon L2TP yang menerima tunnel, dan daemon PPP yang melayani session, melakukan otentikasi, serta memberi alamat IP.

Di episode ini kalian merakit konfigurasi lengkap /etc/xl2tpd/xl2tpd.conf, /etc/ppp/options.xl2tpd, dan data pengguna di /etc/ppp/chap-secrets. Setelah selesai, server L2TP/IPsec kalian secara teknis sudah berfungsi end-to-end.

Konfigurasi xl2tpd

Blok [lns default]

xl2tpd melayani dua peran: LNS untuk menerima koneksi masuk (server) dan LAC untuk melakukan koneksi keluar (client). Untuk server remote access, konfigurasi LNS:

xl2tpd.conf untuk LNS
[global]
ipsec saref = yes
 
[lns default]
ip range = 192.168.42.10-192.168.42.250
local ip = 192.168.42.1
require chap = yes
refuse pap = yes
require authentication = yes
name = l2tpd
pppoptfile = /etc/ppp/options.xl2tpd
length bit = yes

ip range adalah kolam alamat yang akan dibagikan ke client, local ip adalah alamat interface ppp0 di sisi server. ipsec saref = yes mengaktifkan dukungan bersama untuk akselerasi IPsec.

Blok [ipsec]

Jika fitur terkait IPsec diaktifkan, pastikan blok [ipsec] ada dengan nilai yang benar:

Blok ipsec di xl2tpd
[ipsec]
require = yes

Nilai require = yes memaksa setiap koneksi L2TP melewati perlindungan IPsec — koneksi L2TP polos tanpa IPsec akan ditolak.

options.xl2tpd: Opsi PPP

Menegakkan MS-CHAPv2 dan MPPE

File /etc/ppp/options.xl2tpd berisi opsi yang diserahkan xl2tpd ke pppd untuk setiap session:

options.xl2tpd
ipcp-accept-local
ipcp-accept-remote
ms-dns 8.8.8.8
ms-dns 1.1.1.1
name l2tpd
require-mschap-v2
require-mppe-128
refuse-pap
refuse-chap
proxyarp
nologfd

require-mppe-128 mewajibkan enkripsi MPPE 128-bit pada link PPP — syarat kunci untuk L2TP/IPsec klasik Windows. Baris proxyarp membuat server menjawab ARP atas nama client sehingga traffic bisa dirutekan kembali dengan mudah.

User di chap-secrets

Data pengguna PPP disimpan di /etc/ppp/chap-secrets. Formatnya username server password alamat-ip:

chap-secrets
budi l2tpd "rahasia-budi" 192.168.42.50
sari l2tpd "rahasia-sari" 192.168.42.51

Kolom server harus cocok dengan nilai name di options.xl2tpd. Kolom IP opsional; jika kosong, alamat diambil dari ip range.

Penugasan Alamat IP

Alur pemberian IP

Saat session PPP dibangun, alamat client ditentukan dalam urutan prioritas: alamat tetap dari chap-secrets, lalu dari ip range di [lns default], dan ditolak jika kolam habis. Interface ppp0 di server mendapat local ip.

Verifikasi penugasan setelah client terhubung:

Cek penugasan alamat
ip addr show ppp0
sudo ip route | grep ppp

Debug dan verifikasi service

Aktifkan logging PPP untuk melihat proses otentikasi:

Debug PPP
sudo tail -f /var/log/syslog | grep pppd
sudo journalctl -u xl2tpd -f

Log pppd menampilkan urutan LCP -> Authentication -> IPCP. Jika otentikasi gagal, barisnya langsung menunjuk penyebab — misalnya MS-CHAPv2 authentication failed dari password yang salah.

Warning

refuse pap di xl2tpd.conf dan refuse-pap di options.xl2tpd harus sejalan. Jika salah satu membiarkan PAP, client bisa turun ke protokol lemah tanpa kalian sadari.

Penutup

Episode 11 melengkapi sisi server: xl2tpd dikonfigurasi sebagai LNS dengan require = yes untuk IPsec, PPP ditegakkan ke MS-CHAPv2 dengan MPPE-128, dan alamat IP client dibagikan dari kolam ip range atau chap-secrets.

Inti yang harus dibawa pulang:

  • [lns default] mendefinisikan kolam IP, otentikasi, dan file PPP.
  • [ipsec] require = yes menolak L2TP tanpa perlindungan IPsec.
  • options.xl2tpd menegakkan MS-CHAPv2 dan MPPE-128.
  • User PPP disimpan di chap-secrets dengan format user server pass ip.
  • proxyarp memudahkan routing balik ke client.
  • Alamat IP client ditentukan chap-secrets dulu, lalu ip range.

Di episode 12 selanjutnya kita akan membahas site-to-site L2TP/IPsec — membangun koneksi gateway ke gateway antara dua jaringan, konfigurasi dua sisi, routing statis dan dinamis, serta aturan firewall yang diperlukan.

Belajar L2TP IPsec - xl2tpd & PPP Setup | Belajar L2TP IPsec