思博网络 发表于 2019-4-22 13:44:20

如何检查 Linux 中的开放端口列表?

如何检查 Linux 中的开放端口列表? 你可以使用以下四个命令来完成这个工作。这些命令是非常出名的并被 Linux 管理员广泛使用。·      netstat:netstat (“network statistics”) 是一个显示网络连接(进和出)相关信息命令行工具,例如:路由表, 伪装连接,多点传送成员和网络端口。·      nmap:Nmap (“Network Mapper”) 是一个网络探索与安全审计的开源工具。它旨在快速扫描大型网络。·      ss: ss 被用于转储套接字统计信息。它也可以类似 netstat 使用。相比其他工具它可以展示更多的TCP状态信息。·      lsof: lsof 是 List Open File 的缩写. 它用于输出被某个进程打开的所有文件。如何使用 Linux 命令netstat 检查系统中的开放端口列表netstat 是 Network Statistics 的缩写,是一个显示网络连接(进和出)相关信息命令行工具,例如:路由表、伪装连接、多播成员和网络端口。它可以列出所有的 tcp、udp 连接和所有的 unix 套接字连接。它用于发现发现网络问题,确定网络连接数量。# netstat-tplugn Active Internet connections (only servers)Proto Recv-Q Send-Q Local Address         Foreign Address         State       PID/Program nametcp      0      0 0.0.0.0:25            0.0.0.0:*               LISTEN      2038/mastertcp      0      0 127.0.0.1:199         0.0.0.0:*               LISTEN      1396/snmpdtcp      0      0 0.0.0.0:80            0.0.0.0:*               LISTEN      1398/httpdtcp      0      0 0.0.0.0:22            0.0.0.0:*               LISTEN      1388/sshdtcp6       0      0 :::25                   :::*                  LISTEN      2038/mastertcp6       0      0 :::22                   :::*                  LISTEN      1388/sshdudp      0      0 0.0.0.0:39136         0.0.0.0:*                           1396/snmpdudp      0      0 0.0.0.0:56130         0.0.0.0:*                           1396/snmpdudp      0      0 0.0.0.0:40105         0.0.0.0:*                           1396/snmpdudp      0      0 0.0.0.0:11584         0.0.0.0:*                           1396/snmpdudp      0      0 0.0.0.0:30105         0.0.0.0:*                           1396/snmpdudp      0      0 0.0.0.0:50656         0.0.0.0:*                        1396/snmpdudp      0      0 0.0.0.0:1632            0.0.0.0:*                        1396/snmpdudp      0      0 0.0.0.0:28265         0.0.0.0:*                           1396/snmpdudp      0      0 0.0.0.0:40764         0.0.0.0:*                           1396/snmpdudp      0      0 10.90.56.21:123         0.0.0.0:*                           895/ntpdudp      0      0 127.0.0.1:123         0.0.0.0:*                           895/ntpdudp      0      0 0.0.0.0:123             0.0.0.0:*                           895/ntpdudp      0      0 0.0.0.0:53390         0.0.0.0:*                           1396/snmpdudp      0      0 0.0.0.0:161             0.0.0.0:*                           1396/snmpdudp6       0      0 :::123                  :::*                              895/ntpd IPv6/IPv4 Group MembershipsInterface       RefCnt Group--------------- ------ ---------------------lo            1      224.0.0.1eth0            1      224.0.0.1lo            1      ff02::1lo            1      ff01::1eth0            1      ff02::1eth0            1      ff01::1你也可以使用下面的命令检查特定的端口。# # netstat -tplugn | grep :22 tcp      0      0 0.0.0.0:22            0.0.0.0:*               LISTEN      1388/sshdtcp6       0      0 :::22                   :::*                  LISTEN      1388/sshd如何使用 Linux 命令 ss 检查系统中的开放端口列表?ss 被用于转储套接字统计信息。它也可以显示类似 netstat 的信息。相比其他工具它可以展示更多的 TCP 状态信息。# ss-lntu NetidState      Recv-Q Send-Q                     Local Address:Port                                    Peer Address:Portudp    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 Starting Nmap 6.40( http://nmap.org )at 2019-03-20 09:57 CDTNmap scan report forlocalhost (127.0.0.1)Host is up (0.00028slatency).Other addresses forlocalhost (not scanned): 127.0.0.1Not shown: 1994closed ports PORT    STATE SERVICE22/tcp openssh25/tcp opensmtp80/tcp openhttp199/tcp open smux123/udp open ntp161/udp open snmp Device type: general purposeRunning: Linux 3.XOS CPE: cpe:/o:linux:linux_kernel:3OS details: Linux 3.7- 3.9Network Distance:0 hops OS detection performed. Pleasereport any incorrect results at http://nmap.org/submit/.Nmap done: 1IP address (1 host up) scanned in 1.93seconds你也可以使用下面的命令检查特定的端口。# nmap-sTU -O localhost | grep 123 123/udp open ntp如何使用 Linux 命令 lsof 检查系统中的开放端口列表?它向你显示系统上打开的文件列表以及打开它们的进程。还会向你显示与文件相关的其他信息。# lsof-i COMMAND   PID   USER   FDTYPEDEVICE SIZE/OFF NODE NAMEntpd      895    ntp16uIPv4   18481      0t0UDP *:ntpntpd      895    ntp17uIPv6   18482      0t0UDP *:ntpntpd      895    ntp18uIPv4   18487      0t0UDP localhost:ntpntpd      895    ntp20uIPv4   23020      0t0UDP CentOS7.2daygeek.com:ntpsshd   1388   root   3uIPv4   20065      0t0TCP *:ssh (LISTEN)sshd   1388   root   4uIPv6   20067      0t0TCP *:ssh (LISTEN)snmpd    1396   root   6uIPv4   22739      0t0UDP *:snmpsnmpd    1396   root   7uIPv4   22729      0t0UDP *:40105snmpd    1396   root   8uIPv4   22730      0t0UDP *:50656snmpd    1396   root   9uIPv4   22731      0t0UDP *:pammratcsnmpd    1396   root10uIPv4   22732      0t0UDP *:30105snmpd    1396   root11uIPv4   22733      0t0UDP *:40764snmpd    1396   root12uIPv4   22734      0t0UDP *:53390snmpd    1396   root13uIPv4   22735      0t0UDP *:28265snmpd    1396   root14uIPv4   22736      0t0UDP *:11584snmpd    1396   root15uIPv4   22737      0t0UDP *:39136snmpd    1396   root16uIPv4   22738      0t0UDP *:56130snmpd    1396   root17uIPv4   22740      0t0TCP localhost:smux (LISTEN)httpd    1398   root   3uIPv4   20337      0t0TCP *:http (LISTEN)master   2038   root13uIPv4   21638      0t0TCP *:smtp (LISTEN)master   2038   root14uIPv6   21639      0t0TCP *:smtp (LISTEN)sshd   9052   root   3uIPv4 1419955      0t0TCP CentOS7.2daygeek.com:ssh->Ubuntu18-04.2daygeek.com:11408(ESTABLISHED)httpd   13371apache    3uIPv4   20337      0t0TCP *:http (LISTEN)httpd   13372apache    3uIPv4   20337      0t0TCP *:http (LISTEN)httpd   13373apache    3uIPv4   20337      0t0TCP *:http (LISTEN)httpd   13374 apache    3uIPv4   20337      0t0TCP *:http (LISTEN)httpd   13375apache    3uIPv4   20337      0t0TCP *:http (LISTEN)你也可以使用下面的命令检查特定的端口。# lsof-i:80 COMMAND   PID   USERFD   TYPE DEVICE SIZE/OFF NODENAMEhttpd    1398   root   3uIPv420337      0t0TCP *:http (LISTEN)httpd   13371apache    3uIPv420337      0t0TCP *:http (LISTEN)httpd   13372apache    3uIPv420337      0t0TCP *:http (LISTEN)httpd   13373apache    3uIPv420337      0t0TCP *:http (LISTEN)httpd   13374 apache    3uIPv420337      0t0TCP *:http (LISTEN)httpd13375 apache    3uIPv420337      0t0TCP *:http (LISTEN)

思博网络 发表于 2019-8-13 14:15:32

thanks for sharing
页: [1]
查看完整版本: 如何检查 Linux 中的开放端口列表?