Instalasi VPN Server Menggunakan PPTPD di CentOS Linux

Instalasi VPN Server Menggunakan PPTPD di CentOS Linux

Virtual_Private_Network_overviewIlustrasi gambar di ambil dari wikipedia.org

Catatan kali ini adalah mengenai instalasi VPN server menggunakan PPTPD di CentOS Linux. VPN (Vritual Privat Network) sendiri dapat di jelaskan secara singkat sebagai koneksi jaringan privat yang di lewatkan melalui jaringan publik. Untuk referensi lebih lanjut mengenai PPTP dan VPN silahkan merujuk halaman berikut. Disini saya menggunakan distribusi CentOS Linux, secara umum konfigurasinya tidak akan berbeda apabila menggunakan distribusi lainya. Selanjutnya, karena paket pptpd tidak di ikut sertakan dalam paket repositori CentOS Linux, maka kita perlu mendownload nya secara manual dari sini

http://poptop.sourceforge.net/yum/stable/packages/pptpd-1.4.0-1.el6.x86_64.rpm

kemudian install paket pptpd yang sudah di download

/bin/rpm -ivh pptpd-1.4.0-1.el6.x86_64.rpm

File konfigurasi pptpd berada di /etc/pptpd.conf, pada file konfigurasi pptpd tambahkan baris berikut

localip 192.168.0.1
remoteip 192.168.0.2-100

local ip adalah alamat ip lokal server pptpd kita, sedangkan remote ip adalah alamat ip yang akan diberikan kepada client pptpd kita nantinya

Selanjutnya, buat username dan password yang nantinya akan digunakan untuk login ke server pptp dengan menambahkanya pada file /etc/ppp/chap-secrets seperti pada contoh berikut

# Secrets for authentication using CHAP
# client server secret IP addresses
####### system-config-network will overwrite this part!!! (begin) ##########
####### system-config-network will overwrite this part!!! (end) ############
contoh_user * contoh_password_user *

Konfigurasi DNS yang nantinya akan di berikan kepada client pptpd ada pada file /etc/ppp/options.pptpd, tambahkan alamat DNS sesuai dengan alamat DNS yang kita gunakan, seperti pada contoh berikut

ms-dns 10.10.10.10
ms-dns 10.11.12.13

Selanjutnya, aktifkan ip forward pada file /etc/sysctl.conf pada baris berikut

net.ipv4.ip_forward = 1

Kemudian tambahkan rules iptables NAT (sesuaikan pada bagian interface nya), rules untuk mengijinkan koneksi pptp dan rules agar client pptp bisa saling berkomunikasi dengan ip lain di jaringan kita

##NAT
-A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
##Allow pptp connection
-A INPUT -i eth0 -p tcp --dport 1723 -j ACCEPT
##Allow clients pptp to talk to each other
-A INPUT -i eth0 -p gre -j ACCEPT
-A FORWARD -i ppp+ -o eth0 -j ACCEPT
-A FORWARD -i eth0 -o ppp+ -j ACCEPT

Rules iptables di atas tidak bisa langsung copy paste jika anda menggunakan CentOS Linux, silahkan sesuaikan rules nya pada bagian nat (*nat) dan filteringnya (*filter)

Jalankan service pptpd

/sbin/service pptpd restart

Cek apakah service pptpd sudah sukses berjalan, apabila anda menemui output seperti di bawah berarti service pptpd sudah berhasil di jalankan

/bin/netstat -nat | grep -i 1723
tcp 0 0 0.0.0.0:1723 0.0.0.0:* LISTEN
tcp 0 0 10.13.254.90:1723 10.55.2.2:60127 ESTABLISHED

Catatan :
Jika client pptp menggunakan sistem operasi Linux, konfigurasi VPN client pada bagian Advanced silahkan aktifkan Use Point-to-Point encryption (MPPE), yang disebabkan karena secara default opsi require-mppe-128 pada pptpd aktif

Selesai.., selanjutnya tinggal uji coba dari client, selamat mencoba 🙂

Leave a Comment


NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>