pam实现用密钥或者Google身份验证登录ssh吗?

用于密钥没带身上或者不方便用的时候用Google验证器来登录ssh
或者Google身份验证被暴力破解重试次数过多锁死的时候用密钥登录

/etc/pam.d/sshd 要这样:

auth            sufficient      pam_google_authenticator.so

/etc/ssh/sshd_config 的 ChallengeResponseAuthentication 设为 yes

#auth include common-auth
之后貌似就禁用密码登陆了
但不知道有啥副作用没
还有就是yast不是有个pam模块吗?
???
在哪来着?
没看到pam里有密钥的相关设置
果然是sshd单独实现的吗?

顺便问一下 我想远程关机
从安全角度上讲是允许root登陆执行systemctl poweroff(只允许密钥登陆)
还是用普通用户登陆然后允许免密码执行sudo systemctl poweroff比较好(总感觉会不幸手贱 又没密码确认)……

  1. 注释那个有未知后果,不然就不叫 common-auth 了。要禁用密码登录肯定有更好的方法。
  2. 密钥本来就跟 pam 没关系。
  3. 服务器安全应该有一条原则就是什么角色做什么事,Linux 还有一条最基本原则是不要 root 登录,所以我觉得普通用户 sudo 输入 root 密码是最好的

那咋在PAM里更优雅禁用密码验证啊……

外网运维好像也是那条#auth include common-auth
没啥更好的办法之前还是这样了

推荐蓝点网的这篇教程
https://www.landiannews.com/archives/29473.html
opensuse的话不需要装centOS的那两个包,ntp的这个包还是要装的。

默认的时间管理似乎自带NTP