如何检查Linux 中的开放端口列表?
你可以使用以下四个命令来完成这个工作。这些命令是非常出名的并被Linux 管理员广泛使用。
· netstat
:netstat (“network statistics”) 是一个显示网络连接(进和出)相关信息命令行工具,例如:路由表, 伪装连接,多点传送成员和网络端口。
· nmap
:Nmap (“Network Mapper”) 是一个网络探索与安全审计的开源工具。它旨在快速扫描大型网络。
· ss
:ss 被用于转储套接字统计信息。它也可以类似netstat 使用。相比其他工具它可以展示更多的TCP状态信息。
· lsof
:lsof 是List Open File 的缩写. 它用于输出被某个进程打开的所有文件。
如何使用Linux net命令stat 检查系统中的开放端口列表
netstat
是Network Statistics 的缩写,是一个显示网络连接(进和出)相关信息命令行工具,例如:路由表、伪装连接、多播成员和网络端口。
它可以列出所有的tcp、udp 连接和所有的unix 套接字连接。
它用于发现发现网络问题,确定网络连接数量。
#netstat-tplugn
ActiveInternetconnections (only servers)
ProtoRecv-Q Send-Q LocalAddress ForeignAddress State PID/Programname
tcp 0 00.0.0.0:25 0.0.0.0:* LISTEN 2038/master
tcp 0 0127.0.0.1:199 0.0.0.0:* LISTEN 1396/snmpd
tcp 0 00.0.0.0:80 0.0.0.0:* LISTEN 1398/httpd
tcp 0 00.0.0.0:22 0.0.0.0:* LISTEN 1388/sshd
tcp6 0 0:::25 :::* LISTEN 2038/master
tcp6 0 0:::22 :::* LISTEN 1388/sshd
udp 0 00.0.0.0:39136 0.0.0.0:* 1396/snmpd
udp 0 00.0.0.0:56130 0.0.0.0:* 1396/snmpd
udp 0 00.0.0.0:40105 0.0.0.0:* 1396/snmpd
udp 0 00.0.0.0:11584 0.0.0.0:* 1396/snmpd
udp 0 00.0.0.0:30105 0.0.0.0:* 1396/snmpd
udp 0 00.0.0.0:50656 0.0.0.0:* 1396/snmpd
udp 0 00.0.0.0:1632 0.0.0.0:* 1396/snmpd
udp 0 00.0.0.0:28265 0.0.0.0:* 1396/snmpd
udp 0 00.0.0.0:40764 0.0.0.0:* 1396/snmpd
udp 0 010.90.56.21:123 0.0.0.0:* 895/ntpd
udp 0 0127.0.0.1:123 0.0.0.0:* 895/ntpd
udp 0 00.0.0.0:123 0.0.0.0:* 895/ntpd
udp 0 00.0.0.0:53390 0.0.0.0:* 1396/snmpd
udp 0 00.0.0.0:161 0.0.0.0:* 1396/snmpd
udp6 0 0:::123 :::* 895/ntpd
IPv6/IPv4GroupMemberships
Interface RefCntGroup
--------------- ------ ---------------------
lo 1 224.0.0.1
eth0 1 224.0.0.1
lo 1 ff02::1
lo 1 ff01::1
eth0 1 ff02::1
eth0 1 ff01::1
你也可以使用下面的命令检查特定的端口。
##netstat-tplugn | grep:22
tcp 0 00.0.0.0:22 0.0.0.0:* LISTEN 1388/sshd
tcp6 0 0:::22 :::* LISTEN 1388/sshd
如何使用Linux 命令ss 检查系统中的开放端口列表?
ss
被用于转储套接字统计信息。它也可以显示类似 netstat
的信息。相比其他工具它可以展示更多的TCP 状态信息。
#ss-lntu
Netid State Recv-Q Send-Q LocalAddress:Port PeerAddress:Port
udp UNCONN 0 0 *:39136 *:*
udp UNCONN 0 0 *:56130 *:*
udp UNCONN 0 0 *:40105 *:*
udp UNCONN 0 0 *:11584 *:*
udp UNCONN 0 0 *:30105 *:*
udp UNCONN 0 0 *:50656 *:*
udp UNCONN 0 0 *:1632 *:*
udp UNCONN 0 0 *:28265 *:*
udp UNCONN 0 0 *:40764 *:*
udp UNCONN 0 0 10.90.56.21:123 *:*
udp UNCONN 0 0 127.0.0.1:123 *:*
udp UNCONN 0 0 *:123 *:*
udp UNCONN 0 0 *:53390 *:*
udp UNCONN 0 0 *:161 *:*
udp UNCONN 0 0 :::123 :::*
tcp LISTEN 0 100 *:25 *:*
tcp LISTEN 0 128 127.0.0.1:199 *:*
tcp LISTEN 0 128 *:80 *:*
tcp LISTEN 0 128 *:22 *:*
tcp LISTEN 0 100 :::25 :::*
tcp LISTEN 0 128 :::22 :::*
你也可以使用下面的命令检查特定的端口。
##ss-lntu | grep':25'
tcp LISTEN 0 100 *:25 *:*
tcp LISTEN 0 100 :::25 :::*
如何使用Linux 命令nmap 检查系统中的开放端口列表?
Nmap (“Network Mapper”) 是一个网络探索与安全审计的开源工具。它旨在快速扫描大型网络,当然它也可以工作在独立主机上。
Nmap 使用裸 IP 数据包以一种新颖的方式来确定网络上有哪些主机可用,这些主机提供什么服务(应用程序名称和版本),它们运行什么操作系统(版本),使用什么类型的数据包过滤器/防火墙,以及许多其他特征。
虽然Nmap 通常用于安全审计,但许多系统和网络管理员发现它对于日常工作也非常有用,例如网络资产清点、管理服务升级计划以及监控主机或服务正常运行时间。
#nmap-sTU -O localhost
StartingNmap6.40( http://nmap.org ) at 2019-03-20 09:57 CDT
Nmapscan report forlocalhost (127.0.0.1)
Hostisup (0.00028slatency).
Otheraddresses forlocalhost (notscanned): 127.0.0.1
Notshown: 1994closed ports
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
80/tcp open http
199/tcp open smux
123/udp open ntp
161/udp open snmp
Devicetype: general purpose
Running: Linux3.X
OS CPE: cpe:/o:linux:linux_kernel:3
OS details: Linux3.7- 3.9
NetworkDistance:0hops
OS detection performed. Pleasereport any incorrect results at http://nmap.org/submit/ .
Nmapdone: 1IP address (1host up) scanned in1.93seconds
你也可以使用下面的命令检查特定的端口。
#nmap-sTU -O localhost | grep123
123/udp open ntp
如何使用Linux 命令lsof 检查系统中的开放端口列表?
它向你显示系统上打开的文件列表以及打开它们的进程。还会向你显示与文件相关的其他信息。
#lsof-i
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
ntpd 895 ntp 16u IPv4 18481 0t0 UDP *:ntp
ntpd 895 ntp 17u IPv6 18482 0t0 UDP *:ntp
ntpd 895 ntp 18u IPv4 18487 0t0 UDP localhost:ntp
ntpd 895 ntp 20u IPv4 23020 0t0 UDP CentOS7.2daygeek.com:ntp
sshd 1388 root 3u IPv4 20065 0t0 TCP *:ssh(LISTEN)
sshd 1388 root 4u IPv6 20067 0t0 TCP *:ssh(LISTEN)
snmpd 1396 root 6u IPv4 22739 0t0 UDP *:snmp
snmpd 1396 root 7u IPv4 22729 0t0 UDP *:40105
snmpd 1396 root 8u IPv4 22730 0t0 UDP *:50656
snmpd 1396 root 9u IPv4 22731 0t0 UDP *:pammratc
snmpd 1396 root 10u IPv4 22732 0t0 UDP *:30105
snmpd 1396 root 11u IPv4 22733 0t0 UDP *:40764
snmpd 1396 root 12u IPv4 22734 0t0 UDP *:53390
snmpd 1396 root 13u IPv4 22735 0t0 UDP *:28265
snmpd 1396 root 14u IPv4 22736 0t0 UDP *:11584
snmpd 1396 root 15u IPv4 22737 0t0 UDP *:39136
snmpd 1396 root 16u IPv4 22738 0t0 UDP *:56130
snmpd 1396 root 17u IPv4 22740 0t0 TCP localhost:smux (LISTEN)
httpd 1398 root 3u IPv4 20337 0t0 TCP *:http (LISTEN)
master 2038 root 13u IPv4 21638 0t0 TCP *:smtp (LISTEN)
master 2038 root 14u IPv6 21639 0t0 TCP *:smtp (LISTEN)
sshd 9052 root 3u IPv41419955 0t0 TCP CentOS7.2daygeek.com:ssh->Ubuntu18-04.2daygeek.com:11408(ESTABLISHED)
httpd 13371apache 3u IPv4 20337 0t0 TCP *:http (LISTEN)
httpd 13372apache 3u IPv4 20337 0t0 TCP *:http (LISTEN)
httpd 13373apache 3u IPv4 20337 0t0 TCP *:http (LISTEN)
httpd 13374apache 3u IPv4 20337 0t0 TCP *:http (LISTEN)
httpd 13375apache 3u IPv4 20337 0t0 TCP *:http (LISTEN)
你也可以使用下面的命令检查特定的端口。
#lsof-i:80
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
httpd 1398 root 3u IPv4 20337 0t0 TCP *:http (LISTEN)
httpd 13371apache 3u IPv4 20337 0t0 TCP *:http (LISTEN)
httpd 13372apache 3u IPv4 20337 0t0 TCP *:http (LISTEN)
httpd 13373apache 3u IPv4 20337 0t0 TCP *:http (LISTEN)
httpd 13374apache 3u IPv4 20337 0t0 TCP *:http (LISTEN)
httpd 13375apache 3u IPv4 20337 0t0 TCP *:http (LISTEN)
即刻预约
免费试听-咨询课程-获取免费资料