nsswitch & pam
2018-02-25 19:51
239 查看
nsswitch & pam
名称解析: name: id 认证服务: nsswitch: network service switch 提供了一些库文件(.so)以供应用程序调用 解析库: 文件、MySQL、NIS、LDAP、DNS 通用框架,与各存储交互的实现: /usr/lib64/libnss*, /lib64/libnss* 配置文件 /etc/nsswitch.conf db: store1, store2, ... 定义了一个存储库名 具体的存储方案(files or db), files默认建立在/etc目录下,为相应的存储库名 每种存储中查找的结果状态:STATUS => success | notfound | unavail | tryagain 对应于每种状态参数的行为:ACTION => return | continue host: files nis [NOTFOUND=return] dns # getent database [entry] 存储库名 数据检索条件 pam:pluggable authentication module 提供了一些库文件(.so)以供应用程序调用 认证库: 文件、MySQL、LDAP、NIS 通用框架,与各存储交互的实现,以及多种辅助性功能: /lib64/security/ 配置文件:/etc/pam.conf /etc/pam.d/*.conf 通常每个应用使用一个单独的配置文件; 应用程序a, 对应/etc/pam.d/a.conf, a.conf指明应用应调用那个库(/usr/lib64/pam_*.so),实现那种认证机制; 配置文件中每行定义一种检查规则; 格式: type control module-path module-arguments type:检查功能类别 auth: 账号的认证和授权 account:与账号管理相关的非认证功能 password:用户修改密码时密码检查规则 session:用户获取到服务之前或使用服务完成之后要进行的一些附加性操作 control:同一种功能的多个检查之间如何进行组合; 有两种实现机制: 1、使用一个关键词来定义;例如sufficient,required, requisite; 2、使用一或多个“status=action”形式的组合表示 简单机制: required requisite sufficient optional include 复杂机制:[status1=action1,status2=action2,....] status:返回状态, action: ok, done, die, ignore, bad, reset module-path: 模块路径 /lib64/security: 此目录下的模块引用时可使用相对路径; module-arguments: 模块参数 模块: (1) pam_shells.so (2) pam_limits.so 模块通过读取配置文件完成用户对系统资源的使用控制 /etc/security/limits.conf /etc/security/limits.d/* <domain> <type> <item> <value> <domain>: username @group *: 所有用户 <type> soft: hard:由root设定,通过kernel强制生效; -:二者同时限定; <item> nofile: 所能够同时打开的最大文件数量; nproc: 所能够同时运行的最大进程数量; msqqueue:使用的POSIX消息队列能够占用的最大内存空间; sigpending:所能够使用的最大信号数量; <value> vi /etc/security/limits.conf apache - nofile 60000 单用户最大打开文件数量限制; ulimit -n #:文件数量 ulimit -u #:进程数量
相关文章推荐
- glibc静态链接 libc.a(nsswitch.o)(.data+0x64):undefined reference to `_nss_files_getaliasent_r' 错误解决方法
- Linux自学笔记——nsswitch and pam
- Samba nsswitch/pam_winbind.c文件输入验证漏洞
- nsswitch&PAM认证框架
- nsswitch&PAM认证框架
- NS_ENUM & NS_OPTIONS 枚举
- iPhone开发【十七】多线程开发之NSOperation&NSOperationQueue——异步下载图片
- Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<ViewController 0x19862
- IOS 'NSInternalInconsistencyException'
- <6> go select 和 switch
- 关于iOS多线程Pthreads, NSThread, GCD, NSOperation & NSOperationQueue
- OC-FUNDATION-NSString&NSMutableString&NSNumber&NSValue&NSDate
- switch ip & mac binding
- OC语言--字符串(NSString& NSMutableString)
- 关于RMAN恢复中的switch database …
- 安装ns2.30出错"tclcl-1.18 make failed!"
- 报错:'Could not load NIB in bundle: 'NSBundle解决办法
- 面试题:求整数a,b的最大值,不许使用if,switch,<,>,?,:
- 关于'NSConcreteMutableAttributedString initWithString:: nil value'
- #转#关于iOS的NSThread & Run Loop