温馨提示×

如何使用双因素身份验证保护CentOS服务器的访问安全

小云
117
2023-10-09 14:36:11
栏目: 云计算

要在CentOS服务器上使用双因素身份验证来保护访问安全,可以按照以下步骤进行操作:

1. 安装所需软件:
  - 在服务器上安装PAM(Pluggable Authentication Modules)库:
    ```
    sudo yum install pam-devel
    ```
  - 安装Google Authenticator库:
    ```
    sudo yum install google-authenticator
    ```

2. 配置Google Authenticator:
  - 运行以下命令以为特定用户生成一个身份验证器密钥:
    ```
    google-authenticator
    ```
    该命令将为您提供一个密钥和一些配置选项。
  - 在配置选项中,您可以选择是否允许用户创建备份代码和支持多个身份验证设备。根据您的需求进行选择。
  - 在完成配置后,Google Authenticator将为您生成一个二维码URL。
  - 使用一个支持Google Authenticator的移动应用程序(例如Google Authenticator或Authy)扫描生成的二维码,以将该服务器添加到应用程序中。

3. 配置PAM模块:
  - 使用文本编辑器打开`/etc/pam.d/sshd`文件:
    ```
    sudo vi /etc/pam.d/sshd
    ```
  - 在文件的开头添加以下行来调用Google Authenticator PAM模块:
    ```
    auth       required     pam_google_authenticator.so
    ```
  - 保存并关闭文件。

4. 配置SSH服务:
  - 使用文本编辑器打开`/etc/ssh/sshd_config`文件:
    ```
    sudo vi /etc/ssh/sshd_config
    ```
  - 确保以下行的值为"yes",以启用使用PAM验证:
    ```
    UsePAM yes
    ```
  - 确保以下行的值为"yes",以启用公钥身份验证:
    ```
    PubkeyAuthentication yes
    ```
  - 保存并关闭文件。

5. 重启SSH服务:
  - 使用以下命令重启SSH服务以使更改生效:
    ```
    sudo systemctl restart sshd
    ```

现在,当用户尝试通过SSH登录到CentOS服务器时,系统将首先要求他们提供用户名和密码,然后再要求输入由Google Authenticator应用程序生成的一次性验证码。这将提供额外的安全层,以确保只有授权的用户能够访问服务器。

0