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模块,所以可以登录.
标签:
linux
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
2019-01-02 svn 用cmd命令行启动服务