Dalam pengelolaan server berbasis cPanel/WHM, keamanan jaringan menjadi salah satu aspek yang sangat penting. Salah satu metode yang sering digunakan administrator server untuk meningkatkan keamanan adalah membatasi akses port hanya untuk IP tertentu menggunakan firewall CSF (ConfigServer Security & Firewall).
Dengan konfigurasi ini, port tertentu tidak dapat diakses publik dan hanya IP yang diizinkan saja yang dapat melakukan koneksi. Metode ini sangat efektif untuk mengurangi risiko serangan brute force, scanning port, maupun akses tidak sah ke layanan server.
Artikel ini akan membahas cara setting port melalui firewall CSF agar hanya dapat diakses dari IP tertentu pada server cPanel/WHM lengkap dengan contoh konfigurasi, pengecekan, hingga troubleshooting.
Apa Itu CSF Firewall?
CSF atau ConfigServer Security & Firewall merupakan firewall populer pada server Linux yang banyak digunakan pada cPanel/WHM. Selain berfungsi sebagai firewall, CSF juga menyediakan fitur keamanan tambahan seperti:
- Login Failure Daemon (LFD)
- Proteksi brute force
- Blocking IP otomatis
- Port filtering
- Country blocking
- Connection tracking
CSF menjadi pilihan utama karena mudah dikonfigurasi dan terintegrasi langsung dengan WHM.
Kapan Perlu Membatasi Port Berdasarkan IP?
Beberapa kondisi yang umum menggunakan konfigurasi ini antara lain:
- Membatasi akses SSH hanya untuk IP kantor
- Mengamankan port database MySQL/MariaDB
- Membuka akses aplikasi internal hanya untuk developer tertentu
- Membatasi akses custom application port
- Mengamankan panel monitoring atau backup server
Sebagai contoh, port SSH sebaiknya tidak dibuka ke publik karena berpotensi menjadi target brute force maupun eksploitasi.
Cara Setting Port CSF Agar Hanya Bisa Diakses IP Tertentu
Setting port pada CSF agar hanya bisa diakses dari IP tertentu bisa dilakukan melalui dua cara yaitu ssh dan WHM. Berikut caranya :
Melalui SSH
1. Login ke Server melalui SSH
Login SSH ke server menggunakan user root. Cara loginnya bisa dilihat pada panduan Cara Login VPS Melalui Koneksi SSH
2. Edit File Konfigurasi CSF Allow
Buka file csf.allow menggunakan editor seperti nano atau vim
nano /etc/csf/csf.allow
3. Tambahkan Rule Port dan IP
Format konfigurasi:
tcp/udp|in/out|s/d=port,port,…|s/d=ip
Contoh rule untuk mengizinkan koneksi TCP masuk ke port 22 (SSH) hanya dari IP 192.168.1.10 :
tcp|in|d=22|s=192.168.1.10
Penjelasannya :
tcp : protocol TCP
in : koneksi masuk
d=22 : port tujuan 22
s=192.168.1.10 : hanya IP tersebut yang diizinkan

Contoh Konfigurasi Lain :
Membuka Port remote database Untuk Satu IP
tcp|in|d=3306|s=103.10.20.30
Membuka Port NodeJS 3000 Untuk Jaringan Kantor
tcp|in|d=3000|s=36.80.10.0/24
Membuka Port Remote MySQL Untuk Dua IP
tcp|in|d=3306|s=1.1.1.1
tcp|in|d=3306|s=2.2.2.2
4. Pastikan port yang dibatasi tidak di open di CSF
Caranya untuk case membatasi koneksi masuk ke port 22, pastikan port 22 sudah dihapus dari TCP_IN di file /etc/csf/csf.conf

Pada contoh diatas, port 22 masih masuk dalam Allow incoming TCP Ports, silahkan dihapus lebih dulu.
5. Restart CSF Firewall
Simpan konfigurasi yang sudah dibuat kemudian restart CSF menggunakan perintah :
csf -r
Melalui WHM
1. Login WHM
Login ke WHM mengikuti panduan Cara Login WHM Pada VPS cPanel
2. Masuk menu ConfigServer Security & Firewall
Setelah login WHM, kemudian masuk ke menu “WHM > Plugins > ConfigServer Security & Firewall”

3. Klik menu “Firewall Allow IPs”

4. Tambahkan Rule
Tambahkan rule Port dan IP yang digunakan. Untuk formatnya sama ketika menambahkan melalui ssh
tcp/udp|in/out|s/d=port,port,…|s/d=ip

Setelah menambahkan rule, scroll ke bawah dan klik tombol “Change”
5. Pastikan port tidak open di Firewall Configuration
Caranya masuk menu Firewall Configuration

Untuk case membatasi koneksi masuk ke port 22, hapus port 22 dari TCP_IN

Setelah port dihapus, scroll ke bawah dan klik tombol “Change”
6. Simpan dan restart csf
Simpan konfigurasi dengan klik tombol Change, kemudian klik tombol Restart csf+lfd

Cara Memastikan Port Tidak Terbuka Publik
Setelah rule firewall diterapkan, langkah berikutnya yang tidak kalah penting adalah memastikan bahwa port tersebut benar-benar hanya dapat diakses oleh IP yang telah diizinkan.
Proses verifikasi ini bertujuan untuk memastikan konfigurasi CSF berjalan dengan benar dan tidak ada celah keamanan yang menyebabkan port masih terbuka ke publik.
Terdapat beberapa metode yang dapat digunakan untuk melakukan pengujian akses port, mulai dari telnet, netcat (nc), hingga scanning menggunakan nmap.
Cara cek Menggunakan Telnet
Berikut perintah telnet untuk melakukan koneksi ke port 22
telnet ip-server 22
Berikut screenshot ketika tes menggunakan telnet dari ip yang di allow

Berikut screenshot ketika tes menggunakan telnet dari ip selain yang di allow

Cara cek Menggunakan Netcat (nc)
nc -zv ip-server 22
Berikut screenshot pengecekan port menggunakan Netcat

Dari screenshot diatas terlihat perbedaan antara koneksi yang berhasil (atas) dan gagal (bawah).
Scan Menggunakan Nmap
nmap -p 22 ip-server

Dari screenshot diatas terlihat perbedaan antara koneksi yang berhasil (atas) dan gagal (bawah).
Cara Menghapus Rule Firewall
Dalam beberapa kondisi, administrator server mungkin perlu menghapus rule firewall yang sebelumnya telah ditambahkan. Misalnya ketika:
- IP client sudah tidak digunakan
- Terjadi perubahan IP publik
- Port tidak lagi dipakai
- Ingin menutup kembali akses layanan tertentu
- Salah memasukkan rule firewall
Menghapus rule yang sudah tidak diperlukan sangat disarankan untuk menjaga konfigurasi firewall tetap rapi dan meminimalkan potensi celah keamanan pada server.
Sebelum menghapus rule, pastikan Anda tidak sedang terhubung menggunakan IP yang akan dihapus, terutama jika rule tersebut digunakan untuk akses SSH. Kesalahan penghapusan rule SSH dapat menyebabkan akses ke server terblokir.
Untuk keamanan tambahan, disarankan membuka session SSH cadangan sebelum melakukan perubahan firewall sehingga akses server tetap tersedia apabila terjadi kesalahan konfigurasi.
1. Edit kembali file:
nano /etc/csf/csf.allow
2. Hapus rule terkait
3. Restart CSF:
Restart CSF menggunakan perintah : csf -r
FAQ
Apakah konfigurasi ini aman?
Ya, karena hanya IP tertentu yang dapat mengakses port sehingga permukaan serangan menjadi lebih kecil.
Apakah bisa membuka akses untuk subnet?
Bisa menggunakan format CIDR seperti: 192.168.1.0/24
Apakah support IPv6?
Ya, CSF mendukung IPv6 dengan format rule IPv6.
Apakah perlu restart server?
Tidak perlu. Cukup restart layanan CSF menggunakan: csf -r
Kesimpulan
Membatasi akses port menggunakan firewall CSF berdasarkan IP tertentu merupakan salah satu langkah keamanan penting pada server cPanel/WHM. Selain membantu mengurangi risiko serangan dari internet publik, metode ini juga menjaga layanan sensitif seperti SSH, database, maupun aplikasi internal tetap aman.
Dengan konfigurasi yang tepat, administrator server dapat mengontrol siapa saja yang diperbolehkan mengakses layanan tertentu tanpa harus membuka port secara global ke internet.


