全部产品
Search
文档中心

Elastic Compute Service:Kelola Sistem Firewall pada Instans Linux

更新时间:Sep 22, 2025

Konfigurasi firewall yang salah sering kali menjadi penyebab layanan tidak dapat diakses dan kegagalan koneksi jarak jauh. Panduan ini menyediakan prosedur standar yang aman untuk mengelola sistem firewall operasi (OS) pada instans Linux. Anda akan mempelajari cara memeriksa status firewall, mengaktifkannya secara aman, membuka port layanan tertentu, serta menonaktifkannya sementara saat melakukan troubleshooting.

Cara kerja

Lalu lintas ke instans Elastic Compute Service (ECS) melewati dua lapisan penyaringan: pertama grup keamanan, kemudian sistem firewall tingkat OS. Agar lalu lintas dapat mencapai aplikasi, baik grup keamanan maupun sistem firewall harus mengizinkannya.

  • Grup keamanan (lapisan jaringan cloud)

    • Fungsi: Grup keamanan berfungsi sebagai firewall virtual untuk instans Anda, mengontrol traffic inbound dan outbound. Komponen ini beroperasi di luar sistem operasi dan berfungsi sebagai lapisan pertahanan pertama.

    • Logika: Jika aturan grup keamanan menolak lalu lintas pada port tertentu (seperti port 22 untuk SSH), permintaan akan ditolak sebelum mencapai OS instans.

  • Sistem firewall (lapisan instans)

    • Fungsi: Sistem firewall adalah perangkat lunak yang berjalan di dalam sistem operasi Linux, seperti firewalld atau ufw. Secara default, firewall ini dinonaktifkan. Komponen ini menyediakan lapisan kontrol kedua yang lebih rinci atas lalu lintas yang telah melewati grup keamanan.

    • Logika: Lalu lintas harus melewati grup keamanan sebelum sistem firewall. Keduanya merupakan checkpoint wajib, dan lalu lintas hanya akan mencapai aplikasi jika diizinkan oleh kedua lapisan ini

Petunjuk

Periksa status firewall

Sebelum melakukan perubahan apa pun, periksa status firewall saat ini.

Alibaba Cloud Linux, CentOS, atau Red Hat

Jalankan perintah berikut untuk memeriksa status layanan firewalld.

sudo firewall-cmd --state
  • not running: Firewall dinonaktifkan.

  • running: Firewall diaktifkan.

  • Jika muncul kesalahan command not found, firewalld tidak terinstal. Jalankan sudo yum install firewalld -y atau sudo dnf install firewalld -y untuk menginstalnya.

Ubuntu atau Debian

Jalankan perintah berikut untuk memeriksa status layanan ufw.

sudo ufw status
  • Status: active: Firewall diaktifkan.

  • Status: inactive: Firewall dinonaktifkan.

  • Pada sistem Debian, jika muncul kesalahan command not found, ufw tidak terinstal. Jalankan sudo apt update && sudo apt install ufw -y untuk menginstalnya untuk manajemen firewall yang lebih aman dan ramah pengguna.

Aktifkan firewall

Penting

Jangan pernah mengaktifkan firewall sebelum menambahkan aturan untuk mengizinkan akses jarak jauh. Hal ini dapat memutus koneksi Anda dan mengunci Anda dari instans. Selalu ikuti prinsip "izinkan dulu, baru aktifkan".

Alibaba Cloud Linux, CentOS, atau Red Hat

  1. Izinkan layanan SSH secara permanen. Ini mencegah sesi jarak jauh Anda terputus.

    sudo firewall-cmd --permanent --add-service=ssh
  2. Muat ulang firewall untuk menerapkan perubahan.

    sudo firewall-cmd --reload
  3. Mulai layanan firewall.

    sudo systemctl start firewalld
  4. (Opsional): Atur agar firewall otomatis aktif saat boot. Ini memastikan perlindungan tetap aktif setelah reboot.

    sudo systemctl enable firewalld

Ubuntu atau Debian

  1. Tambahkan aturan untuk mengizinkan semua koneksi SSH.

    sudo ufw allow ssh
  2. Aktifkan firewall. Saat diaktifkan, ufw akan secara otomatis memuat aturan allow yang ada dan secara default terkonfigurasi untuk mulai saat boot.

    sudo ufw enable

    Saat menjalankan perintah ini, sistem akan menampilkan peringatan bahwa operasi tersebut dapat mengganggu koneksi yang sedang berjalan. Masukkan y untuk mengonfirmasi. Karena Anda sudah mengizinkan SSH, koneksi Anda akan tetap aktif.

Buka port atau layanan tertentu

Alibaba Cloud Linux, CentOS, atau Red Hat

  1. Buka port atau layanan tertentu:

    • Dengan nama layanan (direkomendasikan):

      # Izinkan layanan HTTP dan HTTPS secara permanen
      sudo firewall-cmd --permanent --add-service=http
      sudo firewall-cmd --permanent --add-service=https
    • Dengan nomor port:

      # Izinkan port 8080/TCP  secara permanen
      sudo firewall-cmd --permanent --add-port=8080/tcp
  2. Terapkan aturan baru: Setelah menambahkan atau menghapus aturan, Anda harus memuat ulang firewall.

    sudo firewall-cmd --reload
  3. Verifikasi bahwa aturan sudah berlaku:

    Perintah ini menampilkan semua aturan di zona aktif, termasuk layanan, port, dan protokol.

    sudo firewall-cmd --list-all

Ubuntu atau Debian

Dengan ufw, aturan firewall langsung berlaku dan tersimpan secara otomatis.

  1. Buka port atau layanan tertentu:

    • Dengan nama layanan (direkomendasikan):

      # Izinkan layanan HTTP dan HTTPS
      sudo ufw allow http
      sudo ufw allow https
    • Dengan nomor port:

      # Izinkan port 3306/TCP
      sudo ufw allow 3306/tcp
  2. Verifikasi bahwa aturan sudah berlaku:

    Jalankan perintah berikut untuk melihat aturan yang aktif, termasuk layanan dan port yang diizinkan dan yang ditolak.

    sudo ufw status

Nonaktifkan firewall

Saat melakukan troubleshooting konektivitas jaringan, Anda dapat menonaktifkan firewall sementara untuk memastikan apakah aturannya memblokir lalu lintas.

Penting

Menonaktifkan firewall di lingkungan produksi sangat tidak disarankan. Anda harus mengaktifkannya kembali setelah pengujian selesai atau masalah teratasi.

CentOS, Red Hat, atau Alibaba Cloud Linux

sudo systemctl stop firewalld

Ubuntu atau Debian

sudo ufw disable

Pertimbangan lingkungan produksi

  • Praktik Terbaik

    • Prinsip hak istimewa minimal: Hanya buka port yang esensial untuk bisnis Anda. Untuk layanan inti seperti database, batasi akses hanya untuk alamat IP internal tepercaya dan jangan mengeksposnya ke internet publik.

    • Menjaga koneksi cadangan: Sebelum melakukan perubahan pada firewall yang signifikan, kami sarankan untuk membuat koneksi jarak jauh ke instans. Sesi yang aktif biasanya akan tetap berjalan saat firewall dimuat ulang, menyediakan saluran cadangan untuk memperbaiki kesalahan konfigurasi.

  • Pencegahan risiko

    • Logging dan monitoring: Audit log firewall secara berkala untuk mendeteksi upaya akses anomali.

      • firewalld: Log biasanya dikelola oleh journald. Gunakan sudo journalctl -u firewalld untuk melihatnya.

      • ufw: Log biasanya terletak di /var/log/ufw.log.

FAQ

  • Mengapa layanan saya masih tidak dapat diakses setelah firewall OS dinonaktifkan?

    Ini biasanya terjadi ketika Anda mengabaikan lapisan perlindungan pertama di lingkungan cloud. Lakukan troubleshooting dengan memeriksa komponen berikut secara berurutan:

    1. Periksa grup keamanan: Masuk ke Konsol ECS - Halaman Grup Keamanan, temukan grup keamanan yang terkait pada instans Anda, dan pastikan aturan inbound mengizinkan lalu lintas pada port layanan yang diperlukan dari IP sumber yang sesuai.

    2. Periksa status layanan listening: Di dalam instans, jalankan ss -tunlp | grep <Nomor Port> atau netstat -tunlp | grep <Nomor Port> untuk memastikan aplikasi Anda telah berhasil dimulai dan sedang listening pada alamat IP (seperti 0.0.0.0) dan port sesuai ekspektasi.

    3. Periksa jaringan ACL: Jika instans Anda terkait pada jaringan ACL, periksa aturannya untuk memastikan lalu lintas yang relevan diizinkan.

  • Apa yang harus saya lakukan jika saya mendapatkan kesalahan command not found?

    Kesalahan ini menandakan bahwa utilitas manajemen firewall yang sesuai belum terinstal.

    • Pada CentOS/Red Hat/Alibaba Cloud Linux, jalankan sudo yum install firewalld -y atau sudo dnf install firewalld -y.

    • Pada Ubuntu/Debian, jalankan sudo apt update && sudo apt install ufw -y.