Belajar PPTP - Hardening (Jika Harus Dipertahankan)
Series/Belajar PPTP/Episode 15
Episode 15 of 23

Belajar PPTP - Hardening (Jika Harus Dipertahankan)

Episode ini membahas langkah hardening untuk server PPTP yang belum bisa dimatikan: memaksa MS-CHAPv2 dan MPPE 128-bit, membatasi akses firewall ke TCP 1723 dan GRE, isolasi jaringan dengan VLAN, serta monitoring. Episode ini juga menegaskan keterbatasan hardening.

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

Pendahuluan

Ada kalanya server PPTP belum bisa dimatikan — vendor lama masih bergantung padanya, atau migrasi butuh waktu. Dalam kondisi seperti itu, kalian harus melakukan yang terbaik yang bisa dilakukan. Episode 15 membahas hardening: menutup celah konfigurasi sebisa mungkin.

Tapi ada satu kalimat yang harus kalian ingat dari awal sampai akhir episode ini: hardening tidak menghilangkan kelemahan fundamental PPTP. Semua langkah di bawah adalah pengurangan risiko sementara, bukan solusi.

Baseline Autentikasi dan Enkripsi

Langkah pertama adalah memaksa konfigurasi paling ketat yang didukung PPTP. Di /etc/ppp/options.pptpd:

/etc/ppp/options.pptpd - hardening autentikasi
name pptpd
require-mschap-v2
require-mppe-128
refuse-pap
refuse-chap
refuse-eap
refuse-mschap
nobsdcomp

require-mschap-v2 dan require-mppe-128 memaksa semua klien memakai autentikasi dan enkripsi paling kuat yang dimiliki PPTP. refuse-pap, refuse-chap, refuse-mschap, dan refuse-eap menutup jalur alternatif yang lebih lemah. Setelah mengubah file ini, restart service dan verifikasi tidak ada klien yang masih memakai metode lama.

Kebijakan Password Kuat

Karena kunci MPPE diturunkan dari password, kebijakan password menjadi garis depan pertahanan. Wajibkan password panjang dan unik untuk setiap user, dan cabut akses user yang sudah tidak aktif.

Verifikasi Setelah Restart

Setelah restart service, pastikan klien yang terhubung benar-benar memakai MPPE 128-bit. Log pppd mencatat hasil negosiasi setiap sesi:

Verifikasi negosiasi MPPE di log
sudo journalctl -u pptpd | grep -i mppe

journalctl -u pptpd | grep -i mppe menampilkan baris negosiasi enkripsi untuk setiap sesi. Jika ada klien yang terhubung tanpa MPPE, segera periksa opsi klien dan kebijakan server — klien yang menolak MPPE harus ditolak masuk, bukan diturunkan keamanannya.

Firewall Rules

Membatasi Sumber Akses

Firewall harus hanya menerima koneksi dari alamat yang memang berhak terhubung:

Batasi akses ke TCP 1723 dan GRE
sudo iptables -A INPUT -p tcp --dport 1723 -s 203.0.113.0/24 -j ACCEPT
sudo iptables -A INPUT -p gre  -s 203.0.113.0/24 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 1723 -j DROP
sudo iptables -A INPUT -p gre  -j DROP

Empat aturan di atas mengizinkan TCP 1723 dan GRE hanya dari subnet 203.0.113.0/24, lalu menolak sisanya. iptables -A INPUT -p tcp --dport 1723 -s 203.0.113.0/24 -j ACCEPT adalah pola allowlist yang harus dipakai untuk kedua protocol sekaligus — jangan hanya TCP 1723.

Isolasi Jaringan

Segregasi dengan VLAN

Jika memungkinkan, tempatkan semua server PPTP di segmen jaringan khusus. Dengan VLAN isolasi, server PPTP dan klien-kliennya tidak bercampur dengan jaringan production utama.

Buat VLAN di interface server
sudo ip link add link eth0 name eth0.200 type vlan id 200
sudo ip addr add 10.10.20.1/24 dev eth0.200
sudo ip link set eth0.200 up

Contoh di atas membuat VLAN 200 dengan alamat 10.10.20.1/24. Konsepnya: semua traffic PPTP dikurung di VLAN ini, dan akses ke jaringan lain diatur dengan aturan routing dan firewall yang ketat.

Monitoring

Mencatat dan Memantau Sesi

Setiap sesi harus tercatat dan dipantau. Pastikan logwtmp aktif di pptpd.conf, dan pantau log secara rutin:

Pantau log autentikasi PPTP
sudo journalctl -u pptpd | grep -iE "auth|fail|error"

journalctl -u pptpd | grep -iE "auth|fail|error" membantu mendeteksi percobaan autentikasi yang mencurigakan. Kombinasikan dengan RADIUS accounting (episode 11) untuk mendapatkan catatan pemakaian yang lengkap.

Tanda-Tanda Serangan

Beberapa pola di log perlu diwaspadai: percobaan autentikasi dari banyak alamat IP dalam waktu singkat, banyak kegagalan dari satu sumber, dan lonjakan koneksi GRE tanpa sesi control yang sah. Pola-pola ini bisa jadi indikasi serangan brute-force atau eksploitasi.

Gunakan fail2ban atau log parser sederhana untuk memberi peringatan otomatis saat pola tersebut muncul. Ingat, deteksi hanya memperpendek waktu paparan — kelemahan fundamental tetap harus dijawab dengan migrasi, bukan sekadar monitoring.

Caveat: Hardening Bukan Solusi

Mengurangi, Bukan Menghilangkan Risiko

Harus dikatakan dengan jujur: tidak ada kombinasi konfigurasi di atas yang menghentikan serangan offline terhadap MS-CHAPv2 atau menghilangkan kelemahan RC4. Seorang penyerang yang bisa menyadap traffic tetap punya bahan untuk memecahkan kredensial.

Karena itu, jadikan hardening sebagai tindakan sementara. Mulai proses migrasi bersamaan dengan menerapkan langkah-langkah ini. Episodes 19 akan memberikan panduan migrasi yang terstruktur.

Penutup

Episode 15 memberikan daftar langkah hardening: baseline autentikasi dan enkripsi, firewall allowlist, isolasi VLAN, dan monitoring — dengan pengingat konstan bahwa semua ini hanya pengurangan risiko sementara.

Inti yang harus dibawa pulang:

  • Wajibkan require-mschap-v2 dan require-mppe-128 di options.pptpd.
  • Tutup metode autentikasi lemah dengan refuse-*.
  • Firewall harus membatasi TCP 1723 dan GRE hanya dari sumber yang diizinkan.
  • Isolasi server PPTP di VLAN khusus untuk membatasi jangkauan serangan.
  • Pantau log autentikasi dan percobaan yang mencurigakan secara rutin.
  • Hardening tidak menghilangkan kelemahan fundamental PPTP.

Di episode 16 selanjutnya kita akan membahas NAT traversal dan masalah firewall — kenapa GRE tidak ramah NAT, peran ALG di router, konfigurasi iptables dan nftables, serta pembatasan IP sumber.

Belajar PPTP - Hardening (Jika Harus Dipertahankan) | Belajar PPTP