Linux kernel Linux-PAM与内核的关系

Linux kernel Linux-PAM与内核的关系,linux-kernel,relation,pam,Linux Kernel,Relation,Pam,Linux PAM和内核之间的关系是什么?Linux PAM是内核的一部分吗 当我使用sudo,tty时,这种身份验证是在内核空间中完成的吗?PAM完全在用户空间中。它是一组库,供需要验证凭据的程序使用 例如,我的机器上显示的ldd/usr/bin/sudo linux-vdso.so.1 => (0x00007fff30fff000) libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007f5923fd4000)

Linux PAM和内核之间的关系是什么?Linux PAM是内核的一部分吗


当我使用
sudo
tty
时,这种身份验证是在内核空间中完成的吗?

PAM完全在用户空间中。它是一组库,供需要验证凭据的程序使用

例如,我的机器上显示的ldd/usr/bin/sudo

linux-vdso.so.1 => (0x00007fff30fff000) libutil.so.1 => /lib/x86_64-linux-gnu/libutil.so.1 (0x00007f5923fd4000) libpam.so.0 => /lib/x86_64-linux-gnu/libpam.so.0 (0x00007f5923dc7000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f5923bc2000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f592382d000) /lib64/ld-linux-x86-64.so.2 (0x00007f59241fd000) linux vdso.so.1=>(0x00007fff30fff000) libutil.so.1=>/lib/x86_64-linux-gnu/libutil.so.1(0x00007f5923fd4000) libpam.so.0=>/lib/x86_64-linux-gnu/libpam.so.0(0x00007f5923dc7000) libdl.so.2=>/lib/x86_64-linux-gnu/libdl.so.2(0x00007f5923bc2000) libc.so.6=>/lib/x86_64-linux-gnu/libc.so.6(0x00007f592382d000) /lib64/ld-linux-x86-64.so.2(0x00007f59241fd000) 使用PAM库的二进制文件需要以root身份运行(例如,库代码可能需要访问/etc/shadow)