chzerv.security

Ansible 角色:安全

重要变更: 从 v0.7 开始,该角色不再支持 security_enforce_strong_passwordssecurity_log_after_failed_loginssecurity_nproc_limit 选项。错误的 PAM 配置可能会使您无法登录系统,因此我需要找到更好的方法来实现这些功能。

请记住,保护您的电脑/服务器是您自己的责任。 这是一个非常基本的模板,应该作为模板使用,而不是完整的解决方案。

该角色在基于 RedHat/Debian/Archlinux 的 Linux 系统上执行一些基本的安全配置,例如:

  • 安装和配置 fail2ban 以监控不良 SSH 登录。
  • 基础 SSH 加固,例如:
    • 禁用 root 登录。
    • 禁用密码认证。
    • 启用基于密钥的认证。
    • 更改默认端口。
    • 禁用已知的弱算法。
  • 设置自动更新。
  • 基础内核加固。
  • 基础 TCP/IP 堆栈加固。
  • 移除您选择的软件包。
  • 通过 limits 禁用核心转储。

要求

  • 运行此角色后,SSH 访问将只能通过公钥进行,因此您的 SSH 密钥必须已复制到远程主机。有关如何轻松复制您的 SSH 密钥到远程主机的信息,请参见 这个 ArchWiki 条目
  • 基本了解每个设置的作用。

角色变量

依赖关系

无。

示例剧本

提供一个如何使用您的角色的示例(例如,传入参数的变量)对用户来说也是很好的:

- hosts: server
  vars_files:
    - vars/main.yml

  roles:
    - { role: chzerv.security }

vars/main.yml 文件:

security_kern_go_hardcore: true
security_net_go_hardcore: true
security_autoupdates_enabled: true
security_autoupdates_type: "security"
security_fail2ban_enabled: true
security_fail2ban_harden_service: true

许可证

MIT / BSD

关于项目

Configure a Linux box to be more secure.

安装
ansible-galaxy install chzerv.security
许可证
mit
下载
173
拥有者
Open Source and Linux enthusiast, with a passion for automation and infrastructure.