应使用trivy或lynis扫描本地已安装软件漏洞:trivy精准匹配发行版cve修复状态,支持deb/rpm离线扫描;lynis混合审计包更新与配置风险,输出可操作建议;避免使用过时的openvas/nessus包。

直接查已安装软件的已知漏洞,不能靠 apt list --installed 或 rpm -qa 自己翻 CVE——必须用能对接实时漏洞数据库的专用工具。否则你看到的只是“装了什么”,不是“它安不安全”。
用 Trivy 扫描本地包(推荐:轻量、离线友好、支持 deb/rpm)
Trivy 是目前对 Linux 发行版原生包支持最稳的开源扫描器,不依赖后台服务,单二进制即可运行,且能精准匹配发行版特定的 CVE 修复状态(比如 Ubuntu 的 USN、RHEL 的 RHSA)。
- Debian/Ubuntu:
sudo apt install wget && wget -qO - https://aquasecurity.github.io/trivy-repo/deb/public.key | sudo apt-key add - && echo "deb https://aquasecurity.github.io/trivy-repo/deb $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/trivy.list && sudo apt update && sudo apt install trivy - RHEL/CentOS 8+:
sudo dnf -y install dnf-plugins-core && sudo dnf config-manager --add-repo https://aquasecurity.github.io/trivy-repo/rpm/trivy.repo && sudo dnf install trivy - 扫描本机所有已安装包:
trivy filesystem --security-checks vuln /(首次运行会下载约 200MB 的漏洞数据库,后续增量更新) - 只扫特定包(如 nginx):
trivy pkg --security-checks vuln nginx,它会自动识别包管理器并查对应源的补丁状态
注意:Trivy 不会误报“版本旧但已打补丁”的情况——它查的是发行版仓库的实际修复记录,不是单纯比对 CVE 公告里的原始版本号。
用 Lynis 做配置+包混合审计(适合日常巡检)
Lynis 不是纯漏洞扫描器,但它会在 audit system 过程中调用系统包管理器接口,交叉比对已安装包版本与发行版当前安全更新列表,同时检查配置弱点(如 SSH 允许 root 登录、日志未轮转),更适合发现“虽无 CVE 但明显高危”的组合风险。
- 安装后直接运行:
sudo lynis audit system - 关键输出在
[+] Security audit results区域,重点关注标为Warning的条目,例如:SSH server using weak cipher或Outdated package: openssl (1.1.1f-1ubuntu2.19 → 1.1.1f-1ubuntu2.20) - 它不会告诉你 CVE-2023-XXXX,但会明确指出“该包有可用安全更新”,且附带升级命令建议(如
sudo apt upgrade openssl)
优势在于:不联网也能跑出部分结果;不依赖外部 feed;输出全是可操作项。缺点是不覆盖第三方源(如 NodeSource、Docker 官方 repo)安装的包。
别碰 apt install openvas 或 yum install nessus(踩坑警告)
Debian/Ubuntu 官方仓库里的 openvas 包是 2019 年前的 GVM 6 残骸,gsad 启动必报 failed to connect to manager;RHEL/CentOS 的 nessus 包早已下线,yum search 都搜不到。它们既无法同步现代 NVT feed,也无法识别发行版定制补丁逻辑。
- 真正要用 OpenVAS/Greenbone,必须走官方 Docker:
docker run -d -p 9392:9392 -p 5432:5432 -v openvas-data:/data --name openvas greenbone/community-container - Nessus 免费版(Home Feed)仅支持手动导入 Nmap 输出,不能直接读取
dpkg -l结果;且 Home 版不包含 Linux 包级漏洞检测插件 - 如果你只是想查“本机装了啥有没有洞”,启动一个 2GB 内存占用的 OpenVAS 容器纯属杀鸡用牛刀
真正容易被忽略的点:很多团队花时间部署重型扫描器,却忘了先跑一遍 trivy filesystem /——它 3 分钟内给出的结果,往往覆盖了 80% 的紧急修复项。工具越重,越要确认它解决的是你真正的问题,而不是让你看起来很忙。











