15 Contoh perintah sockstat berguna untuk mencari pelabuhan terbuka di FreeBSD

- 2847
- 724
- Clarence Tromp
Sockstat adalah utiliti baris perintah serba boleh yang digunakan untuk memaparkan rangkaian dan sistem membuka soket di FreeBSD. Terutamanya, perintah sockstat dipasang secara lalai dalam freebsd dan ia biasanya digunakan untuk memaparkan nama proses yang membuka port rangkaian tertentu pada sistem freebSd.
Walau bagaimanapun, sockstat boleh juga menyenaraikan soket terbuka berdasarkan versi protokol (kedua -dua versi IP), pada keadaan sambungan dan apa yang pelabuhan daemon atau program mengikat dan mendengar.
Baca juga: 20 Contoh Perintah 'NetStat' berguna untuk memeriksa sambungan rangkaian
Ia juga boleh memaparkan soket komunikasi antara proses, yang biasanya dikenali sebagai soket domain unix atau IPC. Perintah sockstat digabungkan dengan penapis grep atau disalurkan melalui utiliti awk terbukti menjadi alat yang berkuasa untuk timbunan rangkaian tempatan.
Ia dapat mengecilkan hasil untuk sambungan yang dibuka berdasarkan pengguna yang memiliki soket, deskriptor fail soket rangkaian atau PID proses yang membuka soket.
Dalam panduan ini, kami akan menyenaraikan beberapa contoh penggunaan biasa, tetapi juga sangat kuat, utiliti rangkaian baris perintah sockstat di FreeBSD.
Keperluan
- FreeBSD 11.1 panduan pemasangan
1. Senaraikan semua pelabuhan yang dibuka di FreeBSD
Cukup dilaksanakan tanpa sebarang pilihan atau suis, perintah sockstat akan memaparkan semua soket yang dibuka dalam sistem freeBSD, seperti yang digambarkan dalam tangkapan skrin di bawah.
# sockstat

Nilai yang dipaparkan dalam output sockstat digambarkan sebagai:
- Pengguna : Pemilik (akaun pengguna) soket.
- Perintah : Arahan yang dengan membuka soket.
- Pid : ID proses arahan yang memiliki soket.
- FD : Nombor deskriptor fail soket.
- Proto : Protokol pengangkutan (biasanya TCP/UDP) yang dikaitkan dengan jenis soket atau soket yang dibuka dalam kes soket domain UNIX (datagram, aliran atau seqpac) untuk soket UNIX.
- Alamat tempatan : Ia mewakili alamat IP tempatan untuk soket berasaskan IP. Sekiranya soket Unix ia mewakili nama fail endpoint yang dilampirkan pada soket. The
"??"
Notasi menunjukkan bahawa titik akhir soket tidak dapat diiktiraf atau ditubuhkan. - Alamat asing : Alamat IP jauh di mana soket disambungkan ke.
2. Senaraikan mendengar atau dibuka di FreeBSD
Dilaksanakan dengan -L
Bendera, perintah sockstat akan memaparkan semua soket mendengar yang dibuka dalam timbunan rangkaian dan semua soket domain Unix yang dibuka atau paip bernama yang terlibat dalam beberapa jenis pemprosesan data tempatan dalam sistem.
# sockstat -l

3. Senaraikan IPv4 dibuka port di FreeBSD
Untuk memaparkan semua soket yang dibuka untuk IPv4 hanya protokol, mengeluarkan arahan dengan -4
Bendera, seperti yang dicadangkan dalam contoh di bawah.
# sockstat -4

4. Senaraikan port dibuka ipv6 di FreeBSD
Sama dengan versi IPv4, anda juga boleh memaparkan soket rangkaian yang dibuka untuk IPv6 Hanya, dengan mengeluarkan arahan seperti yang ditunjukkan di bawah.
# sockstat -6

5. Senaraikan TCP atau UDP dibuka port di FreeBSD
Untuk memaparkan soket rangkaian hanya berdasarkan protokol rangkaian yang ditentukan, seperti TCP atau UDP, menggunakan -P
bendera, diikuti dengan nama argumen protokol.
Nama protokol boleh didapati dengan memeriksa kandungan /etc/protokol fail. Pada masa ini, protokol ICMP tidak disokong oleh alat sockstat.
Tunjukkan hanya soket TCP
# sockstat -p tcp

Tunjukkan hanya soket UDP
# sockstat -p udp

Rantai kedua -dua protokol.
# sockstat -p tcp, udp
6. Senaraikan nombor port khusus TCP dan UDP
Sekiranya anda ingin memaparkan semua soket TCP atau UDP IP dibuka, berdasarkan nombor port tempatan atau jauh, gunakan bendera dan sintaks perintah di bawah, seperti yang digambarkan dalam tangkapan skrin di bawah.
# sockstat -p tcp -p 443 [Tunjukkan tcp https port] # sockstat -p udp -p 53 [tunjukkan port udp dns] # sockstat -p tcp -p 443,53,80,21 [Tunjukkan kedua -dua TCP dan udp]

7. Senarai port yang dibuka dan disambungkan di FreeBSD
Untuk memaparkan semua soket yang dibuka dan disambungkan, gunakan -c
bendera. Seperti yang ditunjukkan dalam sampel di bawah, anda boleh menyenaraikan semua Https soket yang disambungkan atau semua soket yang disambungkan TCP dengan mengeluarkan arahan.
# sockstat -p tcp -p 443 -c # sockstat -p tcp -c

8. Senaraikan Port Mendengarkan Rangkaian di FreeBSD
Untuk menyenaraikan semua soket TCP yang dibuka dalam keadaan mendengar -L
dan -s
Bendera, seperti yang ditunjukkan dalam contoh di bawah. Menjadi protokol tanpa sambungan, UDP tidak mengekalkan maklumat mengenai keadaan sambungan.
UDP dibuka soket tidak dapat dipaparkan dengan menggunakan keadaan mereka, kerana protokol UDP menggunakan datagrams untuk menghantar/menerima data dan tidak mempunyai mekanisme binaan untuk menentukan keadaan sambungan.
# sockstat -46 -l -s

9. Senaraikan soket unix dan paip bernama
Soket domain Unix, serta bentuk komunikasi antara proses tempatan, seperti paip bernama, boleh dipaparkan oleh perintah sockstat dengan menggunakan -u
bendera, seperti yang ditunjukkan dalam gambar di bawah.
# sockstat -u

10. Senarai port yang dibuka dengan permohonan di FreeBSD
Output arahan sockstat boleh ditapis melalui utiliti grep untuk memaparkan senarai port yang dibuka oleh aplikasi atau arahan tertentu.
Katakan anda ingin menyenaraikan semua soket yang berkaitan dengan Nginx pelayan web, anda boleh mengeluarkan arahan berikut untuk mencapai tugas.
# sockstat -46 | grep nginx

Untuk memaparkan soket yang disambungkan yang berkaitan dengan pelayan web nginx, mengeluarkan arahan berikut.
# sockstat -46 -c | grep nginx
11. Senaraikan protokol yang disambungkan HTTPS
Anda boleh menyenaraikan semua soket yang berkaitan dengan yang berkaitan dengan Https protokol bersama keadaan setiap sambungan dengan menjalankan arahan di bawah.
# sockstat -46 -s -p tcp -p 443 -c

12. Senaraikan Soket Jauh HTTP
Untuk menyenaraikan semua soket terpencil yang berkaitan dengan protokol HTTP, anda boleh menjalankan salah satu kombinasi arahan berikut.
# sockstat -46 -c | Egrep '80 | 443 '| awk 'print $ 7' | uniq -c | sort -nr # sockstat -46 -c -p 80,443 | Grep -v Alamat | Awk 'Print $ 7' | uniq -c | sort -nr

13. Cari permintaan HTTP tertinggi melalui alamat IP
Sekiranya anda ingin mencari berapa banyak sambungan HTTP yang diminta oleh setiap alamat IP jauh, mengeluarkan arahan di bawah. Perintah ini boleh sangat berguna sekiranya anda ingin menentukan sama ada pelayan web anda berada di bawah beberapa jenis serangan DDOS. Sekiranya disyaki, anda harus menyiasat alamat IP dengan kadar permintaan tertinggi.
# sockstat -46 -c | Egrep '80 | 443 '| awk 'print $ 7' | CUT -D: -F1 | uniq -c | sort -nr
14. Senaraikan DNS dibuka soket
Sekiranya anda telah mengkonfigurasi pelayan DNS caching dan ke hadapan di premis anda untuk melayani pelanggan dalaman melalui Protokol Pengangkutan TCP dan anda ingin memaparkan senarai semua soket
dibuka oleh resolver, bersama dengan keadaan setiap sambungan soket, laksanakan arahan berikut.
# sockstat -46 -p tcp -p 53 -s

15. Pertanyaan TCP DNS di domain tempatan
Sekiranya tidak ada trafik DNS di rangkaian, anda boleh mencetuskan pertanyaan DNS secara manual pada soket TCP dari konsol mesin tempatan dengan menjalankan arahan penggali berikut. Selepas itu, mengeluarkan arahan di atas untuk menyenaraikan semua soket resolver.
# DIG +TCP www.domain.com @127.0.0.1

Itu sahaja! Bersama dengan NetStat dan LSOF Command Line Utilities, SockStat Command Line adalah utiliti yang kuat yang digunakan untuk memperoleh maklumat rangkaian dan menyelesaikan masalah pelbagai aspek FreeBSD Networking Stack dan Proses dan Perkhidmatan Berkaitan Rangkaian FreeBSD.
Rakan komando Sockstat FreeBSD di Linux diwakili oleh netstat atau yang baru ss perintah. Percayalah atau tidak, berdasarkan utiliti sockstat, anda dapat mencari aplikasi serupa yang dibangunkan untuk Android OS, bernama Sockstat - Netstat Gui Simple.
- « 11 Cara Mencari Maklumat Akaun Pengguna dan Butiran Log Masuk di Linux
- Cara Memasang dan Konfigurasi 'PowerDns' (dengan MariaDB) dan 'Poweradmin' di RHEL/CentOS 7 »