27.nsswitch & pam&用户对系统资源限制(limit)

nsswitch

1.nsswitch(network service switch):
功能:同一个服务和不同服务可以把它的解析库存放在如:文件、MySQL、NIS、LDAP、DNS等中,每一个不同的存储
都需要一个不同的驱动,nsswitch就是一个名称解析服务的通用框架,与各存储实现交互,可通过配置文件控制
具体实现:/usr/lib64/libnss*, /lib64/libnss*
配置文件:/etc/nsswitch.conf
db: store1, store2, … (存储类型和多个存储位置,第一个找不到可以找后面的)
每种存储中查找的结果状态:STATUS => success | notfound | unavail | tryagain
对应于每种状态参数的行为:ACTION => return | continue
示例:
hosts: files dns myhostname 解析时先找files再找dns然后再找myhostname
hosts: files dns [NOTFOUND=return] 解析时先找files再找dns,如果dns中找不到直接返回不再找continue
2.命令getent:(查找指定存储数据的方式然后查找对应条件的解析库信息)
getent database [entry]
示例:
在这里插入图片描述

pam

  1. pam:pluggable authentication module
    功能:类似于nsswitch,同一个服务和不同服务可以把它的认证库存放在如:文件、MySQL、LDAP、NIS等中,每一个
    不同的存储都需要一个不同的驱动,pam就是一个认证服务的通用框架,与各存储实现交互以及多种辅助功能
    可通过配置文件控制
    具体实现:/lib64/security/
    配置文件:/etc/pam.conf 、 /etc/pam.d/*.conf
    通常每个应用使用一个单独的配置文件;
    配置文件中每行定义一种检查规则;
    格式:
    type control module-path module-arguments

     			      type:检查功能类别
     					auth: 账号的认证和授权
     					account:与账号管理相关的非认证功能
     					password:用户修改密码时密码检查规则
     					session:用户获取到服务之前或使用服务完成之后要进行的一些附加性操作
    
     				control:同一种功能的多个检查之间如何进行组合;
     					有两种实现机制:
     						1、简单机制:使用一个关键词来定义
     												required    无论状态为真或为假都要检查后面的配置行
     												requisite    如果状态为假直接否决不需要检查后续
     												sufficient   如果结果为真则直接通过,无需检查后续操作,如果不通过则检查后续配置行
     												optional     作为参考
     												include      把指定的配置文件中的功能相同的配置行包含进来
     						2、复杂机制:使用一或多个“status=action”形式的组合表示([status1=action1,status2=action2,....])
     												status:返回状态,
     												action: ok, done, die, ignore, bad, reset
    
     				module-path: 模块路径
     					/lib64/security: 此目录下的模块引用时可使用相对路径;
     				module-arguments: 模块参数
    
  2. limit模块:
    (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>
    

3.命令:
ulimit -n #:文件数量
ulimit -u #:进程数量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值