GNU/Linux >> Belajar Linux >  >> Debian

Debian:Temukan Nomor Port mana yang sedang didengarkan oleh Proses

Seperti yang kita semua tahu port hanya digunakan oleh satu proses atau layanan pada satu waktu. Port mengidentifikasi layanan tertentu atau proses yang berjalan pada sistem. Terkadang, saat memecahkan masalah, kita perlu mengetahui nomor port mana yang didengarkan oleh proses tertentu. Semua proses yang berjalan pada sistem dikaitkan dengan nomor identifikasi proses (PID) dan nomor port. Untuk menemukan nomor port mana yang sedang didengarkan oleh proses tertentu, ada beberapa cara yang akan kita bicarakan di artikel ini.

Sebelum melanjutkan ke artikel, pastikan Anda memiliki hak akses root. Ini akan membantu Anda mendapatkan informasi yang komprehensif tentang proses yang berjalan di sistem Anda.

Perhatikan bahwa Kami telah menggunakan Debian 10 untuk menjalankan perintah dan prosedur yang disebutkan dalam artikel ini.

Metode 1:Menggunakan perintah netstat

Netstat adalah utilitas baris perintah yang paling umum digunakan yang dapat digunakan untuk menampilkan informasi tentang koneksi jaringan, statistik antarmuka, dan tabel perutean. Ini juga dapat digunakan untuk menemukan nomor port mana yang digunakan oleh proses tertentu. Anda tidak perlu menginstalnya karena sudah diinstal di repositori semua distribusi Linux. Namun, jika belum terinstal di sistem Anda, gunakan perintah berikut untuk menginstalnya:

$ sudo apt install net-tools

Untuk menemukan nomor port yang sedang didengarkan oleh proses, jalankan perintah berikut di Terminal:

$ sudo netstat -ltnp

Output berikut menunjukkan nomor port yang digunakan oleh proses tertentu bersama dengan ID proses (PID).

Jika Anda tidak memiliki hak sudo dan menjalankan perintah di atas tanpa sudo, itu tidak akan menampilkan nama program dan PID seperti yang terlihat pada output berikut.

Sekarang Mari kita lihat apa yang ltnp pada perintah di atas berarti:

l – tampilkan soket pendengar

t – tampilkan koneksi TCP

n – tampilkan alamat IP &nomor port dalam bentuk numerik

p – tampilkan PID/nama program

Jika kita melihat output dari $ sudo netstat -ltnp , kolom keempat persis seperti yang kita cari:nomor port tempat proses mendengarkan.

Untuk mendapatkan informasi port dari satu proses, Anda cukup menyalurkan output netstat dengan perintah grep.

Misalnya, untuk menemukan nomor port pada "sshd", gunakan perintah berikut:

$ sudo netstat –ltnp | grep ‘sshd’

Demikian pula, jika Anda ingin mengetahui nama proses yang mendengarkan pada port tertentu, katakanlah port 21, perintah berikut akan digunakan:

$ sudo netstat -ltnp | grep -w ':21'

Metode 2:Menggunakan perintah lsof

Dengan perintah lsof, Anda dapat melihat daftar semua file yang dibuka oleh proses yang berjalan di sistem Anda. Lsof dapat bertindak sebagai sumber tunggal untuk memperoleh informasi yang jika tidak melibatkan seperangkat besar alat administrasi. Mirip dengan perintah netstat, Anda akan memerlukan hak sudo untuk mendapatkan informasi rinci.

Jika lsof belum terinstal di sistem Anda, gunakan perintah berikut di Terminal untuk menginstalnya:

$ sudo apt install lsof

Setelah terinstal, Anda dapat menggunakan utilitas lsof untuk menemukan proses yang berjalan pada port tertentu. Jika Anda menjalankan utilitas lsof tanpa parameter apa pun, itu akan mengembalikan banyak informasi yang akan sulit Anda pahami. Namun, menggunakan parameter dengan lsof, dapat membantu Anda menyaring dan berkonsentrasi pada keluaran yang diinginkan.

Sekarang untuk menemukan proses mendengarkan pada port tertentu, katakanlah port 22, gunakan perintah berikut:

$ sudo lsof -i :22

Perintah ini akan mengembalikan semua proses yang berjalan pada port 22.

Metode 3:Menggunakan perintah fuser

Fuser adalah perintah Linux yang digunakan untuk menemukan ID proses mana yang menggunakan file, direktori, atau sistem file. Kita dapat menggunakan perintah ini untuk menemukan proses yang berjalan pada port tertentu.

Anda akan memerlukan utilitas psmisc untuk menggunakan perintah fuser. Jika belum terinstal di sistem Anda, jalankan perintah berikut untuk menginstalnya:

$ sudo apt install psmisc

Untuk melihat proses yang berjalan pada port apa pun, katakanlah TCP port 22, jalankan perintah berikut di Terminal:

$ sudo fuser 22/tcp

Perintah di atas telah mengembalikan proses mendengarkan pada nomor port 22. Sekarang untuk melihat nama proses terhadap ID proses apa pun, gunakan sintaks perintah berikut:

$ ps -p [processID] -o comm=

Dalam kasus kami, itu akan menjadi

$ ps -p [5859] -o comm=

Dari output di atas, kita dapat menemukan nama proses sshd terhadap ID proses 5859. Ini menyiratkan bahwa sshd dengan ID proses 5859 mendengarkan pada port 22.

Dalam artikel ini, kita telah mempelajari beberapa utilitas baris perintah yang dapat Anda gunakan untuk melihat port mana yang didengarkan oleh proses tertentu.


Debian
  1. Bagaimana cara mengetahui proses mana yang menggunakan file di Linux?

  2. Apa perintah unix untuk mengetahui file yang dapat dieksekusi yang sesuai dengan perintah yang diberikan?

  3. Temukan proses mana yang memodifikasi file

  1. 4 Cara Mengetahui Core CPU yang menjalankan Proses tertentu di Linux

  2. Debian – Bagaimana Cara Mengetahui Bagaimana Sebuah Paket Terpasang Terpasang?

  3. Cari tahu proses mana yang mengubah file

  1. Cara Menemukan Alamat IP Pribadi Anda di Debian 10

  2. Cari Tahu Nomor Port Mendengarkan Rsyslog?

  3. Debian – Menemukan Paket yang Menyediakan Perintah yang Diberikan?