如果只允许公钥login,在OpenSSH中禁用PAM的缺点是什么?

/etc/ssh/sshd_config默认具有以下行

 UsePAM yes 

我通读了可用的文档,并得出结论说,如果我只使用公钥login,PAM不会被使用。 如果我禁用PAM,会有什么可能的负面后果呢? 例如

 UsePAM no 

PAM不仅仅是进行authentication,而是授权和会话服务。 你可能想保持它,因为它增加了相当多的灵活性。

PAM将被要求成功的pubkeyauthentication,因为会话和帐户服务仍然被检查。

PAM可以做SSH不能做的事情。 这份清单并不详尽:

  • 拒绝用户访问,如果SELinux不在执行模式(如果这是你的东西)。
  • 设置允许的最大进程和最大login次数等资源限制。
  • 根据用户和远程源IP灵活地拒绝用户(也可以在SSH中使用,但在PAM中非常简洁)
  • 设置一系列您可能要传递的环境variables。
  • 如果用户不存在,请为其创build主目录。
  • 根据访问尝试的时间/date拒绝用户。
  • 拒绝不活动的用户。
  • 拒绝使用无效shell的用户。
  • 设置input的关键logging设施。