上一篇 下一篇 分享链接 返回 返回顶部

如何检查远程Linux服务器系统上端口是否开放?

发布人:Minchunlin 发布时间:2021-02-03 09:47 阅读量:1577

网络端口,简称端口,是分配给任何服务器上运行的进程的一个逻辑编号。我们知道,在互联网上(或任何网络上),一台服务器是由它的主机名来识别的。

主机名可以是简单的机器的IP地址,也可以是一个完全限定的域名。在服务器主机上运行的每个程序都被分配了一个端口号;因此客户机可以访问服务器主机上的程序。

今天,我们将学习如何检查远程Linux服务器系统上的某个端口是否开放。

1、在Linux服务器系统中安装Nmap

Nmap是一个非常流行也非常强大和方便的网络相关任务的命令行工具。您可以在Ubuntu和其他基于Debian的系统中使用apt软件包管理器安装它。

$ sudo apt install nmap

在基于Red Hat的系统中,你可以使用yum或dnf来安装它。

$ sudo yum install nmap

$ sudo dnf install nmap

现在,运行'nmap -v'来验证它是否已经安装。

$ nmap -v

2、检查远程Linux服务器的开放端口

安装完成后,我们就可以执行它来获取系统中的开放端口。要获得远程Linux主机上所有开放端口的列表,运行。

$ nmap hostname/domainname

例如,要检查a5idc.com上的开放端口,运行。

$ nmap a5idc.com

我这里只有2个端口是开放的:HTTP使用的80端口和HTTPS使用的443端口。对于任何网站或Web服务器来说,这是一个正确的配置;只保持HTTP和HTTPS的开放,而关闭所有其他端口,防止非法访问。

然而,这不会扫描所有的端口;事实上,它扫描的是1000个最常用的端口号。要扫描所有的端口,请使用'-p-'参数来运行它。

$ nmap -p- hostname

这需要大量的时间来运行。

3、检查远程Linux服务器上的特定端口是否打开

现在,要检查主机上是否有特定的端口开放,请运行。

运行: $ nmap -Pn -p port_number hostname.

例如,要扫描端口号22,也就是SSH常用的端口号,请运行

$ nmap -Pn -p 22 a5idc.com

如果看到端口号的状态显示为 "filtered"过滤。这种状态意味着该端口号被防火墙或类似的拦截器拦截,因此不能确定端口是开放还是关闭。

如果Nmap可以确定端口是关闭的,状态将显示为 "Closed"。通常,每个网站都会有防火墙或类似的软件来防止端口扫描和网络发现;这些工具通常被黑客恶意使用。

我们了解了 "Nmap "这个工具,以及如何用它来检查远程Linux服务器的开放端口。用Nmap可以做很多类似的事情,网站或虚拟主机是可以防止Nmap扫描它的!

目录结构
全文