百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

如何使用 ss、netstat、lsof 和 nmap 扫描开放端口

nanshan 2025-01-11 15:49 9 浏览 0 评论

以下是使用端口扫描时会发现的一些常见端口:

  • 端口 21 – FTP(文件传输协议)
  • 端口 22 – SSH(安全外壳)
  • 端口 23 - Telnet
  • 端口 25 - SMTP(简单邮件传输协议)
  • 端口 53 - DNS(域名服务器)
  • 端口 80 - HTTP(超文本传输协议)
  • 端口 110 – POP3(邮局协议)
  • 端口 143 – IMAP(互联网消息访问协议)
  • 端口 443 – HTTPS(安全超文本传输协议)

端口概况

  • 端口0到1023属于标准化端口,互联网编号分配机构 (IANA) 主要负责分配。
  • 默认情况下,端口号1024到49151是为注册服务保留的。但是,这些也分配给客户端程序,尤其是在涉及 Linux 系统时。
  • 端口49152到65535动态地将操作系统分配给客户端。

有很多可用的端口扫描工具,但您也可以使用以下 Linux 命令扫描任何目标机器的开放端口。

开放端口是允许建立完整的 TCP 连接的端口,在这种情况下,端口扫描器已找到响应扫描可用的端口并建立连接。

使用 ss 命令扫描开放端口

ss 命令用于转储套接字统计信息并以与 netstat 类似的方式显示信息,如下所述。

ss 命令还可以显示比大多数其他工具(如 netstat 或 lsof)更多的 TCP 和状态信息。

要使用ss显示正在侦听的 TCP 连接,命令是:

ss -tl

其中,t代表 TCP 端口,l代表侦听套接字。

要显示正在侦听的 UDP 连接,命令是:

ss -ul

其中u代表 UDP 端口。

如果你想同时显示 TCP 和 UDP 连接,命令是:

ss -lntup

其中p代表进程名称

如果要显示所有套接字连接,则可以简单地使用 ss命令。

使用 netstat 扫描开放端口

Netstat,提供所有网络活动的基本统计信息,并通知用户哪些端口和地址对应的连接(TCP、UDP)正在运行,以及哪些端口为任务打开。

要使用 netstat 检查所有打开的端口,命令是:

netstat -pnltu

其中p代表与服务关联的进程 ID,n代表数字编号。正在运行的端口,l代表侦听套接字,t代表 TCP 连接,u代表 UDP 连接。

在 Windows 操作系统中,您可以通过命令行 (cmd.exe) 使用 netstat 服务。

使用 lsof 命令扫描开放端口

lsof 是一个命令行实用程序,适用于所有 Unix 和 Linux 等操作系统,用于检查“打开文件列表”。

lsof 命令主要用于检索有关由各种进程打开的文件的信息,系统中打开的文件可以是不同类型的,如磁盘文件、网络套接字、命名管道和设备。

要显示打开的端口,请键入以下命令:

lsof -i

如果您只想显示打开的套接字,则可以使用:

lsof -n -P | grep LISTEN

要仅显示 TCP 连接,请键入:

lsof -i tcp

使用 Nmap 扫描开放端口

Nmap 是免费的开源网络安全扫描器之一,通常用于网络发现和安全审计,除此之外,您还可以使用NMAP 扫描开放端口、监控主机和网络清单。

在 Kali Linux 中,Nmap 已经预先安装在其中,但对于 Ubuntu 或任何其他 Linux 发行版,您可以通过键入sudo apt install nmap命令来安装 nmap。

对于 Windows 操作系统,Nmap 安装包附带了一个名为 Zenmap 的 Nmap 前端 GUI,用于从用户界面而不是命令行控制 Nmap。

要扫描打开的 TCP 端口,请键入:

nmap -sT -O localhost

上述命令将对目标主机启动 TCP 连接扫描,如果无法进行 TCP SYN 扫描,则 TCP 连接扫描是默认执行的扫描。这种类型的扫描请求底层操作系统尝试使用“连接”系统调用与目标主机/端口连接。

对于 UDP,命令是:

nmap -sU localhost

上述命令将对目标主机发起 UDP 端口扫描,UDP 扫描将 UDP 数据包发送到目标端口,如果收到响应,则端口被分类为打开,如果多次传输后没有收到响应,则端口被分类为开放/过滤。

相关推荐

Let’s Encrypt免费搭建HTTPS网站

HTTPS(全称:HyperTextTransferProtocoloverSecureSocketLayer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入...

使用Nginx配置TCP负载均衡(nginx tcp负载)

假设Kubernetes集群已经配置好,我们将基于CentOS为Nginx创建一个虚拟机。以下是实验种设置的详细信息:Nginx(CenOS8Minimal)-192.168.1.50Kube...

Nginx负载均衡及支持HTTPS与申请免费SSL证书

背景有两台minio文件服务器已做好集群配置,一台是192.168.56.41:9000;另一台是192.168.56.42:9000。应用程序通过Nginx负载均衡调用这两台minio服务,减轻单点...

HTTPS配置实战(https配置文件)

原因现在网站使用HTTPS是规范操作之一,前些日子买了腾讯云服务,同时申请了域名http://www.asap2me.top/,目前该域名只支持HTTP,想升级为HTTPS。关于HTTPS的链接过程大...

只有IP地址没有域名实现HTTPS访问方法

一般来说,要实现HTTPS,得有个注册好的域名才行。但有时候呢,咱只有服务器的IP地址,没注册域名,这种特殊情况下,也能照样实现HTTPS安全访问,按下面这些步骤来就行:第一步,先确认公网...

超详解:HTTPS及配置Django+HTTPS开发环境

众所周知HTTP协议是以TCP协议为基石诞生的一个用于传输Web内容的一个网络协议,在“网络分层模型”中属于“应用层协议”的一种。在这里我们并不研究该协议标准本身,而是从安全角度去探究使用该协议传输数...

Godaddy购买SSL之后Nginx配置流程以及各种错误的解决

完整流程:参考地址:https://sg.godaddy.com/zh/help/nginx-generate-csrs-certificate-signing-requests-3601生成NGI...

Nginx从安装到高可用,一篇搞定(nginx安装与配置详解)

一、Nginx安装1、去官网http://nginx.org/下载对应的nginx包,推荐使用稳定版本2、上传nginx到linux系统3、安装依赖环境(1)安装gcc环境yuminstallgc...

阿里云免费证书申请,配置安装,使用tomcat,支持http/https访问

参数说明商品类型默认已选择云盾证书服务(无需修改)。云盾证书服务类型SSL证书服务的类型。默认已选择云盾SSL证书(无需修改),表示付费版SSL证书。如果您需要免费领取或付费扩容DV单域名证书【免费试...

你试过两步实现Nginx的规范配置吗?极速生成Nginx配置小工具

NGINX是一款轻量级的Web服务器,最强大的功能之一是能够有效地提供HTML和媒体文件等静态内容。NGINX使用异步事件驱动模型,在负载下提供可预测的性能。是当下最受欢迎的高性能的Web...

从零开始搭建HTTPS服务(搭建https网站)

搭建HTTPS服务的最初目的是为了开发微信小程序,因为wx.request只允许发起HTTPS请求,并且还必须和指定的域名进行网络通信。要从零开始搭建一个HTTPS的服务需要下面4...

群晖NAS使用官网域名和自己的域名配置SSL实现HTTPS访问

安全第一步,群晖NAS使用官网域名和自己的域名配置SSL实现HTTPS访问【新手导向】NAS本质还是一个可以随时随地访问的个人数据存储中心,我们在外网访问的时候,特别是在公网IP下,其实会面临着很多安...

让网站快速升级HTTPS协议提高安全性

为什么用HTTPS网络安全越来越受到重视,很多互联网服务网站,都已经升级改造为https协议。https协议下数据包是ssl/tcl加密的,而http包是明文传输。如果请求一旦被拦截,数据就会泄露产生...

用Https方式访问Harbor-1.9版本(https访问流程)

我上周在头条号写过一篇原创文章《Docker-Harbor&Docker-kitematic史上最详细双系统配置手册》,这篇算是它的姊妹篇吧。这篇文章也将用到我在头条写的另一篇原创文章的...

如何启用 HTTPS 并配置免费的 SSL 证书

在Linux服务器上启用HTTPS并配置免费的SSL证书(以Let'sEncrypt为例)可以通过以下步骤完成:---###**一、准备工作**1.**确保域名已解析**...

取消回复欢迎 发表评论: