我即将使用libpam_google_authenticator对sshlogin进行双因素身份validation。 我希望能够放弃这个要求,当用户从某些IP地址login。
我在/etc/pam.d/sshd有这个:
auth需要pam_google_authenticator.so
而这在/etc/ssh/sshd_config :
ChallengeResponseAuthentication是
我想过在sshd_config使用Match指令,但是联机帮助页build议不能以这种方式使用ChallengeResponseAuthentication 。 无论如何,我不确定这是否会解决pam要求。
有没有一种方法可以免除某些IP地址的客户的挑战 – 响应?
我没有专门做谷歌身份validation,但我正在做类似的pam_access和一个substack。 我在/etc/pam.d中创build一个名为yubi-auth的文件。 它包含:
auth sufficient pam_yubico.so auth required pam_combo.so
然后在password-auth中,我使用auth substack yubi-auth 。 结果是,如果用户来自acceess.conf中经过批准的IP地址,则不必使用yubikey,否则必须使用它。 (如果他们愿意,他们总是可以使用它)。
我没有用谷歌authenticationtesting这种方法,但我认为相同的逻辑应该工作。
你可以用不同的configuration运行两个sshd实例。 在极端情况下:使用一个修补版本(因为这可能不能通过configuration文件),它使用与ssh不同的PAMstring,以便为两个实例创build不同的PAMconfiguration。 或者你在chroot / lxc中启动一个实例,以便看到不同的PAMconfiguration。 这可能更容易(维护)。
客户端select可以通过iptables(DNAT)完成。 只需将相应的客户端发送到第二个实例的端口(或lxc IP)。