目录(快速导航)
- 获取 Nessus:选项与建议
- Nessus 支持平台与系统需求(简明表)
- Nessus 安装(Linux / Windows / Docker 简要步骤)
- Nessus 初次配置与激活(使用 Nessus Home / 试用 / 许可激活)
- 创建首次扫描(策略 / 目标 / 认证扫描 / 扫描模板)
- 扫描类型详解:主流扫描模式与何时使用
- 高级配置:认证扫描、合规性扫描、凭证与脚本(Nessus 插件)
- 扫描结果解析:漏洞等级、证据、利用代码、优先级与误报排查
- 报告导出与自动化:Schedule、API、报告格式 (PDF/CSV/HTML/XML)
- 安全与合规注意事项(伦理、合法性、渗透测试授权)
- 性能调优与大规模部署建议(扫描并发、分布式扫描器)
- 常见问题与故障排查清单
- 开源替代:Greenbone/OpenVAS(安装与基础使用)
- 结语:合理使用与持续改进
1. 获取 Nessus:选项与建议
- Nessus Home(免费):适合家庭与学习用途(受限于非商业使用与每次可扫描 IP 数量限制,Tenable 有具体条款)。适合个人练习、学习插件与扫描原理。
- Nessus Professional(付费):适合企业、渗透测试与专业安全工程师,功能与漏洞库实时更新、支持企业用例。可申请试用(通常 7-14 天)。
- Nessus Manager / Tenable.io / Tenable.sc:适合大规模、企业级集中管理与历史审计,带有分布式扫描与合规功能。
2. Nessus 支持平台与系统需求(简明)
(以 Nessus Professional 最新常见版本为例;实际以 Tenable 官方文档为准)
- 支持系统:多数 Linux 发行版(CentOS/RHEL, Ubuntu), Windows Server, macOS(客户端/管理控制台多为 web)。
- 资源建议(单台小型扫描器):
- CPU:2-4 核(扫描较重时建议更多)
- 内存:4-8 GB(大规模扫描 16GB+)
- 磁盘:至少 50GB(插件库和缓存)
- 网络:稳定的出网(用于下载插件并可能连接许可证服务器)
3. Nessus 安装(Ubuntu / Windows / Docker 示例)
注意:下面给出 官方途径 的安装参考命令(适配你所下载的版本)。实际安装前以你下载的具体
.deb、.rpm、.msi文件名为准。
在 Ubuntu / Debian 上(示例)
- 从 Tenable 官网下载对应的
.deb(例如Nessus-<version>-debian6_amd64.deb)。 - 上传到服务器或用 wget 直接下载(示例):
wget https://downloads.nessus.org/nessus3dl.php?file=Nessus-<version>-debian6_amd64.deb -O Nessus.deb sudo dpkg -i Nessus.deb sudo systemctl start nessusd sudo systemctl enable nessusd - 打开浏览器访问
https://<scanner-ip>:8834/进行 web 配置界面(首次访问会提示设置 admin 用户和激活)。
在 CentOS / RHEL(rpm)
- 下载
.rpm,然后:sudo rpm -ivh Nessus-<version>.rpm sudo systemctl start nessusd sudo systemctl enable nessusd - 访问
https://<scanner-ip>:8834/完成配置。
在 Windows(示例)
- 下载 Windows MSI 安装包。
- 以管理员身份运行 MSI,默认安装路径及服务。
- 安装完成后访问
https://localhost:8834/或https://<host-ip>:8834/。
Docker(不常用,仅作提示)
Tenable 并不推荐直接用官方 Docker 镜像生产环境托管;许多用户仍会用容器化方式做临时演示或测试。若用 Docker,需确保端口 8834 暴露并且数据持久化卷正确挂载。
4. Nessus 初次配置与激活(含 Nessus Home / 试用)
- 在浏览器打开
https://<scanner-ip>:8834/,接受证书(自签名)并进入安装向导。 - 创建管理员账号(用户名/密码)——记住不要用简单密码。
- 激活方式:
- Nessus Home:在 Tenable 网站注册并取得 activation code(Home 版通常受 IP 数量限制)。在 web 向导中输入 activation code 即可激活并下载插件集。
- Trial / Professional:在购买或申请试用后得到 activation code,于此处激活。
- 插件更新:激活后 Nessus 会自动下载插件库(这一步可能需要几分钟至十几分钟,视带宽而定)。插件库非常重要——它包含最新的漏洞检测逻辑。
- 账号与访问控制:建议启用 HTTPS(默认 8834),并考虑放置在内网或 VPN 后面以减少外网暴露风险。
5. 创建首次扫描(从零开始)
Nessus 的扫描通常分为:新建扫描任务(New Scan) → 选择模板 → 配置目标与策略 → 启动扫描。
常见扫描模板
- Basic Network Scan:基础的主机漏洞扫描(未使用凭证)。
- Credentialed Patch Audit:利用凭证登录目标进行更深层检测(更准确、可检测补丁情况)。
- Web Application Tests:应用层测试(针对 Web 漏洞)。
- Advanced Scan:可自定义端口/插件/扫描技法。
- Discovery / Host Discovery:仅做活跃主机发现,不做完整漏洞扫描。
创建示例:基础网络扫描
- Dashboard → New Scan → 选择
Basic Network Scan。 - 填写 Name / Description。
- Targets:可以是单个 IP、IP 范围(例如
192.168.1.0/24)或主机名;也可以上传 targets 列表文件。 - Credentials:若想做认证扫描,配置对应的凭证(SSH key/password、Windows WMI/SMB 凭证等)。
- Advanced(可选):设置端口范围、并发扫描线程、超时、插件筛选等。
- 保存并点击
Launch开始扫描。
6. 扫描类型详解:何时用哪种
- 无凭证扫描(Unauthenticated):适合外部渗透测试或黑盒测试;发现公开服务与明显漏洞。优点是快速;缺点是许多内部问题无法检测。
- 有凭证扫描(Authenticated / Credentialed):使用 SSH/SMB/WMI/PsExec 等登录目标后进行深度检查(补丁、配置弱点、文件权限等)。这是最能反映真实风险的方法。
- 合规性扫描(Compliance):对照 CIS、PCI-DSS 等基线检测系统配置项。输出通常是“通过/不通过”的配置项。
- Web 应用扫描:更多关注 HTTP 层面的漏洞(XSS、SQLi、路径穿越等),常需要结合动态应用测试工具。
- 敏感目录 / 自定义插件:可以定制脚本/插件,针对特定环境做检测。
7. 高级配置:认证扫描、合规与插件管理
认证扫描(Credentialed Scans)
- 为什么要做:可以看到补丁是否应用、是否有敏感文件、是否有弱口令、系统配置问题等。
- 常用凭证类型:
- Windows:用户名 + 密码 或域账户(支持 SMB/WMI/WinRM)
- Linux/Unix:SSH 公钥或密码(建议使用密钥)
- 数据库/应用:DB 用户(只读)
- 注意:凭证应尽量只授予最低权限以完成检测(避免授予 root / admin 除非必要)。凭证泄露风险需评估。
合规性扫描
- 在
Policies或Templates中选择合规模板(如 PCI、CIS)。 - 合规项多数需要 credentialed 扫描以验证具体配置项(例如密码策略、补丁级别、审计开关等)。
- 报告将标注哪些配置项不符合基线,便于整改。
插件管理
- Nessus 插件由 Tenable 发布并自动更新;但你可以在管理面板里查看插件状态、更新历史。
- 了解插件编号(Plugin ID)能方便查阅 CVE/修复建议。
8. 扫描结果解析:如何读懂输出并采取行动
Nessus 的结果页面通常包含:主机列表 → 每主机的漏洞列表 → 每漏洞的详情(描述、证据、影响、解决建议、参考链接、CVSS 分数、可被利用的 PoC 等)。
关键字段解释
- Severity / Risk(信息级/低/中/高/严重):Nessus 根据内部规则与 CVSS 给出优先级。不要只盯颜色,要读描述与证据。
- CVSS v3 分数:国际通用评分,帮助量化优先修复顺序。
- Exploitability / Proof:若插件能证明漏洞存在(例如显示某个输出、某文件存在),会在证据(Evidence)中显示命令输出或 HTTP 响应片段。
- 修复建议(Solution):通常给出补丁、配置改动或临时缓解措施。务必验证修复是否影响业务。
排查误报(false positive)
- 核对证据:查看 Plugin 的 Evidence、输出和触发条件。
- 使用凭证重测:有时无凭证检测会误判;用 credentialed scan 确认。
- 临时屏蔽插件:若确认为误报,可以在策略里禁用该插件并重新运行;但需记录原因与决策。
- 版本或环境差异:老旧插件或特殊环境(定制服务)也会引发误报;对比 CVE 与厂商公告。
优先级策略(实用)
- 先修复:高/严重 + 可被利用的漏洞(尤其 RCE、认证绕过、公开可利用的漏洞)。
- 其次:高/中但影响敏感系统(域控制器、数据库、网关设备)。
- 长期计划:低/信息类漏洞与配置改善(可以批量安排)。
9. 报告导出与自动化
- Nessus 支持导出格式:PDF、HTML、CSV、 Nessus XML(用于与 Tenable.sc 等系统对接)。
- 计划扫描(Schedule):可设定定时任务(每天/每周/每月)自动扫描并发送报告到邮箱。
- API 自动化:Nessus 提供 REST API(需要生成 API key)——可以实现扫描触发、获取结果与集成到 CI/CD。
- 示例场景:在补丁管理流程中,定期扫描并把漏洞清单传到票务系统(Jira)以安排修复单。
10. 安全与合规注意事项(必须强调)
- 获得授权:任何对网络/系统的主动扫描都必须有书面授权(安全测试授权书 / scope)。未经授权的扫描可能被视为非法入侵。
- 影响评估:某些扫描(尤其使用 exploit 模块或强度大的插件)可能影响系统可用性;在生产环境运行前请在测试/灰度环境验证。
- 保密凭证:凭证应安全存储(Nessus 有凭证管理),并在测试后定期变更。
- 日志与合规:保留扫描记录与审批过程以满足审计要求(如 PCI、SOX 等)。
- 数据泄露风险:扫描结果包含敏感信息(开放端口、配置、补丁状态),在传输或存储时使用加密、最小权限访问与安全的传输渠道。
11. 性能调优与大规模部署建议
- 并发/线程设置:在策略的 Performance/Advanced 里调整扫描并发数、端口扫描速度与超时,防止对目标造成过大压力。
- 分布式扫描:对于大规模网络,使用分布式扫描器 + 管理服务器(Tenable.sc / Tenable.io)能减轻单点负载。
- 扫描窗口/波次:把大网段拆分为多个波次或在低峰期执行。
- 资源监控:监控 Nessus 主机的 CPU/内存/IO 性能,插件更新期间可能有短时高 CPU 使用率。
- 网络策略:确保扫描器到目标的路由稳定,避免跨国链路导致误判。
12. 常见问题与故障排查清单
- 插件库下载失败:检查出网、DNS、代理设置;查看
/opt/nessus/var/nessus/logs/nessusd.messages(Linux)或相应日志。 - 扫描器无法连接目标:确认网络连通(ping/traceroute),目标防火墙/IPS 规则是否拦截。
- 凭证登录失败:检查凭证正确性与目标的认证策略(例如是否启用 MFA、是否需要特殊权限)。
- 扫描后大量误报:先尝试 credentialed scan;如果依旧,核查插件版本与目标环境的特殊实现。
- 性能问题:降低并发、缩短端口范围或拆分扫描任务;检查 Nessus 主机资源。
13. 开源替代:Greenbone / OpenVAS / GVM(安装与基础使用)
如果你无法使用 Nessus(例如预算或授权问题),可以考虑开源解决方案 Greenbone Vulnerability Manager(GVM,常说的 OpenVAS)。下面给出 Ubuntu 上的简易安装与快速使用步骤(适合学习与中小型环境)。
注意:不同发行版与 GVM 版本差别较大,以下为 Ubuntu 示例并为常见流程,实际以官方文档为准。
在 Ubuntu 上快速安装(示例,使用 apt 或源码)
- 更新系统:
sudo apt update && sudo apt upgrade -y - 安装 GVM(在某些版本中有
gvm包,或使用 Greenbone 社区脚本):sudo apt install -y gvm或使用 Greenbone 官方安装脚本(社区版本有自动安装脚本,需参照官方仓库)。 - 初始化和同步NVT(vuln feeds):
sudo gvm-setup sudo gvm-feed-update - 启动服务并访问 Web 界面(通常在 9392 端口):
sudo gvm-start访问https://<host>:9392/,登录默认 admin 账号或按照初始化提示创建账号。 - 创建扫描任务,和 Nessus 类似:New Task → 设置扫描策略与目标 → Launch。
GVM 的功能和插件生态相比 Nessus 略有差距,但对于漏洞发现、合规检测有良好覆盖,且完全可控/可部署于内网。
14. 结语:合理使用与持续改进
- 使用漏洞扫描工具的核心目的不是“找出多少漏洞”,而是通过持续的发现-修复-验证循环降低真实风险。这需要组织内的责任分工、票务流转、补丁管理与验证流程。
- 建议把漏洞扫描结果纳入补丁管理或 CMDB 流程,结合资产重要性做优先级(资产分级 + CVSS + 可被利用性)。
- 定期审计扫描策略与凭证管理,确保扫描覆盖率与最小化误报。
- 最后再次提醒:不要尝试破解或使用非法 license。如果你或你的组织预算有限,可以考虑 Nessus Home(教育/学习)或部署 GVM/OpenVAS 等开源工具作为短期替代。
