PAM 学习笔记

本文涉及的产品
运维安全中心(堡垒机),免费版 6个月
运维安全中心(堡垒机),企业双擎版 50资产 7天
简介:
插入式验证模块( Pluggable Authentication Module PAM
是一套共享函数库API,允许系统管理员来决定应用程式如何识别用户.
clip_image002
注意,
应用程序 ( 服务 ) 必须本身是支持 PAM 认证的 , 也就是说源码里面使用了 PAM API
PAM 的体现结构如下图
clip_image004
认证模块 :
位于/lib/security/和/lib64/security/下,文件名如pam_*.so,例如: pam_access.so
是在其他的UN*X中,你可能会在/usr/lib/security中看到这些文件。
而且模块是可堆叠的,即可以针对一个认证过程调用多个模块进行多种方式的认证,如
/etc/pam.d/samba有如下内容,对于auth这个操作调用了两个认证方式
auth required pam_nologin.so
auth include system-auth
配置文件 :
PAM 的主要特征表现为通过 /etc/pam.d 或 /etc/pam.conf(旧版本) 文件实现动态验证配置
一般在/etc/pam.d目录里,需要为程序设一个配置文件.具体的文件名是写死在程序里的.通常和程序名一样,假设程序名字叫"pamprog",配置文件就是/etc/pam.d/pamprog.
PAM  模块是按模块类型归类的。任何给定的模块至少要实现四种模块类型功能之一:
1.  验证模块(auth)用于验证用户或设置/销毁凭证。如提示输入用户名密码
2.  帐户管理模块(account)将执行与访问、帐户及凭证有效期、密码限制/规则等有关的操作。
3.  密码管理模块将执行与密码更改/更新有关的操作。
4.  会话管理模块用于初始化和终止会话。如记录log,挂上某些档案系统等.
PAM 将提供不同的功能,例如单点登录验证、访问控制等。每个功能的实现都是由不同的模块处理的。下面是一些主要模块:
  • pam_access 将使用登录名/域名,根据 /etc/security/access.conf 中的预定义规则交付日志守护进程样式的登录访问控制。
  • pam_cracklib 将根据密码规则检查密码。
  • pam_env sets/unsets 环境变量来自 /etc/security/pam_env_conf。
  • pam_debug 将调试 PAM。
  • pam_deny 将拒绝 PAM 模块。
  • pam_echo 将打印消息。
  • pam_exec 将执行外部命令。
  • pam_ftp 是匿名访问模块。
  • pam_localuser 要求将用户列于 /etc/passwd 中。
  • pam_unix 将通过 /etc/passwd 提供传统密码验证。

本文转自yahoon 51CTO博客,原文链接:http://blog.51cto.com/yahoon/269395,如需转载请自行联系原作者
相关文章
|
自然语言处理 数据可视化 物联网
Qwen1.5-MoE开源,魔搭社区推理训练最佳实践教程来啦
通义千问团队推出Qwen系列的首个MoE模型,Qwen1.5-MoE-A2.7B。
|
传感器 Java API
Spring揭秘:Aware接口应用场景及实现原理!
Aware接口赋予了Bean更多自感知的能力,通过实现不同的Aware接口,Bean可以轻松地获取到Spring容器中的其他资源引用,像ApplicationContext、BeanFactory等。 这样不仅增强了Bean的功能,还提高了代码的可维护性和扩展性,从而让Spring的IoC容器变得更加强大和灵活。
523 0
Spring揭秘:Aware接口应用场景及实现原理!
|
2月前
|
存储 人工智能 前端开发
Qoder + ADB Supabase :5分钟GET超火AI手办生图APP
本文介绍如何利用Qoder、阿里云ADB Supabase和通义千问图像编辑模型,快速搭建AI手办生图Flutter应用。无需传统后端,实现从前端生成到数据存储、AI服务集成的全链路敏捷开发,展现Vibe Coding的高效实践。
Qoder + ADB Supabase :5分钟GET超火AI手办生图APP
|
5月前
|
机器学习/深度学习 存储 人工智能
什么是多因素认证(MFA)
MFA(多因素认证)是一种增强型身份验证方法,通过结合知识、占有和生物特征等多种因素,提升账户与系统访问的安全性,广泛应用于企业安全与数据保护。
1250 19
|
Java Nacos Docker
通过dockerfile构建微服务的镜像发布
通过dockerfile构建微服务的镜像发布
264 1
|
弹性计算 运维 自然语言处理
开发者评测|操作系统智能助手OS Copilot
OS Copilot 是阿里云针对Linux操作系统推出的一款智能助手,它利用大模型技术提供自然语言问答、辅助命令执行和系统运维调优等功能,旨在提高Alibaba Cloud Linux的使用效率。OS Copilot在新人上手时并不简单,文档指引不够清晰,存在一些步骤无法顺利执行的问题,比如环境配置和命令执行。此外,产品目前仅支持Alibaba Cloud Linux,限制了其应用范围。虽然OS Copilot在一些基本功能上表现尚可,如解答问题和编写简单脚本,但在处理复杂任务或自动化运维时显得不足。总体而言,OS Copilot对新手和阿里云环境有一定的帮助,但功能和使用体验仍有改进空间。
|
运维 负载均衡 监控
提升系统性能:高效运维的秘密武器——负载均衡技术
在当今数字化时代,系统的高可用性和高性能成为各类企业和组织追求的目标。本文旨在探讨负载均衡技术在运维工作中的关键作用,通过深入分析其原理、类型及实际应用案例,揭示如何利用这项技术优化资源分配,提高系统的响应速度和可靠性,确保用户体验的稳定与流畅。无论是面对突如其来的高流量冲击,还是日常的运维管理,负载均衡都展现出了不可或缺的重要性,成为现代IT架构中的基石之一。
663 4
|
Windows
开源批量卸载工具
【10月更文挑战第5天】
509 2
|
安全 网络安全 数据安全/隐私保护
Pikachu File Inclusion 通关解析
Pikachu File Inclusion 通关解析
|
数据采集 传感器 监控
LabVIEW的热门应用
LabVIEW的热门应用
325 0