CentOS 系统上启用 2FA

2024-07-28 18:05:24

#### 在 CentOS 系统上安装 Google Authenticator 并配置用户自行设置 2FA 为了增强系统的安全性,可以在 CentOS 系统上安装 Google Authenticator,并允许用户在登录后自行设置两步验证(2FA)。以下是详细步骤: ##### 1. 安装 Google Authenticator 首先,需要安装 Google Authenticator 工具。 ```bash sudo yum install -y google-authenticator ``` 如果在安装过程中遇到“没有可用软件包 google-authenticator”的错误,可能是因为默认的软件仓库中没有该软件包。可以尝试以下方法来解决这个问题: ##### 使用 EPEL 仓库 EPEL(Extra Packages for Enterprise Linux)是一个由 Fedora 社区维护的仓库,提供了许多额外的软件包,包括 Google Authenticator。 1. **安装 EPEL 仓库**: ```bash sudo yum install -y epel-release ``` 2. **更新仓库缓存**: ```bash sudo yum makecache fast ``` 3. **安装 Google Authenticator**: ```bash sudo yum install -y google-authenticator ``` ##### 2. 配置 PAM (Pluggable Authentication Modules) 编辑 `/etc/pam.d/sshd` 文件,添加以下行: ```bash auth required pam_google_authenticator.so nullok ``` `nullok` 选项允许用户在没有 `.google_authenticator` 文件的情况下进行登录。建议将此行添加在 `auth substack password-auth` 的后面,以确保验证码验证在密码验证之后进行。 ##### 3. 配置 SSH 服务 编辑 `/etc/ssh/sshd_config` 文件,找到以下行并修改: ```bash ChallengeResponseAuthentication yes ``` 确保 `UsePAM` 设置为 `yes`: ```bash UsePAM yes ``` ##### 4. 重启 SSH 服务 重启 SSH 服务以应用更改: ```bash sudo systemctl restart sshd ``` ##### 5. 通知用户设置 2FA 通知用户在登录系统后自行设置 2FA。用户可以按照以下步骤操作: 1. **登录系统**: 用户使用普通用户帐户登录系统。 2. **运行 Google Authenticator 命令**: ```bash google-authenticator ``` 运行上述命令后,会有一系列提示,用户按照提示进行操作: 1. **更新 `.google_authenticator` 文件:** - 输入 `y` 确认更新。 2. **禁止同一验证令牌多次使用:** - 输入 `y` 确认禁止,以增加安全性。 3. **调整时间窗口:** - 输入 `y` 扩大时间窗口至17个代码,允许最大4分钟的时间偏差。 - 输入 `n` 保持默认的3个代码窗口,允许最大30秒的时间偏差。 4. **启用速率限制:** - 输入 `y` 启用速率限制,每30秒最多3次登录尝试。 - 输入 `n` 不启用速率限制。 在配置过程中,用户会看到一个二维码和一串密钥。用户可以使用 Google Authenticator 应用扫描二维码,或者手动输入密钥来添加验证器。 ##### 6. 测试 2FA 用户在设置完成后,可以尝试重新登录系统,此时会提示用户输入 Google Authenticator 生成的验证码。 ##### 7. 可选配置 如果你希望对 root 用户也启用 2FA,可以对 root 用户重复上述步骤。 ##### 8. 常见问题 - **如果用户丢失了验证器应用怎么办?** 确保用户有一个备份的恢复代码,或者在配置过程中生成的密钥。 - **如何禁用 2FA?** 用户可以删除 `/home/yourusername/.google_authenticator` 文件,并从 `/etc/pam.d/sshd` 文件中移除 `auth required pam_google_authenticator.so` 行,然后重启 SSH 服务。 通过以上步骤,你可以在 CentOS 系统上安装 Google Authenticator,并让用户在登录后自行设置 2FA,从而提高系统的安全性。

分类:分享     关键词:centos,2FA

评论(0) 浏览(118)