pam_unix 和 pam_systemd 有什么区别?

pam_unix 和 pam_systemd 有什么区别?

据我所知,pam模块有很多

#ll /usr/lib64/security/ | grep pam | wc -l
57

#ll /usr/lib64/security/ | grep pam_unix.so
lrwxrwxrwx 1 root root     11 Apr 14 23:40 pam_unix_acct.so -> pam_unix.so
lrwxrwxrwx 1 root root     11 Apr 14 23:40 pam_unix_auth.so -> pam_unix.so
lrwxrwxrwx 1 root root     11 Apr 14 23:40 pam_unix_passwd.so -> pam_unix.so
lrwxrwxrwx 1 root root     11 Apr 14 23:40 pam_unix_session.so -> pam_unix.so
-rwxr-xr-x 1 root root  57688 Dec 13  2015 pam_unix.so

#ll /usr/lib64/security/ | grep pam_systemd.so
-rwxr-xr-x 1 root root 267840 Sep 18  2016 pam_systemd.so

pam_unix但是,和之间有什么区别pam_systemd

例如: crond

当我屏蔽时systemd-logind,我发现: crond process ---->pam_systemd----->systemd-logind,但是,是什么让 crond 决定调用pam_systemd但不调用pam_unixpam_unix和 和之间有什么区别pam_systemd

crond[48269]: pam_systemd(crond:session): Failed to create session: Unit systemd-logind.service is masked.

答案1

聚丙烯酰胺表示可插入身份验证模块并且基于RFC 86.0

pam_unixpam_systemd是两个不同的模块,具有不同的作用。根据他们各自的手册页:

pam_unix[是传统密码认证的模块]

[...]

这是标准的 Unix 身份验证模块。它使用系统库中的标准调用来检索和设置帐户信息以及身份验证。通常,如果启用了shadow,则可以从/etc/passwd 和/etc/shadow 文件中获取该信息。

pam_systemd在 systemd 登录管理器中注册用户会话

[...]

pam_systemd 使用 systemd 登录管理器 systemd-logind.service(8) 注册用户会话,从而注册 systemd 控制组层次结构。

相关内容