如何找出在Linux中所有开放端口列表

在本文中,我们将简要介绍计算机网络中的端口,以及如何使用netstat和ss命令行工具列出Linux中的所有打开的端口。

在本文中,我们将简要介绍计算机网络中的端口以及如何列出Linux中所有打开的端口。 在电脑联网,更明确在软件方面,一个端口是充当沟通的端点的逻辑实体标识的Linux在给定的应用程序或进程操作系统。 它是一个16位的数字(065535),其区别于另一对端系统一个应用程序。 两种最流行的互联网的传输协议, 传输控制协议 (TCP)用户数据报协议 (UDP)等少已知的协议用于通信会话的端口号(源和目的地端口号与源和目的IP地址一起)。 另外,一个IP地址,端口和协议,如TCP / UDP的组合被称为一个socket,每个服务都必须有唯一的套接字。 以下是不同类别的端口:
  1. 0-1023 -众所周知的端口,也被称为系统端口。
  2. 1024-49151 -已注册的端口,也被称为用户端口。
  3. 49152-65535 -动态端口,也被称为专用端口。
您可以查看在不同的应用程序和端口/协议组合列表/etc/services在Linux中使用文件cat命令
$ cat /etc/services 
OR
$ cat /etc/services | less
网络服务和端口
# /etc/services:
# $Id: services,v 1.48 2009/11/11 14:32:31 ovasik Exp $
#
# Network services, Internet style
# IANA services version: last updated 2009-11-10
#
# Note that it is presently the policy of IANA to assign a single well-known
# port number for both TCP and UDP; hence, most entries here have two entries
# even if the protocol doesn't support UDP operations.
# Updated from RFC 1700, ``Assigned Numbers'' (October 1994).  Not all ports
# are included, only the more common ones.
#
# The latest IANA port assignments can be gotten from
#       http://www.iana.org/assignments/port-numbers
# The Well Known Ports are those from 0 through 1023.
# The Registered Ports are those from 1024 through 49151
# The Dynamic and/or Private Ports are those from 49152 through 65535
#
# Each line describes one service, and is of the form:
#
# service-name  port/protocol  [aliases ...]   [# comment]
tcpmux          1/tcp                           # TCP port service multiplexer
tcpmux          1/udp                           # TCP port service multiplexer
rje             5/tcp                           # Remote Job Entry
rje             5/udp                           # Remote Job Entry
echo            7/tcp
echo            7/udp
discard         9/tcp           sink null
discard         9/udp           sink null
systat          11/tcp          users
systat          11/udp          users
daytime         13/tcp
daytime         13/udp
qotd            17/tcp          quote
qotd            17/udp          quote
msp             18/tcp                          # message send protocol
msp             18/udp                          # message send protocol
chargen         19/tcp          ttytst source
chargen         19/udp          ttytst source
ftp-data        20/tcp
ftp-data        20/udp
# 21 is registered to ftp, but also used by fsp
ftp             21/tcp
ftp             21/udp          fsp fspd
ssh             22/tcp                          # The Secure Shell (SSH) Protocol
ssh             22/udp                          # The Secure Shell (SSH) Protocol
telnet          23/tcp
telnet          23/udp
要列出所有开放端口或正在运行的端口,包括在Linux中 TCPUDP,我们将使用netstat的 ,是监控网络连接和统计数据的有力工具。
使用Netstat命令列出所有网络端口
$ netstat -lntu
Proto Recv-Q Send-Q Local Address               Foreign Address             State      
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      
tcp        0      0 0.0.0.0:25                  0.0.0.0:*                   LISTEN      
tcp        0      0 :::22                       :::*                        LISTEN      
tcp        0      0 :::80                       :::*                        LISTEN      
tcp        0      0 :::25                       :::*                        LISTEN      
udp        0      0 0.0.0.0:68                  0.0.0.0:*                               
哪里,
  1. -l -仅打印监听套接字
  2. -n -显示端口号
  3. -t -启用TCP端口上市
  4. -u -允许UDP端口上市
您还可以使用SS命令,在Linux系统中检查socket一个众所周知的有用的工具。运行以下命令列出所有打开的TCP和UCP端口:
使用ss命令列出所有网络端口
$ ss -lntu
Netid State      Recv-Q Send-Q               Local Address:Port       Peer Address:Port 
udp   UNCONN     0      0                    *:68                     *:*     
tcp   LISTEN     0      128                  :::22                    :::*     
tcp   LISTEN     0      128                  *:22                     *:*     
tcp   LISTEN     0      50                   *:3306                   *:*     
tcp   LISTEN     0      128                  :::80                    ::*     
tcp   LISTEN     0      100                  :::25                    :::*     
tcp   LISTEN     0      100                  *:25  
让它成为一个点,通过阅读上面的命令的手册页更多的使用信息。 总之,理解计算机网络中端口的概念对于系统和网络管理员是非常重要的。你可以同时通过这个netstat的指南简单,准确,很好地解释例子。 最后但同样重要的是,与我们联系,通过共享其他方法在Linux中列出开放端口或通过以下响应表单提出问题。