Cara menyemak port terbuka dalam Linux: 1. Gunakan rpm untuk memasang alat nmap, dan laksanakan arahan "nmap 127.0.0.1" untuk menyemak port terbuka mesin; 2. Jalankan "netstat -anp" untuk menyemak port port terbuka.
Persekitaran pengendalian tutorial ini: sistem linux5.9.8, komputer Dell G3.
1: alat nmap mengesan port terbuka
nmap ialah pengimbasan rangkaian dan Hos alat pengesan. Pemasangan nmap adalah sangat mudah seperti yang ditunjukkan di bawah untuk pemasangan rpm.
[root@DB-Server Server]# rpm -ivh nmap-4.11-1.1.x86_64.rpm warning: nmap-4.11-1.1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 37017186 Preparing... ########################################### [100%] 1:nmap ########################################### [100%] [root@DB-Server Server]# rpm -ivh nmap-frontend-4.11-1.1.x86_64.rpm warning: nmap-frontend-4.11-1.1.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 37017186 Preparing... ########################################### [100%] 1:nmap-frontend ########################################### [100%] [root@DB-Server Server]#
Mengenai penggunaan nmap, anda boleh membacanya dengan panjang lebar dan dekat, jadi saya tidak akan mengembangkannya di sini. Seperti yang ditunjukkan di bawah, nmap 127.0.0.1 menyemak port yang dibuka pada mesin ini dan mengimbas semua port. Sudah tentu, port pelayan lain juga boleh diimbas.
[root@DB-Server Server]# nmap 127.0.0.1 Starting Nmap 4.11 ( http://www.insecure.org/nmap/ ) at 2016-06-22 15:46 CST Interesting ports on localhost.localdomain (127.0.0.1): Not shown: 1674 closed ports PORT STATE SERVICE 22/tcp open ssh 25/tcp open smtp 111/tcp open rpcbind 631/tcp open ipp 1011/tcp open unknown 3306/tcp open mysql Nmap finished: 1 IP address (1 host up) scanned in 0.089 seconds You have new mail in /var/spool/mail/root [root@DB-Server Server]#
2: Alat netstat mengesan port terbuka
boleh lulus " netstat -anp
" untuk melihat port yang dibuka.
(Nota: Menambah parameter '-n' akan menukar aplikasi kepada paparan port, iaitu alamat dalam format digital, seperti: nfs->2049, ftp->21, jadi dua terminal boleh dibuka , sepadan dengan nombor port yang sepadan dengan program satu demi satu)
Sambungan: Periksa sama ada port dibuka
alat lsof mengesan port terbuka
[root@DB-Server Server]# service mysql start Starting MySQL......[ OK ] [root@DB-Server Server]# lsof -i:3306 COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME mysqld 7860 mysql 15u IPv6 44714 TCP *:mysql (LISTEN) [root@DB-Server Server]# service mysql stop Shutting down MySQL..[ OK ] [root@DB-Server Server]# lsof -i:3306 [root@DB-Server Server]#
[root@DB-Server Server]# lsof -i TCP| fgrep LISTEN cupsd 3153 root 4u IPv4 9115 TCP localhost.localdomain:ipp (LISTEN) portmap 3761 rpc 4u IPv4 10284 TCP *:sunrpc (LISTEN) rpc.statd 3797 rpcuser 7u IPv4 10489 TCP *:1011 (LISTEN) sshd 4020 root 3u IPv6 12791 TCP *:ssh (LISTEN) sendmail 4042 root 4u IPv4 12876 TCP localhost.localdomain:smtp (LISTEN)
Gunakan telnet untuk menyemak sama ada port dibuka
Walaupun port pelayan sedang mendengar status, tetapi firewall iptables telah menyekat port, jadi adalah mustahil untuk mengesan sama ada port dibuka melalui kaedah ini.
Alat netcat menyemak sama ada port dibuka
[root@DB-Server ~]# nc -vv 192.168.42.128 1521 Connection to 192.168.42.128 1521 port [tcp/ncube-lm] succeeded! [root@DB-Server ~]# nc -z 192.168.42.128 1521; echo $? Connection to 192.168.42.128 1521 port [tcp/ncube-lm] succeeded! 0 [root@DB-Server ~]# nc -vv 192.168.42.128 1433 nc: connect to 192.168.42.128 port 1433 (tcp) failed: No route to host
Cadangan berkaitan: "Tutorial Video Linux"
Atas ialah kandungan terperinci Bagaimana untuk menyemak port mana yang dibuka di Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!