Beranda VPSCara Setting Firewall VPS: UFW, Firewalld, Allow Port, dan Allow Service untuk IP Tertentu

Cara Setting Firewall VPS: UFW, Firewalld, Allow Port, dan Allow Service untuk IP Tertentu

Terakhir diperbarui pada 10 September 2026

Panduan ini menjelaskan prosedur untuk mengonfigurasi firewall pada Virtual Private Server (VPS) melalui utilitas Uncomplicated Firewall (UFW) dan Firewalld. Pengaturan firewall yang tepat sangat bermanfaat untuk melindungi server dari akses tidak sah, menyaring lalu lintas jaringan masuk dan keluar, serta membatasi akses port atau layanan tertentu hanya untuk alamat IP yang terpercaya.

I. Persiapan Awal dan Akses Terminal Server

Sebelum melakukan konfigurasi firewall, Anda harus terhubung ke VPS menggunakan akses SSH dan menyiapkan direktori kerja pendukung.

Buka aplikasi terminal atau SSH client pada komputer Anda, lalu jalankan perintah berikut untuk masuk ke server sebagai akun root atau pengguna dengan hak akses sudo:

ssh username@alamat_ip_vps

Hasil yang diharapkan: Sesi terminal terhubung ke VPS dan menampilkan prompt baris perintah (command line).

II. Konfigurasi Firewall Menggunakan UFW (Ubuntu / Debian)

UFW (Uncomplicated Firewall) adalah antarmuka manajemen firewall bawaan yang populer pada sistem operasi Ubuntu dan Debian karena kemudahan penggunaan perintahnya.

  1. Memeriksa Status UFW
    Periksa apakah UFW sudah aktif pada sistem Anda dengan menjalankan perintah:
    sudo ufw status verbose
    

    Hasil yang diharapkan: Terminal menampilkan status Status: inactive atau Status: active beserta daftar aturan yang sedang berjalan.
  2. Mengizinkan Akses SSH Terlebih Dahulu
    Sebelum mengaktifkan UFW, pastikan Anda telah mengizinkan koneksi SSH agar sesi terminal Anda tidak terputus secara tidak terduga:
    sudo ufw allow 22/tcp
    

    Hasil yang diharapkan: Terminal menampilkan pesan Rules updated.
  3. Mengizinkan Port dan Layanan Publik (Allow Port & Service)
    Buka port untuk lalu lintas web standar HTTP (80) dan HTTPS (443), atau gunakan nama layanannya secara langsung:
    sudo ufw allow 80/tcp
    sudo ufw allow https
    

    Hasil yang diharapkan: Aturan baru ditambahkan untuk menerima lalu lintas lalu lintas masuk pada port 80 dan layanan HTTPS.
  4. Mengizinkan Akses Port Khusus untuk Alamat IP Tertentu
    Untuk membatasi akses ke port sensitif (misalnya port basis data MySQL 3306 atau SSH 22) hanya dari alamat IP tertentu (contoh: 192.168.1.50), jalankan perintah:
    sudo ufw allow from 192.168.1.50 to any port 3306 proto tcp
    

    Hasil yang diharapkan: Hanya perangkat dengan alamat IP 192.168.1.50 yang diizinkan terhubung ke port 3306/tcp.
  5. Mengizinkan Seluruh Akses Layanan dari Alamat IP Tertentu
    Jika Anda ingin mengizinkan suatu IP tepercaya mengakses seluruh port dan layanan pada VPS Anda, gunakan perintah:
    sudo ufw allow from 192.168.1.50
    
  6. Mengaktifkan Firewall UFW
    Jalankan perintah berikut untuk mengaktifkan seluruh aturan yang telah dibuat:
    sudo ufw enable
    

    Ketik y saat muncul konfirmasi. Hasil yang diharapkan: Pesan Firewall is active and enabled on system startup akan muncul di layar.

III. Konfigurasi Firewall Menggunakan Firewalld (CentOS / AlmaLinux / RHEL)

Firewalld adalah alat manajemen firewall dinamis yang menjadi standar pada distribusi berbasis RHEL seperti CentOS, AlmaLinux, dan Rocky Linux.

  1. Memeriksa Status dan Memulai Layanan Firewalld
    Pastikan layanan Firewalld berjalan pada VPS Anda menggunakan perintah:
    sudo systemctl status firewalld
    sudo systemctl start firewalld
    sudo systemctl enable firewalld
    

    Hasil yang diharapkan: Layanan Firewalld berstatus active (running).
  2. Mengizinkan Port dan Layanan Publik (Allow Port & Service)
    Tambahkan layanan HTTP dan port kustom secara permanen ke dalam zona standar (public):
    sudo firewall-cmd --permanent --add-service=http
    sudo firewall-cmd --permanent --add-port=8080/tcp
    

    Hasil yang diharapkan: Terminal mengembalikan respons success.
  3. Mengizinkan Akses Port atau Layanan untuk IP Tertentu (Rich Rules)
    Gunakan fitur Rich Rules pada Firewalld untuk membuka port spesifik (misalnya port SSH 22) khusus untuk alamat IP tertentu (contoh: 203.0.113.25):
    sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="203.0.113.25" port protocol="tcp" port="22" accept'
    

    Hasil yang diharapkan: Terminal mengembalikan respons success yang menandakan aturan khusus IP telah terdaftar.
  4. Mengizinkan Seluruh Akses dari IP Tertentu ke Zona Khusus (Trusted Zone)
    Cara lain yang lebih praktis untuk memberikan akses penuh pada IP terpercaya adalah dengan memasukannya ke zona trusted:
    sudo firewall-cmd --permanent --zone=trusted --add-source=203.0.113.25
    
  5. Menerapkan Ulang Konfigurasi (Reload Firewalld)
    Setiap perubahan dengan opsi --permanent harus dimuat ulang agar aturan baru langsung aktif:
    sudo firewall-cmd --reload
    

    Hasil yang diharapkan: Terminal menampilkan pesan success dan aturan baru langsung diterapkan pada sistem.

IV. Verifikasi dan Pengujian Aturan Firewall

Setelah aturan dikonfigurasi, lakukan pemeriksaan akhir untuk memastikan seluruh parameter telah diterapkan sesuai kebutuhan.

  1. Memeriksa Daftar Aturan Aktif pada UFW
    Jalankan perintah berikut jika Anda menggunakan UFW:
    sudo ufw status numbered
    

    Hasil yang diharapkan: Seluruh aturan ditampilkan beserta nomor urutnya untuk memudahkan pengelolaan atau penghapusan aturan di kemudian hari.
  2. Memeriksa Daftar Aturan Aktif pada Firewalld
    Jalankan perintah berikut jika Anda menggunakan Firewalld:
    sudo firewall-cmd --list-all
    

    Hasil yang diharapkan: Antarmuka menampilkan daftar layanan (services), port, dan rich rules yang sedang aktif pada zona utama.

Hal Penting yang Perlu Diperhatikan

  • Peringatan Terkunci dari Server (SSH Lockout): Risiko terbesar saat mengonfigurasi firewall adalah terputus dari akses SSH. Selalu pastikan port SSH (port default 22 atau port kustom Anda) telah diizinkan sebelum mengaktifkan UFW atau Firewalld.
  • Jangan Mengaktifkan Dua Firewall Sekaligus: Hindari menjalankan UFW dan Firewalld secara bersamaan pada satu VPS karena dapat menyebabkan konflik aturan jaringan. Gunakan UFW untuk Ubuntu/Debian dan Firewalld untuk CentOS/RHEL/AlmaLinux.
  • Perubahan Alamat IP Dinamis (Common Mistake): Jika Anda mengonfigurasi pembatasan port khusus untuk IP tertentu (Allow IP), pastikan IP koneksi internet Anda bersifat statis. Jika IP publik Anda berubah (dinamis), Anda akan kehilangan akses ke port tersebut.
  • Pembersihan Aturan Lama (Maintenance Tip): Hapus aturan port yang sudah tidak digunakan secara berkala untuk menjaga performa filter jaringan dan meminimalkan celah keamanan. Pada UFW gunakan sudo ufw delete [nomor_aturan], sedangkan pada Firewalld gunakan opsi --remove-port atau --remove-service.