linux PAM

1. 特殊的/sbin/nologin

假如我们在创建用户的时候给用户分配了 /sbin/nologin shell, 那么这个用户就无法通过shell命令登录系统.

可以通过编辑/etc/nologin.txt 来显示无法登陆系统后的提示信息.

2. PAM模块

PAM是插入式验证模块,主要用于统一验证方式,可以提供给不同程序相同的验证,也可以根据需求加载不同的验证模块.

3. 示例

执行 cat /etc/pam.d/login 后 我们可以看到linux登录的PAM的设置

 

 

三列分别代表   验证类别,控制标准,PAM模块与参数.

验证类别主要有: 

auth  检验用户身份

account  大部分用于授权,检验用户是否具有正确的权限

session  管理用户本次登录期间,PAM所给予的环境设置.

password 修改密码

控制标准主要有:

required  成功返回success,失败 failure,不终止流程.

requisite 成功返回success,并继续后续的验证流程.

sufficient 成功返回success给原程序,并终止后续验证流程.

optional  用于显示信息,不用于验证.

继续看上面login的PAM配置,有个 pam_nologin.so,如果 /sbin/nologin存在,则不允许登录,所以/sbin/nologin;

常用模块可以百度,有点多,就不总结了.

登录还有个pam_securetty.so模块,主要显示root从安全的终端登录,安全的终端名称可以在/etc/securetty中修改.

telnet远程连接属于pts/n的终端接口设备名称,没有记录在/etc/securetty中,所以无法登陆,但是ssh没有/etc/pam.d/sshd模块,所以可以登录.

 

posted @   随意的马蒂洛克  阅读(498)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2019-01-02 svn 用cmd命令行启动服务
点击右上角即可分享
微信分享提示