使用ss命令
默认情况下,在Ubuntu上并未安装NetStat。
而是安装了替代命令SS。
与NetStat一样,SS命令用于在Linux系统上显示网络信息。
netstat和ss命令的选项几乎相同的。
要使用SS命令查看Ubuntu上的所有侦听端口,请运行以下命令:
sudo ss -tunlp
输出示例
NetidState Recv-Q Send-Q Local Address:Port Peer Address:Port udp UNCONN 0 0 127.0.0.53%lo:53 0.0.0.0:* users:(("systemd-resolve",pid=486,fd=12)) udp UNCONN 0 0 0.0.0.0:68 0.0.0.0:* users:(("dhclient",pid=782,fd=6)) udp UNCONN 0 0 0.0.0.0:631 0.0.0.0:* users:(("cups-browsed",pid=2853,fd=7)) udp UNCONN 0 0 0.0.0.0:5353 0.0.0.0:* users:(("avahi-daemon",pid=632,fd=12)) udp UNCONN 0 0 0.0.0.0:38568 0.0.0.0:* users:(("avahi-daemon",pid=632,fd=14)) udp UNCONN 0 0 [::]:34687 [::]:* users:(("avahi-daemon",pid=632,fd=15)) udp UNCONN 0 0 [::]:5353 [::]:* users:(("avahi-daemon",pid=632,fd=13)) tcp LISTEN 0 128 127.0.0.53%lo:53 0.0.0.0:* users:(("systemd-resolve",pid=486,fd=13)) tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:* users:(("sshd",pid=25538,fd=3)) tcp LISTEN 0 5 127.0.0.1:631 0.0.0.0:* users:(("cupsd",pid=2851,fd=7)) tcp LISTEN 0 128 [::]:22 [::]:* users:(("sshd",pid=25538,fd=4)) tcp LISTEN 0 5 [::1]:631 [::]:* users:(("cupsd",pid=2851,fd=6))
使用netstat命令
NetStat是一个命令行工具,可以提供有关网络连接的信息,包括在这些端口通信的IP地址,端口和服务。
如果未安装NetStat工具,请使用下面的命令安装它。
sudo apt install net-tools
如果要列出服务器上可用的所有端口,请运行以下命令:
sudo netstat -tunlp
有关详细命令选项:
- -T显示TCP端口。
- -u显示UDP端口。
- -n显示数字地址而不是解析主机。
- -L仅显示侦听端口。
- -p显示侦听器进程的PID和名称。
输出示例:
Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 127.0.0.53:53 0.0.0.0:* LISTEN 486/systemd-resolve tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 2851/cupsd tcp6 0 0 ::1:631 :::* LISTEN 2851/cupsd udp 0 0 127.0.0.53:53 0.0.0.0:* 486/systemd-resolve udp 0 0 0.0.0.0:68 0.0.0.0:* 782/dhclient udp 0 0 0.0.0.0:631 0.0.0.0:* 2853/cups-browsed udp 0 0 0.0.0.0:5353 0.0.0.0:* 632/avahi-daemon: r udp 0 0 0.0.0.0:38568 0.0.0.0:* 632/avahi-daemon: r udp6 0 0 :::34687 :::* 632/avahi-daemon: r udp6 0 0 :::5353 :::* 632/avahi-daemon: r
如果我们只想看到特定的服务名称或者端口,则可以使用Grep过滤。
sudo netstat -tnlp | grep :22
输出示例:
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 25538/sshd tcp6 0 0 :::22 :::* LISTEN 25538/sshd
使用lsof命令
LSOF命令是Linux系统中另一个允许我们显示网络信息的功能。
使用LSOF命令列出所有侦听TCP端口:
sudo lsof -nP -iTCP -sTCP:LISTEN
输出示例:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME systemd-r 486 systemd-resolve 13u IPv4 15733 0t0 TCP 127.0.0.53:53 (LISTEN) cupsd 2851 root 6u IPv6 36958 0t0 TCP [::1]:631 (LISTEN) cupsd 2851 root 7u IPv4 36959 0t0 TCP 127.0.0.1:631 (LISTEN) sshd 25538 root 3u IPv4 77978 0t0 TCP *:22 (LISTEN) sshd 25538 root 4u IPv6 77980 0t0 TCP *:22 (LISTEN)
日期:2020-07-07 20:55:12 来源:oir作者:oir