Installasi VPN Server menggunakan PPTP di Ubuntu
VPN Overview
Virtual Private Network atau VPN adalah service atau layanan yang digunakan untuk menghubungkan device/perangkat ke tempat lain secara terenkripsi dengan memanfaatkan jaringan internet.
Fungsi VPN diantara nya :
- Menyembunyikan atau mengubah alamat IP.
- Menyembunyikan aktivitas sehingga pengguna lain tidak dapat memantau.
- Memungkinkan pengguna menjadi anonim.
- Melindungi aktivitas dari Wifi Public.
Point to Point Tunneling Protocol (PPTP)
Salah satu metode dalam mengimplementasikan jaringan private ini adalah dengan menggunakan PPTP. Protocol ini pertama kali dikembangkan oleh Microsoft dan Cisco dan berjalan pada Port 1723 TCP dan menggunakan IP Protocol Gre/47 untuk enkapsulasi nya.
Kita juga bisa menerapkan beberapa proses authentikasi untuk kemanan nya seperti pap,chap,mschap,mschap2. Kemudian setelah tunnel terbentuk data yang ditransmisikan akan dienkripsi dengan menggunakan Microsoft-Point-to-Point-Encryption (MPPE).
Requirement :
- Linux Debian Based (Disini saya menggunakan Ubuntu 18.04 yang diinstal pada AWS).
- End Device untuk client.
- Jaringan Internet.
- Open Inbound Port PPTP.
- Segelas kopi (opsional).
Oke kita langsung masuk saja ke tutorial installasi nya.
Topologi
Disini saya memiliki Server Ubuntu yang telah diinstall di AWS dan Server SUSE yang akan digunakan untuk verifikasi client. Nantinya kita akan mencoba melakukan komunikasi ke IP Local SUSE tersebut.
- Update dan perbarui informasi dari repository kalian.
ubuntu@ip-172-31-91-53:~$ sudo apt update && sudo apt upgrade
- Install paket pptpd tersebut
ubuntu@ip-172-31-91-53:~$ sudo apt install pptpd -y
- Edit pada file /etc/ppp/pptpd-options kemudian tambahkan DNS yang akan digunakan untuk PPTP-client. Disini saya menggunakan Open DNS, Kalian bisa set DNS sesuai kebutuhan.
ms-dns 8.8.8.8 ms-dns 8.8.4.4
- Tambahkan cradentials untuk user pptp client
# Secrets for authentication using CHAP # client server secret IP addresses user1 pptpd ini-password *
- Selanjutnya kita akan set alokasi IP Address untuk PPTP-Client edit pada file /etc/pptpd.conf
ubuntu@ip-172-31-91-53:~$ sudo nano /etc/pptpd.conf
- Tambahkan IP address yang akan digunakan
localip 100.100.100.1 remoteip 100.100.100.2-10
- Aktifkan IP Forwading pada file /etc/sysctl.conf
ubuntu@ip-172-31-91-53:~$ sudo nano /etc/sysctl.conf
- Hapus tanda # pada file tersebut.
net.ipv4.ip_forward=1
- Selanjutnya Load settingan tersebut dengan perintah berikut.
ubuntu@ip-172-31-91-53:~$ sudo sysctl -p net.ipv4.ip_forward = 1
- Buat firewall untuk mentranslasikan IP Local tersebut
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
- Aktifkan Service pptpd, Kemudian buat agar service tersebut auto start ketika server di reboot.
ubuntu@ip-172-31-91-53:~$ sudo systemctl start pptpd ubuntu@ip-172-31-91-53:~$ sudo systemctl enable pptpd Synchronizing state of pptpd.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable pptpd ubuntu@ip-172-31-91-53:~$
- Untuk mengecek status dari service pptp tersebut kita dapat menggunakan perintah berikut. Make sure bahwa status nya telah aktif.
ubuntu@ip-172-31-91-53:~$ sudo systemctl status pptpd ● pptpd.service - PoPToP Point to Point Tunneling Server Loaded: loaded (/lib/systemd/system/pptpd.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2020-11-09 07:38:23 UTC; 49min ago Docs: man:pptpd(8) man:pptpctrl(8) man:pptpd.conf(5) Main PID: 24695 (pptpd) Tasks: 1 (limit: 1140) CGroup: /system.slice/pptpd.service └─24695 /usr/sbin/pptpd --fg Nov 09 07:38:23 ip-172-31-91-53 systemd[1]: Started PoPToP Point to Point Tunneling Serv Nov 09 07:38:23 ip-172-31-91-53 pptpd[24695]: MGR: Manager process started Nov 09 07:38:23 ip-172-31-91-53 pptpd[24695]: MGR: Maximum of 100 connections available lines 1-14/14 (END)
Setup PPTP-client Linux.
Selanjutnya kita akan set up PPTP-Client, Disini saya menggunakan linux OpenSUSE dan juga Menggunakan Handphone untuk digunakan sebagai PPTP-Client nya.
- Tambahkan connections baru dengan klik menu + dibawah.
- Kemudian Pilih VPN Connections Point-to-Point Tunneling kemudian klik Create.
- Masukan Cradentials dan arahakan Gateway ke IP Public Server.
- Kemudian Centang semua Parameter lalu klik OK.
- Selanjutnya klik Connect untuk terhubung ke Service VPN yang telah kita buat.
- Selanjutnya jika kita liha terbentuk interface tunnel tersebut dengan IP address yang telah kita arahkan sebelumnya.
- Selanjutnya pada AWS kita memiliki 1 mesin lagi yaitu SUSE linux, Disini kita akan mencoba untuk berkomunikasi dengan mesin tersebut, Tidak menggunakan IP public nya melainkan dengan IP Local nya yang terhubung VPC dengan Server Ubuntu kita.
- Disini saya mencoba mengirim paket ICMP ke SUSE linux tersebut, Dan juga saya mencoba untuk melihat route untuk mengirim paket ke youtube.com dan dapat kita lihat dia melewati route dari Gateway VPN Server.
Setup PPTP-client Mobile/Android
- Untuk terhubung ke VPN Server kita dengan menggunakan Mobile Device masuk ke menu Setting > VPN > Add. Kemudian tambahkan Cradentials dan Arahkan Server address ke IP Public Server.
- Selanjutnya kita aktifkan VPN tersebut dan pastikan status Connected.
- Selanjutnya disini saya mencoba untuk membuka Layanan youtube, Dan seolah2 Device tersebut berada di wilayah/zona server tersebut.
Sekian postingan kali ini, Semoga bermanfaat
Ciaoww
0 Comments