
Kasus : Katakanlah basecamp suatu komunitas memberikan akses internet pada anggotanya secara gratis memakai Wifi. Masalahnya akses internet tidak jatuh dari langit. Sebelum membagikan internet kepada anggota via wifi di basecamp, pengurus komunitas harus mendapatkan koneksi dari ISP dengan cara membayar dan berlangganan. Apakah sesudah membayar dan berlangganan masalah akan beres? Belum tentu.
Satu, jika ISP menerapkan sensor, maka seluruh penggguna wifi se-basecamp juga ikut “menikmati” sensor. Dua, pun bila sensor itu diakali melalui VPN, maka biasanya pengguna wifi-lah yang harus mensetup VPN secara mandiri. Setup, install, dsb adalah hal rumit bagi awam sehingga menjadi sesuatu yang “kurang realistis” untuk diterapkan. Apa solusinya?
Jika di wireless router milik komunitas memiliki fungsi VPN, maka sensor/filtering milik ISP bisa ditembus oleh seluruh client tanpa repot. Dan sistem ini (wireless router sekaligus VPN) akan dijalankan di Raspberry Pi.
A. Perangkat yang Dibutuhkan
Pada tutorial ini menggunakan :
- Raspberry Pi model B,
- USB wifi adapter TP-Link TL-WN725N
B. Konfigurasi yang Diperlukan
Sebelum mengikuti tutorial ini, maka seluruh langkah dibawah harus sudah diselesaikan
- Mengonfigurasi PPTP VPN Client di Raspberry Pi
- Enable USB wireless adapter di Raspberry Pi
- Menggunakan Raspberry Pi sebagai Wifi Router
C. Eksekusi
Pada poin B.1 diatas, maka akses internet didapat dari eth0 (kabel) kemudian diteruskan ke ppp0 (VPN) sehingga Raspberry Po sebagai sebuah “pc” (bukan router) sudah akan terhubung ke internet melalui PPTP VPN.
- Internet —> eth0 —> VPN —> akses single user
Sebaliknya pada poin B.3, akses internet yang didapat dari eth0 dibagikan ulang kepada banyak user melalui Wifi, namun tidak melalui VPN.
- Internet —> eth0 —> wifi wlan0 —> akses multiple user
Sehingga yang harus dilakukan adalah “menggabungkan” keduanya. Dimana sebelum koneksi internet dibagikan pada user melalui Wifi, terlebih dulu sudah ditunnelkan lewat VPN.
- Internet —> eth0 —> VPN —> wifi wlan0 —> akses multiple user
Bagaimana caranya?
1. Flush dulu iptables yang sudah ada
sudo iptables --flush sudo iptables -L -n # cek iptables
2. Koneksikan Raspberry Pi ke VPN server
sudo pptpsetup --create <namavpnserver> --server <ipvpnserver> --username <usernamevpn> --password <passwordvpn> --encrypt --start
3. Rutekan traffic internet ke VPN
sudo route add -net "0.0.0.0/0" dev "ppp0"
4. Alirkan traffic dari VPN (ppp0) ke Wireless (wlan0)
sudo iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE sudo iptables -A FORWARD -i ppp0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT sudo iptables -A FORWARD -i wlan0 -o ppp0 -j ACCEPT sudo iptables-save
Selesai. Maka user yang mengakses internet lewat wifi, trafficnya sudah masuk di VPN tanpa perlu mensetup apa-apa lagi.