mablanco.lynis
mablanco.lynis
Ansible角色用于从其Git代码库、官方的tar压缩包或官方Linux包中部署Lynis,一个开源的安全审计工具。它还定期安排每周审计,并将结果报告发送到可自定义的电子邮件帐户。
我建议使用 'git' 方法,因为它总是安装最新版本,而 'tar' 方法仅作为备用,以防目标机器没有git命令行客户端。如果你更喜欢与Linux发行版的最佳集成,可以选择 'pkg' 方法。
角色变量
- lynis_deploy_method:部署方法。默认值为 _'tar'_。可接受的值: _'tar'_, _'git'_, _'pkg'_。当前支持的Linux发行版:Debian、Ubuntu、RHEL、Fedora、CentOS、openSuSE和SLES。
- lynis_home:Lynis将安装的目录。默认值为 '/opt/lynis'
- lynis_url:获取tar压缩包的URL。默认值为 'https://cisofy.com/files'
- lynis_version:要获取的tar压缩包版本。当前默认值为 '2.7.3'
- lynis_package:tar压缩包的名称。默认值为 'lynis-{{ lynis_version }}.tar.gz'
- lynis_git_repo:Git代码库URL。默认值为 'https://github.com/CISOfy/lynis'
- lynis_cron_hour:cron作业的执行小时。默认值为 _'6'_。
- lynis_cron_minute:cron作业的执行分钟。默认值为 _'30'_。
- lynis_cron_dow:cron作业的执行星期几。默认值为 _'7'_。
- lynis_report_from:每周审计报告的发件人电子邮件地址。没有有效的默认值。
- lynis_report_to:每周审计报告的接收人电子邮件地址。没有有效的默认值。
- lynis_log_expire:日志清除前的天数。默认值为 _'90'_。
- lynis_tests_to_skip:在审计运行中要跳过的测试。无默认值,请根据需要填写测试代码列表。
示例剧本
根据选择的部署方法使用此角色的示例:
- hosts: lynis-tar
roles:
- { role: mablanco.lynis, lynis_deploy_method: tar }
- hosts: lynis-git
roles:
- { role: mablanco.lynis, lynis_deploy_method: git }
- hosts: lynis-pkg
roles:
- { role: mablanco.lynis, lynis_deploy_method: pkg }
你也可以在清单中使用 lynis_deploy_method 变量,如下所示:
[lynis-tar]
server01
[lynis-tar:vars]
lynis_deploy_method=tar
如果你想跳过在你的服务器上没有意义的测试,可以在Ansible的任何常用位置为 lynis_tests_to_skip 变量分配一个测试代码列表。例如,在 'vars/main.yml' 文件中:
---
# mablanco.lynis的变量文件
lynis_tests_to_skip:
- SSH-7408
- KRNL-6000
- HOME-9350
许可证
GPLv3