Notifikasi PPPoE Menggunakan Proxy
Dalam mendistribusikan jaringan kita bisa menggunakan beberapa metode, seperti PPPoE, Hotspot, atau bisa langsung didistribusikan secara plain. Biasanya untuk layanan Internet yang berbayar karena membutuhkan manegement yang lebih metode yang digunakan adalah PPPoE atau Hotspot.
Pada artikel kali ini, kami akan membahas bagaimana cara membuat notifikasi client PPPOE yang sudah expired atau belum melakukan pembayaran. Yaitu dengan mengkombinasikan dengan fitur web proxy.
Contoh topologinya, sebuah router menggunakan service pppoe untuk terkoneksi ke client. Dan terdapat 2 user yang menggunakan layanan yang berbeda. User1 berlangganan 7 hari dan user2 berlangganan 30 hari.
Jika ternyata client sudah melebihi batas waktu langganan, maka internet akan diputus. Saat client mencoba terkoneksi lagi, maka akan terdapat notifikasi dari webproxy untuk melakukan pembayaran. Dan client tidak akan bisa mengakses internet sebelum membayar tagihan.
Untuk menentukan berapa lama client bisa mengakses internet, nantinya kita akan gunakan scheduler. Detail konfigurasinya seperti berikut :
PPPOE SERVER
Buat PPPOE Server menuju ke interface yang menuju ke client yaitu ether2.
Selanjutnya buka menu IP>Pool, tambahkan IP Pool yang akan digunakan untuk client. Akan terdapat 2 range IP yang akan digunakan client pppoe.
Pool pppoe-active=10.1.1.2-10.1.1.254
Pool pppoe-expired=10.1.2.1-10.1.2.254
Pool active untuk client yang boleh mengakses ke internet. Sedangkan pool expired digunakan untuk client yang tidak boleh mengakses internet dan akan mendapatkan notifikasi webproxy.
Selanjutnya, masuk ke PPP>Profiles untuk membuat profile baru. Tambahkan 2 profile untuk pppoe active dan pppoe expired. Local address adalah IP yang akan digunakan PPPOE Server saat terdapat client terkoneksi, kita isi 10.1.1.1.
Sedangkan Remote Address adalah IP yang akan diberikan ke client, pilih IP Pool yang sudah dibuat sebelumnya.
Untuk mempermudah, pada profile pppoe expired kita tambahkan address list baru. Agar setiap client yang terkoneksi menggunakan profile ini akan ditambahkan ke address-list secara otomatis.
Setelah pembuatan profile selesai, tambahkan user baru berdasarkan client yang dimiliki. Pilih profile pppoe active agar client bisa mengakses internet.
Web Proxy
Buka menu IP>Webproxy lalu aktifkan webproxy dengan mencentang Enabled.
Tambahkan rule baru pada ACCESS untuk client pppoe yang menggunakan pool IP pppoe-expired.
Tambahkan rule baru untuk memblokir semua client yang menggunakan IP 10.1.2.0/24 atau IP Pool PPPOE Expired. Saat client ingin mengakses ke internet (port 80) akan di deny, dan akan terdapat halaman Denied pada browser client.
Firewall NAT
Untuk memaksa client pppoe-expired menggunakan webproxy, kita tambahkan rule NAT baru dengan action Redirect. Buka menu Firewall>NAT lalu tambahkan baru dengan chain dst-nat.
Scr-address list bisa menggunakan pppoe-expired dengan action redirect. Parameter To-Ports pastikan sama dengan port webproxy sebelumnya, yaitu 8080.
Scheduler
Scheduler digunakan untuk menjalankan script secara berkala, berdasarkan berapa lama client berlangganan internet. Tambahkan rule baru yang akan berfungsi untuk merubah profile user dari pppoe-active menjadi pppoe-expired.
Sebagai contoh untuk user1, saat waktu 7 hari habis maka profile user1 akan berubah menjadi pppoe-expired. Dan client akan disconnect dari jaringan atau pppoe akan terputus.
Sedangkan user2, karena langganan 30 hari maka interval yang digunakan adalah 30d dengan script yang sama. Saat waktu habis, maka client akan terkoneksi menggunakan profile pppoe-expired.
Firewall Filter
Untuk mencegah user - user yang sudah expired masa langganannya mengakses service lain di internet selain http, perlu kita tambahkan rule drop untuk paket forward yang berasal dari user PPPoE expired pada Firewall Filter seperti berikut :
Hasil
Saat client menggunakan profile-active, bisa mengakses internet seperti biasa.
Tetapi jika profile di pindah ke pppoe-expired, client akan diblokir oleh webproxy dan tidak bisa mengakses internet sama sekali.
Artikel ini dibuat pada tanggal 19 Maret 2021
Sumber: https://citraweb.com/