Hemat 15% untuk semua layanan hosting

Uji kemampuanmu dan dapatkan Diskon pada paket hosting apa saja

Gunakan kode: Skills Memulai
Bagian FAQ
Keamanan Linux

Memeriksa Port Terbuka dan Mendengarkan di Linux Menggunakan Netstat dan SS

Memantau port terbuka dan mendengarkan pada sistem Linux adalah salah satu praktik paling fundamental untuk mempertahankan keamanan server, mendiagnosis masalah jaringan, dan mengelola infrastruktur Anda secara efektif. Baik Anda menjalankan server web produksi, lingkungan VPS Hosting, atau Dedicated Server, memahami dengan tepat port mana yang terbuka — dan layanan mana yang terikat padanya — memberikan visibilitas yang Anda butuhkan untuk mencegah akses tidak sah, mendeteksi kesalahan konfigurasi, dan menghilangkan permukaan serangan yang tidak perlu.

Dalam panduan komprehensif ini, kami akan memandu Anda tentang cara menggunakan perintah netstat dan ss untuk memeriksa port terbuka dan mendengarkan pada sistem Linux apa pun, membandingkan kekuatan mereka, dan memperkenalkan alat tambahan seperti lsof dan nmap untuk analisis jaringan yang lebih mendalam.

Mengapa Monitoring Port Terbuka Penting

Setiap port terbuka di server Anda mewakili potensi titik masuk. Layanan yang salah konfigurasi, ketinggalan zaman, atau sekadar terlupakan dapat mengekspos sistem Anda terhadap eksploitasi. Audit rutin port listening Anda memungkinkan Anda untuk:

  • Mengidentifikasi layanan tidak sah yang berjalan di port yang tidak terduga
  • Mendeteksi upaya intrusi atau proses yang dikompromikan
  • Memverifikasi aturan firewall berfungsi sesuai yang dimaksudkan
  • Mengkonfirmasi bahwa aplikasi yang baru diterapkan mengikat ke antarmuka yang benar
  • Menutup port yang tidak digunakan untuk mengurangi permukaan serangan Anda

Ini sangat penting bagi administrator yang mengelola lingkungan Shared Web Hosting atau server multi-tenant di mana beberapa layanan berjalan secara bersamaan.

Memahami Port dan Jenisnya

Sebelum mendalami alat-alat tersebut, penting untuk memahami terminologi yang akan Anda temui dalam keluaran perintah.

IstilahDeskripsi
Open PortPort tempat aplikasi secara aktif mendengarkan koneksi masuk
Listening PortPort yang terikat pada layanan yang menunggu lalu lintas jaringan
TCP (Transmission Control Protocol)Berorientasi koneksi, andal, digunakan oleh HTTP, SSH, FTP, dll.
UDP (User Datagram Protocol)Tanpa koneksi, lebih cepat tetapi kurang andal, digunakan oleh DNS, NTP, dll.

Memeriksa Port dengan netstat

Apa Itu netstat?

netstat (network statistics) adalah utilitas command-line klasik yang memberikan informasi detail tentang koneksi jaringan, tabel routing, statistik antarmuka, dan port yang mendengarkan. Meskipun secara resmi telah dihentikan mendukung demi ss pada distribusi modern, tetap banyak digunakan dan masih ditemukan pada banyak sistem legacy.

Menginstal netstat

Perintah netstat adalah bagian dari paket net-tools, yang mungkin tidak diinstal secara default pada distribusi Linux modern.

Debian / Ubuntu:

sudo apt install net-tools

CentOS / RHEL / AlmaLinux / Rocky Linux:

sudo yum install net-tools

Menggunakan netstat untuk Memeriksa Port Terbuka dan Mendengarkan

Untuk menampilkan semua port TCP dan UDP yang mendengarkan di sistem Anda, jalankan perintah berikut:

sudo netstat -tuln

Penjelasan flag:

FlagDeskripsi
-tTampilkan port TCP
-uTampilkan port UDP
-lTampilkan hanya port yang mendengarkan
-nTampilkan alamat numerik alih-alih menyelesaikan nama host

Contoh Output

Proto  Recv-Q  Send-Q  Local Address     Foreign Address   State
tcp         0       0  0.0.0.0:22        0.0.0.0:*         LISTEN
tcp         0       0  0.0.0.0:80        0.0.0.0:*         LISTEN
tcp6        0       0  :::443            :::*              LISTEN
udp         0       0  0.0.0.0:53        0.0.0.0:*

Memahami Kolom Output

  • Local Address — Alamat IP dan nomor port tempat layanan mendengarkan. 0.0.0.0 berarti layanan mendengarkan di semua antarmuka yang tersedia.
  • Foreign Address — IP jarak jauh dan port untuk koneksi aktif. Tanda bintang (*) berarti belum ada koneksi yang dibangun.
  • State — Status koneksi. LISTEN menunjukkan port terbuka dan menunggu koneksi masuk.

Memfilter Port Spesifik dengan netstat

Anda dapat menyalurkan output melalui grep untuk mengisolasi port atau layanan tertentu. Misalnya, untuk memeriksa apakah ada yang mendengarkan pada port 80 (HTTP):

sudo netstat -tuln | grep ":80"

Untuk memeriksa port 443 (HTTPS), yang penting untuk server dengan SSL Certificates yang diinstal:

sudo netstat -tuln | grep ":443"

Untuk juga menampilkan nama proses dan PID yang bertanggung jawab untuk setiap koneksi, tambahkan flag -p:

sudo netstat -tulnp

Memeriksa Port dengan ss

Apa Itu ss?

ss (socket statistics) adalah pengganti modern untuk netstat. Ini lebih cepat, lebih efisien, dan memberikan output yang lebih kaya — terutama pada sistem dengan jumlah koneksi bersamaan yang tinggi. Perintah ss disertakan secara default pada hampir semua distribusi Linux modern dan tidak memerlukan instalasi tambahan.

Menggunakan ss untuk Memeriksa Port Terbuka dan Mendengarkan

Sintaks ss sangat mirip dengan netstat, membuat transisi menjadi mudah:

ss -tuln

Penjelasan flag:

FlagDeskripsi
-tTampilkan socket TCP
-uTampilkan socket UDP
-lTampilkan hanya socket yang mendengarkan
-nTampilkan alamat numerik

Contoh Output

Netid  State   Recv-Q  Send-Q  Local Address:Port   Peer Address:Port
tcp    LISTEN  0       128     0.0.0.0:22            0.0.0.0:*
tcp    LISTEN  0       511     0.0.0.0:80            0.0.0.0:*
tcp    LISTEN  0       511        [::]:443             [::]:*
udp    UNCONN  0       0       0.0.0.0:53            0.0.0.0:*

Penggunaan Lanjutan dari ss

Perintah ss menawarkan berbagai opsi penyaringan dan tampilan lanjutan yang jauh melampaui apa yang dapat disediakan oleh netstat.

Tampilkan Hanya Port TCP yang Mendengarkan

ss -tl

Tampilkan Hanya Port UDP yang Mendengarkan

ss -ul

Tampilkan Nama Proses dan PID

Untuk mengidentifikasi dengan tepat proses mana yang menggunakan port tertentu, gunakan flag -p:

ss -tulnp

Ini adalah salah satu perintah paling berguna untuk pemecahan masalah — menampilkan nama proses dan PID di samping setiap soket yang mendengarkan, sehingga segera jelas aplikasi mana yang memiliki port mana.

Contoh Output dengan Flag -p

Netid  State   Local Address:Port   Process
tcp    LISTEN  0.0.0.0:80           users:(("nginx",pid=1234,fd=6))
tcp    LISTEN  0.0.0.0:22           users:(("sshd",pid=987,fd=3))
tcp    LISTEN  0.0.0.0:3306         users:(("mysqld",pid=2345,fd=21))

Filter berdasarkan Port Tertentu

Untuk memeriksa proses mana yang mendengarkan pada port 8080:

ss -tulnp | grep ":8080"

Tampilkan Semua Koneksi TCP yang Terbentuk

ss -tn state established

Tampilkan Statistik Ringkasan

ss -s

Ini memberikan ringkasan cepat dari total soket berdasarkan tipe dan status — berguna untuk mendeteksi volume koneksi yang tidak biasa.

netstat vs. ss: Perbandingan Langsung

Fitur`netstat``ss`
PerformaLebih lambat pada sistem yang sibukJauh lebih cepat
Ketersediaan defaultMemerlukan paket net-toolsPra-instal pada distro modern
Opsi penyaringanDasar (grep diperlukan)Filter bawaan canggih
Informasi prosesTersedia dengan -pTersedia dengan -p
Detail outputStandarInfo soket lebih detail
Direkomendasikan untukSistem legacy, keakrabanLingkungan Linux modern

Kapan Menggunakan netstat

  • Pada sistem Linux lama di mana ss tidak tersedia
  • Saat bekerja dengan skrip atau dokumentasi yang ditulis sekitar sintaks netstat
  • Untuk pemeriksaan cepat pada sistem di mana net-tools sudah terinstal

Kapan Menggunakan ss

  • Pada distribusi Linux modern apa pun (Ubuntu 20.04+, CentOS 8+, Debian 10+, dll.)
  • Saat Anda membutuhkan output lebih cepat pada server lalu lintas tinggi
  • Untuk penyaringan canggih dan analisis soket detail

Alat Tambahan untuk Audit Port

Selain netstat dan ss, beberapa utilitas lainnya sangat berharga untuk audit port yang menyeluruh.

Menggunakan lsof

lsof (list open files) memperlakukan soket jaringan sebagai file, menjadikannya cara lain yang ampuh untuk mengidentifikasi proses mana yang menggunakan port tertentu.

Untuk memeriksa proses mana yang terikat ke port 80:

sudo lsof -i :80

Untuk memeriksa semua port yang mendengarkan:

sudo lsof -i -P -n | grep LISTEN

Contoh output:

COMMAND   PID     USER   FD   TYPE  DEVICE SIZE/OFF NODE NAME
nginx    1234     root   6u  IPv4   23456      0t0  TCP *:80 (LISTEN)
sshd      987     root   3u  IPv4   12345      0t0  TCP *:22 (LISTEN)

Menggunakan nmap

nmap adalah alat pemindaian jaringan yang ampuh yang dapat mendeteksi port terbuka baik secara lokal maupun pada host jarak jauh. Ini sangat berguna untuk memverifikasi konfigurasi firewall Anda dari perspektif eksternal.

Instal nmap jika belum ada:

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

Pindai semua port TCP pada mesin lokal:

sudo nmap -sT localhost

Pindai port terbuka pada alamat IP tertentu:

sudo nmap -sV 192.168.1.100

Flag -sV juga mencoba mendeteksi versi layanan yang berjalan di setiap port terbuka, yang sangat berharga untuk mengidentifikasi perangkat lunak yang ketinggalan zaman atau rentan.

> Catatan Keamanan: Hanya jalankan pemindaian nmap terhadap sistem yang Anda miliki atau memiliki izin eksplisit untuk memindai.

Alur Kerja Keamanan Praktis: Mengaudit Port Server Anda

Berikut adalah alur kerja langkah demi langkah yang direkomendasikan untuk mengaudit port terbuka pada server Linux:

  1. Daftar semua port yang mendengarkan dengan informasi proses:
   ss -tulnp
  1. Referensi silang setiap port terhadap layanan yang diharapkan. Jika Anda melihat proses yang tidak dikenal pada port yang tidak terduga, selidiki segera.
  1. Periksa layanan yang mendengarkan di semua antarmuka (0.0.0.0) yang seharusnya hanya dapat diakses secara lokal. Misalnya, server database (port 3306) biasanya harus mengikat ke 127.0.0.1, bukan 0.0.0.0.
  1. Verifikasi aturan firewall Anda dengan iptables -L -n atau ufw status verbose untuk memastikan hanya port yang dimaksud yang terbuka secara eksternal.
  1. Gunakan nmap dari host eksternal untuk mengonfirmasi port mana yang benar-benar dapat dijangkau dari internet, karena aturan firewall mungkin berbeda dari apa yang ss laporkan secara lokal.
  1. Tutup atau batasi port apa pun yang tidak diperlukan menggunakan firewall Anda atau dengan menghentikan layanan terkait.

Referensi Cepat: Perintah Paling Berguna

# List all listening TCP and UDP ports (modern, recommended)
ss -tuln

# List listening ports with process names and PIDs
ss -tulnp

# List all listening ports using netstat (legacy)
sudo netstat -tulnp

# Check which process is using port 443
ss -tulnp | grep ":443"

# Check open ports with lsof
sudo lsof -i -P -n | grep LISTEN

# Scan local machine for open ports with nmap
sudo nmap -sT localhost

Kesimpulan

Audit rutin port terbuka dan mendengarkan adalah bagian yang tidak dapat ditawar dari administrasi server Linux. Alat seperti netstat dan ss memberi Anda visibilitas langsung dan terperinci tentang layanan mana yang berjalan, port mana yang mereka gunakan, dan apakah ada yang tidak terduga di sistem Anda.

Untuk lingkungan Linux modern, ss adalah pilihan yang jelas — lebih cepat, lebih mampu, dan tersedia secara default. Namun, netstat tetap menjadi fallback yang andal untuk sistem legacy atau administrator yang sudah terbiasa dengan sintaksnya. Melengkapi alat-alat ini dengan lsof dan nmap memberikan gambaran lengkap tentang eksposur jaringan server Anda.

Baik Anda mengamankan deployment VPS Hosting yang baru, mengelola armada Dedicated Servers, atau mengamankan lingkungan Email Hosting, menguasai audit port adalah keterampilan penting yang secara langsung berkontribusi pada keamanan dan keandalan infrastruktur Anda.