Ansible Role for Hardening Linux 项目推荐
项目基础介绍和主要编程语言
Ansible Role for Hardening Linux 是一个用于强化 Linux 系统的 Ansible 角色。该项目的主要编程语言是 YAML,因为 Ansible 使用 YAML 作为其配置和剧本的语言。
项目核心功能
该项目的核心功能包括:
- 添加管理用户:创建一个用于管理的普通用户(如用于 Ansible 或 SSH 登录)。
- 调整 APT 更新间隔:配置 APT 包管理器的更新频率。
- 配置 UFW 防火墙:设置 UFW 防火墙并默认只允许 SSH 访问,用户可以根据需要添加更多规则。
- 调整系统安全设置:修改与安全相关的 sysctl 设置。
- 调整 SSH 配置:禁用 SSH 密码认证、禁用 root 用户登录、禁用 PermitTunnel 等。
- 安装和配置 sshguard:安装 sshguard 并调整白名单。
- 修改 root 用户密码:允许用户修改 root 用户的密码。
- 配置网络时间同步:安装和配置 NTP(如 openntpd、ntp 或 systemd-timesyncd)。
- 调整 systemd-resolved 配置:修改 systemd-resolved 的配置。
项目最近更新的功能
最近更新的功能包括:
- 支持 Ubuntu 24.04:新增对 Ubuntu 24.04 的支持。
- 更新注释和文档:更新了关于使用 mkpasswd 而不是 Ansible 创建加密密码的注释。
- 优化 Molecule 测试:使用 alvistack 替代通用的 Vagrant 盒子进行测试,并使用不同的 IP 地址。
- 引入新变量:引入了
harden_linux_deploy_group
和harden_linux_deploy_group_gid
变量,这两个变量是可选的,但如果设置了harden_linux_deploy_user
,则至少需要指定harden_linux_deploy_group
。 - 可选用户设置:
harden_linux_deploy_user
现在是可选的,如果不设置,则不会创建用户。此外,新增了harden_linux_deploy_user_home
变量,用于指定用户的主目录。
通过这些更新,项目在功能性和灵活性上得到了进一步提升,能够更好地满足用户对 Linux 系统强化的需求。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考