如何在 Ubuntu 22.04 上安装 Nmap | 20.04
Nmap代表 Network Mapper,是一种开源工具,已成为全球网络管理员、网络安全专业人员和爱好者的基石。这个功能强大的软件允许用户发现计算机网络上的主机和服务,从而创建系统的“地图”。
Nmap 因其高效、灵活和全面的功能而得到广泛认可。它通常用于网络清单、管理服务升级计划、监控主机或服务正常运行时间等任务,甚至用于渗透测试、网络审计和漏洞检测等更复杂的任务。
这就是为什么作为 Ubuntu 用户,您可能会发现 Nmap 对您的桌面或服务器非常有用:
- 网络安全审计:您可以使用 Nmap 来识别开放端口和在这些端口上运行的服务。这些知识可以帮助您加强防御、关闭不必要的端口以及管理网络上允许的服务。
- 故障排除和网络分析: Nmap 可以诊断网络问题并分析网络的整体性能,使其成为系统和网络管理员的宝贵工具。
- 灵活性和兼容性: Nmap 用途广泛,可以高效地处理各种任务。此外,它与包括 Ubuntu 在内的众多平台兼容,可以轻松集成到现有工作流程中。
- 发现和清点:使用 Nmap,您可以发现网络上的设备、它们的操作系统、它们正在运行的服务,甚至它们正在使用的数据包过滤器和防火墙的类型。
- 开源性质:作为开源,Nmap 拥有广泛的社区支持,这意味着持续更新、广泛的资源和丰富的共享知识。
- 脚本引擎: Nmap 的独特功能之一是其强大的脚本引擎。用户可以编写自己的脚本来自动执行各种网络任务。
作为任何 Ubuntu 桌面或服务器的重要补充,Nmap 的广泛功能对于确保系统的安全性、效率和操作连续性是不可或缺的。无论您是保护小型家庭网络还是管理企业规模的运营,该工具都将证明是一种资产。
在下面的指南中,我们将演示如何使用 APT 包管理器或源代码在 Ubuntu 22.04 Jammy Jellyfish 或 Ubuntu 20.04 Focal Fossa 上安装 Nmap,并开始使用一些基本的 Nmap 命令。您会发现这个过程很简单,并且通过一些练习,使用 Nmap 可以改变您的网络管理和安全方法。
第 1 部分:使用 Ubuntu 存储库安装 Nmap
第 1 步:更新您的 Ubuntu 系统
在开始安装任何新软件之前,确保您的 Ubuntu 系统是最新的非常重要。此步骤可确保顺利安装新软件包,并通过应用最新的补丁和修复程序来增强系统的安全性。
让我们通过在终端中执行以下命令来启动系统更新。此命令对所有包执行更新检查,然后将这些包升级到最新版本:
sudo apt update && sudo apt upgrade
该sudo
命令允许您以超级用户身份运行更新,确保您拥有执行这些操作所需的权限。apt update
从所有已配置的源中获取包信息——本质上,它确保它具有来自每个存储库的最新包列表。在 之后&&
,apt upgrade
安装您已经安装的软件包的新版本,有效地更新您的系统。
第 2 步:从 Ubuntu 存储库安装 Nmap
现在您的 Ubuntu 系统已完全更新,您可以继续安装 Nmap。值得庆幸的是,Ubuntu 在其主要软件存储库中包含 Nmap,这意味着您可以直接安装 Nmap,而无需添加任何额外的存储库或编译任何源代码。
您可以通过运行以下命令来启动 Nmap 的安装:
sudo apt install nmap
此命令将从存储库中获取 Nmap,解决任何依赖关系,然后继续安装。
第 3 步:验证安装
安装过程完成后,验证 Nmap 是否已正确安装并可以使用是至关重要的。确认这一点的一种直接方法是检查系统上安装的 Nmap 版本。
使用以下命令查看Nmap的版本:
nmap --version
该命令nmap --version
将提供详细说明 Nmap 的安装版本和构建的输出。这不仅可以确认 Nmap 已正确安装,还可以确保您使用的是最新版本。
第 2 部分:通过从源代码编译安装 Nmap
在某些情况下,用户可能需要最新版本的 Nmap,或者 Ubuntu 存储库中提供的预打包版本可能无法满足他们的特定需求。从源代码编译 Nmap 为此类用户提供了解决方案,确保您拥有绝对最新的功能和更新。此方法涉及额外的步骤,您需要定期检查更新和重新编译,但它可以为高级用户或特定要求提供好处。
第 1 步:准备——安装开发者工具
在深入研究源代码世界之前,我们需要使用正确的工具来准备我们的系统。“build-essential”包包含一个包的信息列表,这些包被认为是构建 Ubuntu 包所必需的,包括 gcc 编译器、make 和其他必需的工具。这个包将允许我们从源代码编译和构建 Nmap。要安装“build-essential”,请打开您的终端并输入:
sudo apt install build-essential
第二步:获取Nmap源代码
下一步是下载 Nmap 源代码。这可以从官方 Nmap 下载页面获得。在这里,我们将使用“wget”命令下载最新的稳定版本。请注意,在本指南发布时,最新的稳定版本是 7.93,但这可能会有所不同。始终检查下载页面的最新版本号和链接,并相应地调整命令。
要下载 Nmap 源代码,请使用以下命令:
wget https://nmap.org/dist/nmap-7.93.tar.bz2
第 3 步:提取 Nmap 源代码
下载 Nmap 源代码后,我们现在需要从存档中提取文件。为此,请使用以下命令:
bzip2 -cd nmap-7.93.tar.bz2 | tar xvf -
cd nmap-7.93
第 4 步:配置构建
我们现在准备开始配置过程。这为在您的特定系统上编译准备了 Nmap 源代码,确保兼容性和优化的性能。要配置构建,请运行以下命令:
./configure
第五步:编译Nmap
配置构建后,我们现在可以编译源代码。这是使用“make”命令完成的,该命令读取 Nmap 源目录中的“Makefile”并相应地编译源代码:
make
第 6 步:安装 Nmap
现在我们已经成功编译了源代码,我们可以安装 Nmap。此步骤将已编译的程序放置在系统上的适当目录中。要安装 Nmap,请使用以下命令:
make install
第 7 步:验证安装
安装后,确认Nmap已经从源码正确安装,并且是最新版本,这一点很重要。要检查这一点,请使用以下命令:
nmap --version
此命令将显示已安装的 Nmap 版本,该版本应与您下载的源代码版本相对应。至此,您已经成功地在您的 Ubuntu 系统上从源代码编译并安装了最新版本的 Nmap。
第 3 部分:掌握基本的 Nmap 命令
Nmap 提供了大量的命令,这些命令提供了强大而多样的功能,但从基础开始是很重要的。了解这些基本命令将为构建更复杂的网络扫描和映射策略奠定坚实的基础。本节探讨其中一些基本命令及其各自的功能。
第 1 步:执行基本扫描
简单的 ping 扫描是您可以使用 Nmap 执行的最直接的扫描。此扫描测试主机是否可访问和响应。这是通过向目标主机发送 Internet 控制消息协议 (ICMP) 回显请求数据包并等待响应来实现的。
执行以下命令来执行简单的 ping 扫描:
nmap -sn 192.168.1.0/24
在上面的命令中,-sn
指示 Nmap 执行 ping 扫描。指定192.168.1.0/24
要扫描的 IP 地址范围 – 在本例中,它是从192.168.1.1
到192.168.1.254
包含的所有 IP 地址。
第 2 步:扫描特定端口
Nmap 还可以被定向扫描主机上的特定端口。当您想要调查特定服务或怀疑特定端口可能易受攻击时,这会很有用。
使用以下命令扫描特定端口:
nmap -p 80 192.168.1.1
在此命令中,-p
后面跟着80
告诉 Nmap 扫描端口 80(通常用于 HTTP Web 服务)。是192.168.1.1
目标主机的 IP 地址。
第 3 步:扫描多个端口
在你想同时扫描多个端口的情况下,Nmap 提供了一种简单的方法来做到这一点。您只需要列出以逗号分隔的端口。
执行以下命令扫描多个端口:
nmap -p 80,443 192.168.1.1
这里,-p
后面是80,443
指示Nmap同时扫描80端口和443端口(常用于HTTPS服务)。
第 4 步:执行全端口扫描
有时,您可能需要对所有 65535 个端口执行全面扫描。虽然这种类型的扫描很耗时,但它为您提供了主机上开放端口的最完整视图。
这是执行完整端口扫描的命令:
nmap -p- 192.168.1.1
在这种情况下,-p-
指示 Nmap 扫描主机上的所有端口192.168.1.1
。
关于在 Ubuntu Linux 上安装 Nmap 的结束思考
总之,我们使用 Nmap 深入研究了网络安全和探索领域,Nmap 是一个强大而灵活的工具,对于任何从事网络安全、网络管理或相关领域工作的人来说都是必不可少的。我们已经介绍了在 Ubuntu 上安装 Nmap 的过程,包括 22.04 Jammy Jellyfish 和 20.04 Focal Fossa,确保您的系统包事先是最新的。我们还探讨了一些用于网络扫描的基本但基本的 Nmap 命令。
进入 Nmap 功能的旅程仅仅是个开始,因为该工具提供了超出我们所触及范围的广泛特性和功能。它提供了一系列用于网络发现、端口扫描、版本检测等的技术,使其成为您工具箱中必不可少的补充。
其他资源和链接
我们鼓励进一步探索 Nmap 及其各种功能。这里有一些优秀的官方资源,提供了有关 Nmap 的全面信息:
- Nmap 官方文档:这是 Nmap 的官方文档。它包含有关如何使用 Nmap、其选项、命令等的详尽指南。
- Nmap 网络扫描书:由 Nmap 的原作者 Gordon “Fyodor” Lyon 撰写,这是 Nmap 实际使用的官方指南。
- Nmap GitHub 存储库:这是 Nmap 的官方 GitHub 存储库。它提供源代码、最新更新以及有关 Nmap 开发的更多信息。