使用 IBM Verify 进行双因子认证 (2FA) 的 SSH 示例

您可以使用 "IBM® Verify双因素身份验证功能来增强 SSH 身份验证。

在Linux®SSH 中添加 "Verify 2FA

例如,在 RHEL 7 上执行 SSH 认证,并通过可供 Verify 用户使用的所有 2FAs 选项添加 Verify 2FA 。
此身份验证是针对本地UNIX™密码登录的补充验证。 选择用于2FA登录的 "Verify用户名,如 "user@us.ibm.com。 将用户预订到所需的 2FA 进行测试。
注: 预订过程不在本文档的范围内。
  1. 文件 /etc/pam.d/sshd 控制 SSH 认证。 它使用一个通用的包含文件来验证 "/etc/pam.d/password-auth
    • 为了避免干扰使用通用包含文件的所有进程,将 /etc/pam.d/passsword-auth 复制为 /etc/pam.d/civ-password-auth,以便可以安全地修改文件。
    • 编辑 "/etc/pam.d/sshd,使其包含复制的文件 "civ-password-auth,而不是 "password-auth
    • 编辑 civ-password-auth 并更改以下行。 更改
      auth        sufficient    pam_unix.so nullok try_first_pass
      
      auth        requisite     pam_unix.so nullok try_first_pass
      auth        sufficient    pam_ibm_auth.so auth_method=choice-then-otp 
  2. 确保正确设置了/etc/pam_ibm_auth.json 以与 Verify 服务器进行通信。
  3. 编辑 /etc/ssh/sshd_config。 确保设置并设置 “UsePAM yes” “ChallengeResponseAuthentication yes” 以允许用户 2FA 与 Verify PAM 模块进行交互。
  4. 选择 UNIX 用户以测试 SSH 并将其 GECOS 值编辑为 Verify 用户名。 请参阅 usermodchin
  5. 重新启动 sshd 以确保其使用更新后的配置选项。
  6. SSH 登录到测试用户,查看 2FA 是否生效。

为 AIX® SSH登录添加集中式密码和 2FA 身份验证。

操作系统用户pamuser 被映射到 "Verify租户云目录用户isvuser 以进行身份验证。 Verify用户必须配置了相关的2FA方法。 设置以下内容后,用户pamuser名称和isvuser密码 +2FA用于 SSH 进入主机。 SSH 登录不再使用操作系统用户密码。

注意: 配置并测试此选项时,请确保您拥有其他登录主 AIX 机的替代方法,因为配置错误可能导致SSH登录功能失效。 重启sshd服务器时,还可以保留现有的 ssh 登录信息,以便恢复。
需要修改以下文件。
  1. 编辑 "/etc/passwd(或使用chfn),在所有要使用 ssh 的账户上将映射 OS 用户的 GECOS 值设置为 "Verify用户:
    pamuser:x:1000:1000:Pam User:/home/pamuser:/bin/bash
    pamuser:x:1000:1000:Pam User,isvuser:/home/pamuser:/bin/bash
  2. 编辑 "/etc/pam_ibm_auth.json,确保为操作系统用户到 "Verify用户映射配置了正确的 GECOS 值布局:
    "pam-ibm-auth": {
    	"additional-args": [
    		...
    		“auth_method=password-then-choice-then-otp”,
    		"gecos_field=2”,
    		“gecos_separator=,”,
    		...
    	]
     }
    
    
  3. 编辑 "/etc/pam.conf文件并添加以下几行。
    # Authentication
    sshd    auth    required        pam_ibm_auth
    
    # Account Management
    sshd    account required        pam_aix
    
    # Password Management
    sshd    password  required      pam_aix
    
    # Session Management
    sshd    session required        pam_aix
    
  4. 编辑 "/etc/ssh/sshd_config,确保这些行中包含指定值,如果没有,则添加。
    ChallengeResponseAuthentication yes
    UsePAM yes
    
  5. 编辑 "/etc/security/login.cfg并修改以下一行。
    auth_type = STD_AUTH
    auth_type = PAM_AUTH
  6. 可选: 编辑 "/etc/syslog.conf并添加以下语句,将所有信息和这些更改映射到 "/var/log/messages文件,以记录从 "pam_ibm_auth module记录的错误。
    *.info /var/log/messages rotate size 1m files 8 compress
  7. 可选: 重启syslogd以接收更改。
    # stopsrc -s syslogd; startsrc -s syslogd
  8. 重启 sshd 以接收更改
    # stopsrc -s sshd; startsrc -s sshd