Dalam sistem operasi Linux, salah satu aspek penting yang perlu sobat server perhatikan adalah penggunaan port. Port di dalam jaringan berfungsi sebagai pintu gerbang yang memungkinkan komunikasi antara perangkat atau aplikasi yang terhubung. Mengelola port dengan baik sangat penting untuk menjaga keamanan dan kinerja server. Artikel ini akan menjelaskan beberapa cara untuk memverifikasi port pendengaran dan penggunaan port di sistem Linux.
Menggunakan Perintah lsof
untuk Memantau Penggunaan Port
Perintah lsof
(List Open Files) merupakan alat yang sangat berguna untuk melacak file atau port yang sedang digunakan oleh proses tertentu. Dalam konteks jaringan, lsof
dapat digunakan untuk melihat koneksi yang dibuka oleh aplikasi yang berjalan di sistem.
Perintah Dasar lsof
Sobat server bisa menggunakan perintah dasar berikut untuk menampilkan semua file atau port yang terbuka di sistem:
lsof -i -P -n
Contoh hasil keluaran dari perintah tersebut adalah:
[root@server-01 ~]# lsof -i -P -n
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
chronyd 799 chrony 5u IPv4 19739 0t0 UDP 127.0.0.1:323
chronyd 799 chrony 6u IPv6 19740 0t0 UDP [::1]:323
sshd 1252 root 5u IPv4 26992 0t0 TCP :22 (LISTEN)
sshd 1252 root 7u IPv6 26994 0t0 TCP :22 (LISTEN)
Pada contoh di atas, sobat server bisa melihat bahwa proses sshd
sedang mendengarkan pada port TCP 22, baik untuk koneksi IPv4 maupun IPv6.
Berikut adalah beberapa opsi yang digunakan pada perintah tersebut:
-i
: Menampilkan file yang dibuka oleh koneksi jaringan (Internet).-n
: Mencegah perintahlsof
mengubah alamat IP menjadi nama host.-P
: Mencegah nomor port diubah menjadi nama port.
Dengan menggunakan perintah ini, sobat server bisa mengetahui proses mana saja yang menggunakan port tertentu. Misalnya, jika ada proses mencurigakan yang mendengarkan di port yang tidak seharusnya, ini bisa menjadi tanda awal adanya masalah keamanan.
Menggunakan grep
dengan lsof
untuk Mempersempit Pencarian
Sobat server juga dapat mempersempit hasil keluaran perintah lsof
dengan menggunakan grep
. Misalnya, untuk menampilkan hanya proses yang sedang “LISTEN” pada port, sobat server bisa menjalankan perintah berikut:
lsof -i -P -n | grep LISTEN
Contoh keluaran dari perintah ini adalah:
[root@server-01 ~]# lsof -i -P -n | grep LISTEN
sshd 1252 root 5u IPv4 26992 0t0 TCP :22 (LISTEN)
sshd 1252 root 7u IPv6 26994 0t0 TCP :22 (LISTEN)
Dengan menggunakan grep
, sobat server bisa lebih mudah fokus pada proses yang spesifik, terutama jika ada banyak proses yang berjalan di server.
Menentukan Port Tertentu untuk Pencarian
Jika sobat server hanya ingin mencari proses yang menggunakan port tertentu, sobat bisa menentukan nomor port dalam perintah lsof
. Misalnya, untuk mencari proses yang menggunakan port 22, gunakan perintah berikut:
lsof -i :22
Contoh hasilnya adalah:
[root@server-01 ~]# lsof -i :22
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
sshd 1252 root 5u IPv4 26992 0t0 TCP :ssh (LISTEN)
sshd 1252 root 7u IPv6 26994 0t0 TCP :ssh (LISTEN)
Perintah ini sangat berguna jika sobat server ingin memeriksa port tertentu yang mungkin dicurigai digunakan untuk aktivitas yang tidak sah.
Menggunakan Perintah netstat
untuk Memantau Port
Perintah netstat
(Network Statistics) memberikan informasi yang lebih mendetail tentang koneksi jaringan, penggunaan port, dan protokol yang sedang digunakan. Perintah ini adalah salah satu alat paling populer untuk memeriksa jaringan pada sistem Linux.
Perintah Dasar netstat
Perintah dasar netstat
untuk menampilkan port yang sedang digunakan adalah:
netstat -tulpn
Contoh hasil keluaran dari perintah tersebut adalah:
[root@server-01 ~]# netstat -tulpn
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1252/sshd
tcp6 0 0 :::22 :::* LISTEN 1252/sshd
udp 0 0 127.0.0.1:323 0.0.0.0:* 799/chronyd
udp6 0 0 ::1:323 :::* 799/chronyd
Berikut adalah beberapa opsi penting dalam perintah netstat
:
-l
: Menampilkan soket yang sedang mendengarkan (listening).-n
: Menampilkan alamat dalam bentuk numerik, tanpa mengubahnya menjadi nama host atau port.-p
: Menampilkan nama proses yang membuka soket.-t
: Menampilkan soket TCP.-u
: Menampilkan soket UDP.
Dengan netstat
, sobat server dapat memantau port yang sedang aktif di sistem serta proses yang terhubung dengan port tersebut.
Menggunakan grep
dengan netstat
Sama seperti lsof
, sobat server bisa menggunakan grep
dengan netstat
untuk mempersempit hasil pencarian. Misalnya, untuk hanya menampilkan proses yang mendengarkan pada port, sobat bisa menjalankan perintah berikut:
netstat -tulpn | grep LISTEN
Hasilnya akan menampilkan hanya port yang sedang mendengarkan, mempermudah sobat server dalam proses troubleshooting atau pemantauan.
Menggunakan Perintah ss
sebagai Alternatif netstat
Perintah ss
(Socket Statistics) adalah alternatif yang lebih baru untuk netstat
, dan cenderung lebih cepat dalam memberikan informasi tentang soket jaringan. Pada distribusi Linux modern, ss
sering kali sudah terinstal secara default, dan digunakan untuk menggantikan netstat
.
Perintah Dasar ss
Sobat server bisa menggunakan perintah dasar berikut untuk menampilkan soket yang sedang aktif:
ss -tulwn
Contoh hasilnya adalah:
[root@server-01 ~]# ss -tulwn
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
icmp6 UNCONN 0 0 *:58 *:*
udp UNCONN 0 0 127.0.0.1:323 0.0.0.0:*
udp UNCONN 0 0 [::1]:323 [::]:*
tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
tcp LISTEN 0 128 [::]:22 [::]:*
Berikut beberapa opsi dalam perintah ss
:
-l
: Menampilkan soket pendengaran.-n
: Mencegah penyelesaian nama layanan.-t
: Menampilkan soket TCP.-u
: Menampilkan soket UDP.-w
: Menampilkan soket RAW.
ss
memberikan informasi yang lebih cepat dan mendetail dibandingkan netstat
, terutama pada sistem modern yang memiliki banyak koneksi aktif.
Menggunakan nmap
untuk Pemindaian Port
Perintah nmap
(Network Mapper) adalah alat yang sangat kuat untuk melakukan pemindaian port serta penemuan host di dalam jaringan. nmap
sering digunakan oleh administrator jaringan dan profesional keamanan untuk memeriksa port yang terbuka dan layanan yang berjalan pada host tertentu.
Perintah Dasar nmap
Sobat server bisa menggunakan perintah berikut untuk melakukan pemindaian port pada sistem lokal:
nmap -sT -O localhost
Contoh hasilnya adalah:
[root@server-01 ~]# nmap -sT -O localhost
Starting Nmap 7.70 ( https://nmap
.org ) at 2020-06-10 22:49 UTC
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00036s latency).
Other addresses for localhost (not scanned): ::1
Not shown: 999 closed ports
PORT STATE SERVICE
22/tcp open ssh
Beberapa opsi yang digunakan pada perintah ini adalah:
-sT
: Melakukan pemindaian koneksi TCP.-O
: Mendeteksi sistem operasi dari host yang dipindai.
nmap
memberikan detail yang sangat lengkap tentang port yang terbuka dan status dari masing-masing port tersebut, sehingga sangat berguna untuk melakukan audit keamanan pada server sobat.
Kesimpulan
Dengan menggunakan alat-alat seperti lsof
, netstat
, ss
, dan nmap
, sobat server bisa dengan mudah memantau dan memverifikasi penggunaan port di sistem Linux. Memastikan port yang terbuka hanya digunakan oleh aplikasi yang sah merupakan langkah penting dalam menjaga keamanan dan stabilitas server. Semoga artikel ini membantu sobat server memahami cara memantau port di Linux dengan lebih baik!