如何检查 Linux 系统中所有开放的端口

作为 Linux 系统管理员,通过 TCP(传输控制协议)协议在服务器之间传输数据非常重要。 在 TCP 术语中,我们得到两种端口的概念:打开端口和关闭端口。 网内传输控制协议,凡是接受了数据传输的端口称为开放端口,而数据包被过滤或无法到达的端口称为开放端口 close 港口。 那些一直在使用 Ubuntu 服务器管理的人一定知道不正确维护网络开放端口的破坏性。 开放端口之间的知识和 close 端口是相当反之亦然。 在 Linux 网络系统中,了解开放端口的概念并检查开放端口的可用数量至关重要。

在 Linux 中检查打开的端口

网络端口通常分配在 IP 地址之后。 让你的网络地址后跟一个 16 位的套接字,那么可用端口的总数将是 2^16= 65536。在计算机网络中,我们都熟悉网络地址的概念和类型,如物理地址和本地地址。

每个网络地址都有一个端点,定义了该网络地址的工作类型。 让,我们想从我们的 Gmail 帐户发送一封电子邮件; 在这种情况下,Gmail 使用 SMTP(简单邮件传输协议)系统。 我们知道 SSL(安全套接层)是一个用于识别和安全目的的套接号。

总之,这个套接字叫做端口。 对于 Gmail,默认 SSL 或端口是 465。互联网服务提供商 (ISP) 通常允许其用户从他们的文件传输协议 (FTP) 服务器下载游戏电影。 大多数时候,FTP 服务器是用 Apache Ubuntu 服务器工具,其中端口保持打开并与 IP 地址相关联。 在整篇文章中,我们涵盖了如何在 Linux 和 Ubuntu 中检查开放端口的方法。

端口范围 类别
0 – 1023系统端口
1024 – 49151用户端口
49152 – 65535动态端口

1.检查开放端口使用 nmap Linux中的命令

在 Linux 中,Network Mapper 或 nmap 命令用于检查系统状态、使用的设备、检查当前网络服务以及套接字或端口的可用性。 如果你的 Linux 系统没有 nmap 已安装,对于Ubuntu等Linux版本,可以安装 nmap 通过以下终端命令。 您还可以检查网络映射器的版本。

$ sudo apt-get install nmap
$ nmap --version

– –

之后 nmap 安装完成后,第一步,我们可以检查本地主机地址的端口。 大多数时候,localhost IP 地址是由 127.0.0.1 分配的

$ sudo nmap -sT -O localhost

我们还可以使用以下命令找到传输控制协议 (TCP) 端口 nmap 命令。 这 namp 命令还用于查找特定 IP 地址的可用端口。 让我们检查 IP 192.168.0.1 的端口

$ sudo nmap 192.168.0.1
$ nmap -open 192.168.0.1
$ nmap google.com

2. 查找开放端口使用 netcat Ubuntu 中的命令

之前我们已经看到如何使用传输控制协议检查可用端口。 现在我们将看到如何使用 用户数据报协议 (UDP).

在 Ubuntu 服务器中,这种联网操作是通过使用 nc 或者 netcat 命令。 我必须说,在 Linux 中, netcat 是检查网络套接字的最有力武器。 让您想在 TCP 协议下创建连接,其中端口分配为 2389。

现在您可以运行以下终端命令来创建 TCP 连接。 或者,如果您是客户,您可以访问本地主机; 您也可以运行第二个终端命令。

$ nc -l 2389
$ nc localhost 2389

3. 查找开放端口使用 netstat Linux中的命令

如果您只想检查 UDP 用户数据报协议端口,您还可以使用网络统计信息或 netstat 命令。 这 netstat 命令可以显示接收端和发送端的传输数据。 最后,我们有一个命令可以通过以下命令找到 Linux 中的开放端口 netstat.

$ netstat --listen
$ netstat -lntu
$ netstat -vaun

NGINX 命令也用于监控 Linux 的网络系统。 在这里,我向您介绍一个 nignx 命令可以检查你的 Linux 系统的开放端口。

$ sudo netstat -lntup | grep "nginx"

如果你发现 nignx 无法正常工作,请尝试重新加载 nignx。

$ sudo nginx -t
$ sudo nginx -s reload

要查找 Linux 系统中所有打开的端口,可以使用此终端命令。

$ netstat -antplF

ubuntu 开放端口检查 endp

为了在 Linux 中查找特定的端口状态,有一个 netstat 可以显示所有监听端口的命令。 让,我们的特定端口是 80。

$ sudo netstat -lntup | grep ":80"

4.监控监听端口使用 lsof Ubuntu 中的命令

在 Linux 中,打开文件列表或简称 lsof 命令用于查看打开的文件或目录的列表。 但我们也可以使用 lsof 一些简单的网络任务的命令。 我们可以通过以下方式找到所有开放端口的列表 lsof 命令。 不得不提的是,在Linux中,开放端口也是监听端口的别名。

让,我们要检查连接的外部地址和监听端口使用 lsof 命令。 在这里,监听或监听被称为开放端口。 在终端中,我们可以使用精确数据文本抓取器或全局正则表达式打印,或者简而言之, grep 命令。

$ lsof -i
$ sudo lsof -i -P -n | grep LISTEN
$ lsof -i TCP| fgrep LISTEN

linux 开放端口检查器 lsof

如果要根据网络 IP 地址检查特定端口的状态,可以在 Linux 系统中使用此终端命令。 让,我们要检查端口 80 的状态。

$ sudo lsof -i :80 

5. 查找已建立的端口使用 ss Linux中的命令

在 Linux 中, ss 命令被称为术语 socket statistics. 在这里,套接字被分配为端口。 所以通过使用 ss 命令,我们可以确定Linux系统中开放的端口。 如果你没有 ss 安装在你的Linux中,你可以快速安装 ss 在您的机器上 apt 下面给出的命令。 然后运行 sockstat 终端中的命令。 在输出中,您将找到套接字/端口详细信息。

$ sudo apt install sockstat 
$ sockstat
$ netstat -an |grep LISTEN

sockstat lsof

为了提供更多信息的开放端口检查目的,有一个 lntu Linux 中的命令。 这 lntu 该命令主要查找 TCP 开放端口、UDP 开放端口、软件名称和使用的端口号的详细信息。

$ ss -lntu

最后的想法

对于网络,可以使用 C++ 或 PHP 检查打开的端口,但检查所有打开或侦听端口的最佳方法是使用 Linux 命令行。 这些将使您的时间更有效率。 在这篇文章中,我们试图展示一些检查 Linux 系统开放端口的动态方法。 在 Ubuntu 和 Red Hat 等一些 Linux 发行版中,检查开放端口和 close 出于防火墙安全目的,端口是不可避免的。 您可以使用上述命令找到 SMTP 端口、网络时间协议 (NTP) 端口、HTTP 端口和 UDP 端口。

整篇文章都是关于如何为端口分配 IP 地址以及为什么可以检查 Linux 系统中打开或关闭的端口。 如果你觉得这篇文章有用,请告诉我们你喜欢这篇文章的内容。 你也可以对这篇文章发表评论。 随意在您的 Linux 极客中分享这篇文章。