适用场景
Lynis 安全审计工具适用于服务器上线前的安全基线检查、定期合规审计(等保、CIS)以及日常安全运维巡检。它能够自动检测系统配置、已安装软件、网络服务与用户权限中的安全弱点并输出可操作建议,覆盖 Linux、Unix 及 macOS 系统。
前置条件
- Linux 发行版(本教程基于 Ubuntu 22.04 / CentOS 7+)
- root 权限或 sudo
- 可访问官方软件仓库或 GitHub
原理说明
Lynis 是开源的安全审计工具,通过内置的 200+ 检查项对系统做静态分析:读取配置文件(如 /etc/ssh/sshd_config)、扫描已安装软件包、检查文件权限与用户策略,最后按类别汇总输出 Hardening Index(加固指数)。指数越高代表系统加固程度越好,报告同时按 Warning/Suggestion 分级给出修复指引。
操作步骤
第一步:安装 Lynis
Ubuntu/Debian:
sudo apt update && sudo apt install -y lynis
CentOS/RHEL(官方仓库):
sudo curl -fsSL https://packages.cisofy.com/keys/cisofy-software-rpms-public.key -o /etc/pki/rpm-gpg/RPM-GPG-KEY-CISOFY
sudo tee /etc/yum.repos.d/cisofy-lynis.repo <<'EOF'
[lynis]
name=CISOfy Lynis repository
baseurl=https://packages.cisofy.com/community/lynis/rpm/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CISOFY
EOF
sudo yum install -y lynis
第二步:执行系统审计
sudo lynis audit system
审计耗时约 1-5 分钟,过程实时显示各检查项状态,结束后报告保存至 /var/log/lynis-report.dat。
第三步:解读审计报告
sudo lynis show details --section "File Permissions"
sudo grep -E "^(hardening_index|lynis_system_scan)" /var/log/lynis-report.dat
Hardening Index 低于 70 时优先处理 Warning 项;建议项按 [Suggestion] 列出,可直接对照执行。
第四步:定时自动化审计
sudo crontab -e
加入每日凌晨审计任务:
0 3 * * * /usr/sbin/lynis audit system --cronjob --report --logfile /var/log/lynis.log 2>/dev/null
配置验证
- 版本确认:
lynis --version - 报告生成:
ls -l /var/log/lynis-report.dat - 指标确认:
grep hardening_index /var/log/lynis-report.dat - 修复高优先级项后重新审计,指数应明显提升
常见问题
Q1:Lynis 与 Nmap、OpenVAS 有什么区别?
Lynis 属于主机加固审计(静态配置检查),不发起网络扫描;Nmap 侧重端口与服务发现,OpenVAS 侧重漏洞扫描,三者定位互补。
Q2:审计结果会误报吗?
部分建议基于通用最佳实践,可能与业务定制配置冲突(如禁止 root SSH 登录)。应逐条评估并结合业务实际取舍,而非全盘照抄。
Q3:可以免 root 运行吗?
内核参数、包管理等检查项需要 root 权限,建议始终以 sudo 运行以获得完整审计结果。
总结
Lynis 是成本最低的系统安全体检手段:安装即用、无需部署代理,输出结构化报告便于与基线、合规要求对照。建议将审计纳入 CI/CD 上线流程或每日定时任务,持续跟踪 Hardening Index 变化,形成安全运维闭环。