netstat
当我在终端中输入命令时,我得到了以下列表。
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 1 0 localhost:35543 Feddy:http CLOSE_WAIT
tcp 0 0 Feddy:42505 tb-in-f125.1e10:xmpp-client ESTABLISHED
tcp 0 0 Feddy:34534 maa03s05-in-f5.1e100.:https ESTABLISHED
tcp 0 0 localhost:mysql localhost:33292 TIME_WAIT
tcp 0 0 Feddy:55558 stackoverflow.com:http ESTABLISHED
tcp 0 0 Feddy:58290 stackoverflow.com:http ESTABLISHED
tcp 0 0 localhost:mysql localhost:33291 TIME_WAIT
tcp 0 0 Feddy:58279 stackoverflow.com:http ESTABLISHED
tcp 0 0 Feddy:42496 tb-in-f125.1e10:xmpp-client ESTABLISHED
tcp 0 0 Feddy:36830 a96-17-182-73.deploy.a:http ESTABLISHED
udp 0 0 Feddy:39379 192.168.6.1:nat-pmp ESTABLISHED
Active UNIX domain sockets (w/o servers)
Proto RefCnt Flags Type State I-Node Path
unix 2 [ ] DGRAM 8377 /run/systemd/notify
unix 2 [ ] DGRAM 7908 /run/systemd/shutdownd
unix 30 [ ] DGRAM 7922 /dev/log
unix 3 [ ] STREAM CONNECTED 22732
unix 3 [ ] STREAM CONNECTED 608830 @/tmp/dbus-4HbiJa7bKU
unix 2 [ ] DGRAM 90425
unix 3 [ ] STREAM CONNECTED 18947
unix 3 [ ] STREAM CONNECTED 25740
unix 3 [ ] STREAM CONNECTED 23327 @/tmp/dbus-4HbiJa7bKU
unix 3 [ ] STREAM CONNECTED 24162
unix 3 [ ] STREAM CONNECTED 23714
unix 3 [ ] STREAM CONNECTED 22566
unix 3 [ ] STREAM CONNECTED 675499 @/tmp/.ICE-unix/1667
unix 3 [ ] STREAM CONNECTED 91140
unix 3 [ ] STREAM CONNECTED 23601
unix 2 [ ] DGRAM 148102
unix 3 [ ] STREAM CONNECTED 90614
但我没有看到所有开放的端口。例如,我有xampp
服务器在端口号上运行80,oenfire 服务器正在运行的端口号9090. 这些港口在哪里?
答案1
您正在寻找的是带有开关的 netstat -l
,如“listen”。
我们通常所说的“开放端口”实际上是一个程序绑定的监听套接字。它可以位于任何接口(0.0.0.0:端口)或特定于接口的(127.0.0.1:用于“环回”的端口)。当程序绑定到此套接字时,内核会允许以该端口为目的地的数据包并转发它们。如果上述套接字上没有绑定任何程序,则数据包将被丢弃。因此有“开放/关闭”一词。
您可能还想使用-n
开关来阻止 netstat 将端口号和主机地址转换为其各自的名称。
要远程进行测试,请查看nmap
命令。