Cara Memeriksa Port Terbuka di Linux: Panduan Lengkap 2026

Terminal Linux menampilkan port terbuka dengan perintah ss dan netstat

Mengetahui cara melihat port yang terbuka di Linux adalah skill dasar yang wajib dikuasai oleh siapa saja yang mengelola server, mendiagnosis masalah jaringan, atau memperkuat keamanan sistem. Port yang terbuka ibarat pintu masuk ke sistem kamu - dan kalau kamu tidak tahu pintu mana saja yang terbuka, kamu tidak bisa mengamankannya dengan benar. Baik kamu menjalankan web server di Ubuntu, mengelola VPS, maupun mencari tahu penyebab masalah konektivitas, melihat daftar port yang aktif akan memberikan gambaran jelas tentang apa yang sedang diekspos sistemmu ke jaringan. Panduan ini membahas empat metode praktis, cara memfilter hasilnya, dan cara menutup port yang tidak diperlukan.

Poin Utama:

  • Perintah ss adalah cara tercepat dan paling modern untuk melihat daftar port yang terbuka di Linux.
  • nmap memungkinkan kamu memindai port dari perspektif eksternal, sehingga kamu bisa melihat apa yang sebenarnya terlihat oleh penyerang.
  • Gunakan lsof untuk langsung mengidentifikasi proses mana yang menggunakan port tertentu.
  • Menutup port yang tidak diperlukan menggunakan ufw atau iptables adalah cara paling langsung untuk memperkecil attack surface.

Mengapa Memeriksa Port Terbuka di Linux Itu Penting

Setiap layanan yang berjalan di mesin Linux kamu akan mendengarkan pada satu atau beberapa port. SSH mendengarkan di port 22, HTTP di port 80, HTTPS di port 443. Namun setelah berbulan-bulan menginstal dan menghapus software, server sering kali berakhir dengan port yang terbuka tanpa ada yang sengaja mengonfigurasinya. Sebuah daemon database yang terlupakan dan mendengarkan di port 5432 tanpa aturan firewall adalah risiko nyata yang sudah terbukti menyebabkan kebocoran data.

Memeriksa port yang terbuka di Linux membantu kamu untuk:

  • Mengaudit layanan apa saja yang sebenarnya berjalan dan terekspos.
  • Mendiagnosis mengapa sebuah aplikasi tidak bisa terhubung ke layanan lain.
  • Memverifikasi bahwa aturan firewall berjalan sesuai harapan.
  • Mempersiapkan diri untuk audit keamanan atau penetration test.

Metode-metode di bawah ini mencakup inspeksi lokal (apa yang dilaporkan oleh mesin itu sendiri) maupun pemindaian eksternal (apa yang bisa dilihat oleh host jarak jauh). Kedua perspektif ini sama-sama penting.

Metode 1: Perintah ss (Modern, Direkomendasikan)

Perintah ss (socket statistics) menggantikan netstat pada sebagian besar distribusi Linux modern. Perintah ini lebih cepat, lebih detail, dan sudah termasuk dalam paket iproute2 yang tersedia secara default di Ubuntu, Debian, CentOS, dan Fedora.

Untuk melihat semua port yang terbuka beserta nama prosesnya, jalankan:

sudo ss -tulnp

Penjelasan flag:

  • -t - tampilkan socket TCP
  • -u - tampilkan socket UDP
  • -l - tampilkan hanya socket yang sedang listening
  • -n - tampilkan nomor port secara numerik, bukan nama layanan
  • -p - tampilkan proses yang menggunakan setiap socket

Contoh nyata: Pada server Ubuntu baru yang menjalankan Nginx dan PostgreSQL, outputnya mungkin terlihat seperti ini:

Netid  State   Recv-Q  Send-Q  Local Address:Port  Peer Address:Port  Process
tcp    LISTEN  0       128     0.0.0.0:80           0.0.0.0:*          users:(("nginx",pid=1234,fd=6))
tcp    LISTEN  0       128     127.0.0.1:5432       0.0.0.0:*          users:(("postgres",pid=5678,fd=5))
tcp    LISTEN  0       128     0.0.0.0:22           0.0.0.0:*          users:(("sshd",pid=910,fd=3))

Perhatikan bahwa PostgreSQL hanya terikat ke 127.0.0.1, yang berarti tidak bisa diakses dari luar. SSH dan Nginx terikat ke 0.0.0.0, artinya keduanya menerima koneksi dari IP mana pun. Satu output ini sudah memberikan banyak informasi tentang eksposur sistem kamu.

Untuk referensi lengkap semua opsi ss, lihat halaman man resmi ss.

Metode 2: Perintah netstat (Lama tapi Masih Umum Dipakai)

Perintah netstat merupakan bagian dari paket net-tools yang lebih lama. Perintah ini tidak lagi diinstal secara default di banyak distribusi, tetapi masih banyak digunakan dan tetap perlu diketahui - terutama saat bekerja pada sistem yang lebih lama.

Instal jika diperlukan:

sudo apt install net-tools   # Debian/Ubuntu
sudo yum install net-tools   # CentOS/RHEL

Untuk melihat daftar port yang terbuka di Linux menggunakan netstat:

sudo netstat -tulnp

Flag-nya memiliki arti yang sama persis dengan ss. Format outputnya sedikit berbeda, tetapi memberikan informasi inti yang sama: protokol, alamat lokal, port, dan proses yang memilikinya.

Satu keterbatasan praktis: pada server yang sangat sibuk dengan ribuan koneksi, netstat bisa terasa jauh lebih lambat dibanding ss. Untuk penggunaan sehari-hari di server biasa, perbedaannya tidak terlalu terasa.

Metode 3: Port Scan dengan nmap (Perspektif Eksternal)

Alat-alat di atas menunjukkan apa yang dilaporkan mesin kamu secara internal. nmap mengambil pendekatan berbeda - ia memindai port melalui jaringan, mensimulasikan apa yang akan dilihat oleh penyerang eksternal atau klien jarak jauh. Ini sangat penting karena firewall mungkin memblokir sebuah port yang masih ditampilkan sebagai listening oleh ss.

Instal nmap:

sudo apt install nmap   # Debian/Ubuntu
sudo yum install nmap   # CentOS/RHEL

Pindai server dari mesin lain di jaringan yang sama:

nmap -sT -p 1-1024 192.168.1.10

Untuk memindai 1000 port paling umum beserta deteksi versi layanan:

nmap -sV 192.168.1.10

Flag -sV mencoba mendeteksi versi software yang berjalan pada setiap port yang terbuka. Ini berguna untuk mengidentifikasi layanan yang sudah usang dan perlu diperbarui.

Penting: Jalankan nmap hanya pada server yang kamu miliki atau yang sudah kamu dapatkan izin eksplisit untuk dipindai. Memindai sistem milik pihak ketiga tanpa otorisasi bisa melanggar hukum di wilayah hukum kamu.

Jika kamu perlu memeriksa apakah port tertentu bisa diakses dari luar jaringan tanpa menginstal nmap, alat Port Checker gratis kami bisa melakukannya secara instan - tanpa instalasi, tanpa konfigurasi.

Metode 4: Perintah lsof (Pemetaan Proses ke Port)

Perintah lsof (list open files) memperlakukan socket jaringan sebagai file, yang sesuai dengan filosofi Linux "segalanya adalah file". Perintah ini sangat berguna ketika kamu perlu menjawab pertanyaan: "Proses mana yang menggunakan port 8080?"

Tampilkan semua koneksi jaringan:

sudo lsof -i

Cari proses yang menggunakan port tertentu (misalnya, port 3000):

sudo lsof -i :3000

Ini sangat praktis ketika aplikasi Node.js milik developer memblokir sebuah port dan kamu perlu mengidentifikasi serta menghentikan prosesnya sebelum me-restart layanan.

Cara Memfilter Hasil Berdasarkan Port, TCP, atau UDP

Output mentah dari semua alat ini bisa sangat banyak. Berikut pola filtering yang paling sering digunakan:

Tampilkan hanya port TCP yang sedang listening (ss):

sudo ss -tlnp

Tampilkan hanya port UDP (ss):

sudo ss -ulnp

Periksa apakah port tertentu terbuka (grep dengan ss):

sudo ss -tulnp | grep :443

Filter berdasarkan port dengan nmap:

nmap -p 80,443,8080 192.168.1.10

Pola-pola ini mencakup sebagian besar kebutuhan filtering sehari-hari. Untuk troubleshooting khusus HTTP di port 80, lihat Panduan Troubleshooting HTTP Port 80 kami.

Jika kamu menggunakan Windows dan membutuhkan panduan serupa, lihat Panduan Lengkap Memeriksa Port Terbuka di Windows 2026 kami.

Cara Menutup atau Memblokir Port dengan ufw atau iptables

Menemukan port terbuka yang tidak kamu butuhkan baru setengah pekerjaan. Berikut cara menutupnya menggunakan dua alat firewall Linux yang paling umum.

Menggunakan ufw (Uncomplicated Firewall) - Direkomendasikan untuk Ubuntu

Blokir traffic masuk di port 8080:

sudo ufw deny 8080/tcp

Izinkan hanya SSH dan HTTPS, tolak semua yang lain:

sudo ufw default deny incoming
sudo ufw allow 22/tcp
sudo ufw allow 443/tcp
sudo ufw enable

Periksa status firewall saat ini:

sudo ufw status verbose

Menggunakan iptables - Untuk Kontrol Lebih Lanjut

Tolak semua traffic masuk di port 3306 (MySQL):

sudo iptables -A INPUT -p tcp --dport 3306 -j DROP

Simpan aturan agar tetap berlaku setelah reboot:

sudo iptables-save | sudo tee /etc/iptables/rules.v4

Untuk referensi lebih mendalam tentang sintaks dan urutan aturan iptables, dokumentasi resmi Netfilter adalah sumber yang paling otoritatif.

Tips: Memblokir port dengan ufw atau iptables tidak menghentikan layanan yang berjalan - ini hanya mencegah koneksi eksternal mencapainya. Jika kamu ingin menghentikan layanan sepenuhnya, gunakan sudo systemctl stop servicename dan sudo systemctl disable servicename.

Kesimpulan

Memeriksa port yang terbuka di Linux tidak memerlukan alat yang rumit atau keahlian mendalam. Perintah ss memberikan tampilan lokal yang cepat dan andal. nmap menunjukkan apa yang bisa dijangkau dari luar. lsof menentukan proses mana yang memiliki sebuah port. Dan ufw atau iptables memungkinkan kamu menutup apa pun yang seharusnya tidak terekspos. Menjalankan pemeriksaan ini secara rutin - terutama setelah menginstal software baru atau mengubah konfigurasi jaringan - adalah salah satu kebiasaan paling sederhana yang bisa kamu bangun untuk menjaga keamanan server Linux kamu. Mulai sekarang dengan sudo ss -tulnp dan lihat apa yang sebenarnya sedang diekspos oleh servermu.

Alat Port Checker gratis - periksa apakah port terbuka di server Linux kamu secara instan

Periksa Port Mana Saja di Server Linux Kamu - Seketika

Tidak yakin apakah sebuah port benar-benar bisa diakses dari luar? Alat Port Checker gratis kami memindai server kamu dari perspektif eksternal dalam hitungan detik - tanpa instalasi, tanpa konfigurasi.

Coba Alat Port Checker Gratis Kami →

FAQ - Pertanyaan Umum

Jalankan sudo ss -tulnp di terminal kamu. Perintah ini menggunakan ss yang modern untuk menampilkan semua port TCP dan UDP yang sedang listening beserta nama prosesnya. Perintah ini lebih cepat dari netstat dan tersedia secara default di sebagian besar distribusi Linux saat ini, termasuk Ubuntu dan Debian.

Kedua perintah menampilkan port yang terbuka dan informasi socket, tetapi ss adalah pengganti modern untuk netstat. Perintah ini membaca data langsung dari kernel, sehingga lebih cepat dan lebih akurat pada sistem yang sibuk. netstat memerlukan paket net-tools yang terpisah, yang tidak lagi diinstal secara default di banyak distribusi.

Gunakan nmap -p PORT TARGET_IP dari mesin lain di jaringan. Untuk pemeriksaan eksternal cepat tanpa menginstal apa pun, gunakan alat port checker berbasis web. Pendekatan ini menguji apakah port bisa dijangkau dari luar, dengan mempertimbangkan aturan firewall yang tidak bisa tercermin oleh alat lokal seperti ss.

Gunakan sudo lsof -i :PORT atau sudo ss -tulnp | grep :PORT. Kedua perintah menampilkan nama proses dan PID yang terkait dengan port tersebut. Metode lsof sangat jelas karena menampilkan perintah, PID, dan pengguna dalam format yang mudah dibaca.

Tidak. Memblokir port dengan ufw atau iptables mencegah koneksi eksternal mencapai layanan, tetapi layanannya sendiri tetap berjalan. Untuk menghentikannya sepenuhnya, gunakan sudo systemctl stop servicename. Agar tidak aktif secara permanen, jalankan juga sudo systemctl disable servicename untuk mencegahnya berjalan saat reboot.