Apa maksud Port Terbuka?
Sebelum mengetahui lebih mendalam mengenai port terbuka, mari kita ketahui terlebih dahulu maksud port terbuka. Port Terbuka atau port pendengaran adalah port di mana beberapa aplikasi sedang berjalan. Aplikasi yang sedang berjalan mendengarkan di beberapa port, dan kami dapat berkomunikasi dengan aplikasi tersebut melalui port pendengaran itu. Sekiranya aplikasi berjalan di port, dan kami cuba menjalankan aplikasi lain di port yang sama, kernel akan menimbulkan kesalahan. Itulah salah satu daripada banyak sebab kami memeriksa port terbuka sebelum menjalankan aplikasi.
Senaraikan Port Terbuka Menggunakan nmap
Network Mapper, yang dikenali sebagai nmap, adalah sumber terbuka dan alat percuma, yang digunakan untuk mengimbas port pada sistem. Ini digunakan untuk mencari kerentanan, mencari jaringan, dan mencari port terbuka. Di bahagian ini, kami akan menggunakan nmap untuk mendapatkan senarai port terbuka pada sistem. Pertama sekali, kemas kini cache di Ubuntu sebelum memasang nmap:
[dilindungi e-mel]: ~ $ sudo apt-get kemas kini -yNmap boleh dipasang menggunakan perintah berikut di terminal:
[dilindungi e-mel]: ~ $ sudo apt-get install nmap -ySetelah memasang nmap, sahkan pemasangan dengan memeriksa versi nmap:
[dilindungi e-mel]: ~ $ nmap --versi
Sekiranya memberikan versi nmap, maka ia dipasang dengan sempurna, jika tidak, cuba perintah di atas sekali lagi untuk memasang nmap dengan betul. Nmap digunakan untuk melakukan beberapa yang berkaitan dengan rangkaian, dan pengimbasan port adalah salah satu tugas tersebut. Alat nmap digunakan bersama dengan banyak pilihan. Kita boleh mendapatkan senarai semua pilihan yang ada dengan menggunakan perintah berikut:
[dilindungi e-mel]: ~ $ man nmapOleh itu, untuk mengimbas localhost anda, gunakan arahan yang terdapat di bawah:
[dilindungi e-mel]: ~ $ sudo nmap localhost
Ia akan menyenaraikan semua port terbuka di localhost, seperti yang ditunjukkan dalam gambar di atas. Kami juga boleh menggunakan nmap untuk mengimbas host jauh:
[dilindungi e-mel]: ~ $ sudo nmap 93.184.216.34Kita juga boleh menggunakan nama host pelayan jauh dan bukan alamat IP:
[dilindungi e-mel]: ~ $ sudo nmap www.contoh.comPerintah nmap juga dapat digunakan untuk mengimbas pelbagai alamat IP. Tentukan julat Alamat IP dalam perintah, seperti perintah di bawah:
[dilindungi e-mel]: ~ $ sudo nmap 192.168.1.1-10Perintah di atas akan mengimbas semua alamat IP dari 192.168.1.1 hingga 192.168.1.10, dan ia akan memaparkan hasilnya di terminal. Untuk mengimbas port pada subnet, kita dapat menggunakan nmap seperti berikut:
[dilindungi e-mel]: ~ $ sudo nmap 192.168.1.1/24Perintah di atas akan mengimbas semua host dengan alamat IP di subnet yang ditentukan dalam perintah.
Kadang kala anda perlu mengimbas port pada host secara rawak, yang terdapat dalam subnet yang berbeza dan tidak mengikut urutan, maka penyelesaian terbaik adalah menulis fail host di mana semua nama host ditulis, dipisahkan oleh satu atau lebih ruang, tab, atau baru garisan. Fail ini boleh digunakan dengan nmap seperti berikut:
[dilindungi e-mel]: ~ $ sudo nmap -iL hos.txt
Kita dapat menggunakan nmap untuk memindai satu port pada sistem dengan menentukan port menggunakan bendera '-p', bersama dengan nmap, seperti dalam perintah berikut:
[dilindungi e-mel]: ~ $ sudo nmap -p 80 localhost
Julat port juga dapat diimbas pada sistem menggunakan nmap dengan cara berikut:
[dilindungi e-mel]: ~ $ sudo nmap -p 80-85 localhost
Kita boleh mengimbas semua port sistem menggunakan nmap:
[dilindungi e-mel]: ~ $ sudo nmap -p- localhost
Untuk mendapatkan senarai port yang paling umum terbuka pada sistem anda, anda boleh menggunakan perintah nmap dengan bendera '-F':
[dilindungi e-mel]: ~ $ sudo nmap -F localhost
Port TCP dapat diimbas pada sistem menggunakan nmap dengan hanya menambahkan bendera '-T', bersama dengan perintah nmap:
[dilindungi e-mel]: ~ $ sudo nmap -sT localhost
Begitu juga, untuk port UDP, anda boleh menggunakan bendera '-U' dengan perintah nmap:
[dilindungi e-mel]: ~ $ sudo nmap -sU localhost
Senaraikan Port Terbuka Menggunakan lsof
Perintah lsof, juga dikenal sebagai 'daftar fail terbuka', digunakan untuk mendapatkan maklumat mengenai fail terbuka yang digunakan oleh proses yang berbeza dalam UNIX dan LINUX seperti sistem operasi. Bagi sebahagian besar distro Linux, alat ini sudah dipasang sebelumnya. Kita boleh mengesahkan pemasangan lsof dengan hanya memeriksa versi:
[dilindungi e-mel]: ~ $ lsof -v
Sekiranya tidak menunjukkan versi, lsof tidak dipasang secara lalai. Kami masih boleh memasangnya dengan menggunakan perintah berikut di terminal:
[dilindungi e-mel]: ~ $ sudo apt-get kemas kini -y[dilindungi e-mel]: ~ $ sudo apt-get install lsof
Kita boleh menggunakan perintah lsof bersama dengan pilihan yang berbeza. Senarai semua pilihan yang ada dapat dipaparkan menggunakan perintah berikut di terminal:
[dilindungi e-mel]: ~ $ man lsofSekarang, di bahagian ini, kita akan menggunakan lsof untuk memaparkan port sistem dengan cara yang berbeza:
[dilindungi e-mel]: ~ $ sudo lsof -i
Perintah di atas telah menunjukkan semua port terbuka. Kita juga boleh menggunakan perintah lsof untuk memaparkan semua soket terbuka:
[dilindungi e-mel]: ~ $ sudo lsof -n -P | grep DAFTAR
Kita dapat menyenaraikan port yang disaring berdasarkan protokol menggunakan lsof. Jalankan arahan yang diberikan di bawah untuk menyenaraikan semua jenis Sambungan TCP:
[dilindungi e-mel]: ~ $ sudo lsof -i tcp
Begitu juga, kita dapat menyenaraikan semua jenis sambungan UDP menggunakan lsof dengan cara berikut:
[dilindungi e-mel]: ~ $ sudo lsof -i udp
Senaraikan Port Terbuka Menggunakan netstat
Netstat, juga dikenal sebagai statistik rangkaian, adalah program baris perintah yang digunakan untuk menampilkan maklumat terperinci mengenai rangkaian. Ia memaparkan sambungan TCP masuk dan keluar, jadual perutean, antara muka rangkaian, dll. Di bahagian ini, kami akan menggunakan netstat untuk menyenaraikan port terbuka pada sistem. Alat netstat dapat dipasang dengan menjalankan perintah berikut:
[dilindungi e-mel]: ~ $ sudo apt-get kemas kini -y[dilindungi e-mel]: ~ $ sudo apt-get install net-tools -y
Setelah menjalankan perintah di atas, anda dapat mengesahkan pemasangan dengan memeriksa versi netstat:
[dilindungi e-mel]: ~ $ netstat --versi
Sekiranya ia memaparkan versi alat bersih, maka pemasangannya baik, jika tidak, jalankan semula arahan pemasangan. Untuk mendapatkan gambaran keseluruhan semua pilihan yang ada yang dapat digunakan, bersama dengan perintah netstat, jalankan perintah berikut:
[dilindungi e-mel]: ~ $ netstat lelakiKita boleh mendapatkan senarai semua port mendengar menggunakan arahan netstat di Ubuntu dengan menjalankan perintah berikut:
[dilindungi e-mel]: ~ $ sudo netstat -l
Perintah netstat juga dapat digunakan untuk menyaring mendengarkan port TCP dan UDP dengan hanya menambahkan bendera bersama dengan perintah. Untuk mendengar port TCP:
[dilindungi e-mel]: ~ $ sudo netstat -lt
Untuk mendengar port UDP, gunakan arahan berikut:
[dilindungi e-mel]: ~ $ sudo netstat -lu
Untuk mendapatkan senarai semua port UNIX yang mendengar, anda boleh menjalankan perintah berikut di terminal:
[dilindungi e-mel]: ~ $ sudo netstat -lx
Senaraikan Port Terbuka Menggunakan ss
Perintah ss digunakan untuk memaparkan maklumat mengenai soket dalam sistem Linux. Ia memaparkan maklumat yang lebih terperinci mengenai soket daripada arahan netstat. Perintah ss telah diprapasang untuk sebahagian besar distro Linux, jadi anda tidak perlu memasangnya sebelum menggunakannya. Anda boleh mendapatkan senarai semua pilihan, yang dapat digunakan bersama dengan perintah ss, dengan menjalankan perintah 'man' dengan ss:
[dilindungi e-mel]: ~ $ man ssUntuk mendapatkan senarai semua sambungan tanpa mengira keadaannya, gunakan arahan ss tanpa bendera:
[dilindungi e-mel]: ~ $ sudo ss
Untuk mendapatkan senarai semua port mendengar, gunakan perintah ss dengan bendera '-l'. Bendera '-l' digunakan untuk memaparkan port yang hanya mendengar:
[dilindungi e-mel]: ~ $ sudo ss -l
Untuk mendapatkan semua port TCP yang mendengar, kita dapat menggunakan bendera '-t' dan '-l' bersama dengan perintah ss:
[dilindungi e-mel]: ~ $ sudo ss -lt
Begitu juga, kita boleh mendapatkan senarai semua port UDP yang mendengar menggunakan perintah ss bersama dengan bendera '-u' dan '-l':
[dilindungi e-mel]: ~ $ sudo ss -lu
Perintah ss juga dapat digunakan untuk mendapatkan daftar semua hubungan dengan sumber atau port tujuan. Dalam contoh berikut, kita akan mendapatkan senarai semua hubungan dengan destinasi atau port sumber 22:
[dilindungi e-mel]: ~ $ sudo ss -at '(dport =: 22 atau sport =: 22)'
Anda akan mendapat senarai semua sambungan masuk dan keluar jika anda telah menyambung ke sistem jauh menggunakan ssh.
Kesimpulannya
Untuk pentadbir sistem, profesional keselamatan, dan orang lain yang berkaitan dengan IT, penting untuk mengetahui port terbuka di pelayan. Linux kaya dengan alat yang digunakan untuk mendiagnosis rangkaian dan menyediakan banyak alat yang dapat membantu untuk pelbagai jenis aktiviti rangkaian. Dalam tutorial ini, kami telah menggunakan beberapa alat seperti netstat, ss, lsof, dan nmap untuk memeriksa port terbuka di Ubuntu. Setelah membaca artikel ini, anda akan dapat dengan mudah menyenaraikan semua port mendengar di pelayan Linux anda dengan banyak cara.