/etc/pam.d/login和/etc/pam.d/system-auth之间的区别?

我想configurationsecuretty来限制root用户直接访问。 现在我清楚,如果我补充说:

auth required pam_securetty.so 

进入/etc/pam.d/system-auth,并在/ etc / securetty中只保留“console”,sshlogin也会被禁止。 如果我添加:

 auth required pam_securetty.so 

进入/etc/pam.d/login,并且只保留在/ etc / securetty中的“console”,sshlogin不会被禁止。

现在我不清楚/etc/pam.d/login和/etc/pam.d/system-auth之间的区别。 任何人都可以给我一些参考或指导? 非常感谢!

PS /etc/pam.d/login与/etc/pam.d/system-auth也有一点关系,但我想更多地让我更清楚。

Red Hat和类似系统使用/etc/pam.d/system-auth文件将常用安全策略组合在一起。 它通常包含在需要这些通用策略的其他/etc/pam.d策略文件中。

当通过sshd通过ssh访问系统时,会/etc.pam.d/sshd策略文件。 这个文件包含/etc/pam.d/system-auth所以你对/etc/pam.d/system-auth的修改是有效的。

当您通过/ bin / login程序login时,会查阅/etc/pam.d/login文件,因此对其进行的任何更改只会影响/ bin / login。

  • login – 本地规则(控制台login)
  • system-auth – 通用规则许多服务
  • password-auth – 许多远程服务的通用规则
  • sshd – 仅适用于SSHD守护程序的规则

现在我不清楚/etc/pam.d/login和/etc/pam.d/system-auth之间的区别。 任何人都可以给我一些参考或指导?

OpenSSH使用/etc/pam.d/sshd模块。 上将/etc/pam.d/sshd:

 auth include system-auth 

OpenSSH不使用/etc/pam.d/login进行身份validation。 /etc/pam.d/login和/etc/pam.d/system-auth是不同的模块到不同的程序。