时间:2021-07-01 10:21:17 帮助过:33人阅读
Requisite:与required相似,只有带有此标记的模块返回成功后,用户才能通过鉴别,不同之处在于,一旦失败就不再执行堆中后面的其他模块,并且鉴别过程到此结束。
Optiona: 即使该模块验证失败,用户仍能通过鉴别。在PAM体系中,带有该标记的模块失败后,将继续处理下一模块。
Sufficiet:该模块取得成功是用户通过鉴别的充分条件,也就是说只要标记sufficient的模块一旦成功,那么PAM便立即向应用程序返回成功而不必尝试任何其他模块。当标记为sufficient的模块失败时,sufficient模块当做 optional对待。
Model_path:指出PAM模块的位置。
Options:用于向特定模块传递相关的选项,然后由模块分析解释这些任选项。比如使用此栏打开模块调试,或向某模块传递诸如超时值之类的参数等。另外,它还用于支持口令映射技术。
三、理解PAM验证模块的配置文件
PAM验证模块的配置文件放在/etc/security/下,这里只介绍limits.conf文件。
Limits文件限制用户进程解析
PAM验证模块/lib/security/pam_limits.so主要是限制用户会话过程中对各种系统资源的使用。其对应的配置文件/etc/security/limits.conf其格式为
Domain type item
用户名/组名软/硬限制 项目
Domain:指被限制的用户名或组
Type:
Soft:当前系统生效的设置值(soft限制不能比hard限制高)
Hard:系统中所能设置的最大值
- :同时设置了soft和hard的值
Item:限制用户的资源类型
core——core文件大小(KB)
data——最大数据大小(KB)
fsize——最大文件大小(KB)
memlock——最大可用内存空间(KB)
nofile——最大可以打开的文件数量
rss——最大可驻留空间(KB)
stack——最大堆栈空间(KB)
cpu——最大CPU使用时间(MIN)
nproc——最大运行进程数
as——地址空间限制
maxlogins——用户可以登录到系统最多次数
locks——最大锁定文件数目
四、理解环境变量文件用户进程限制
而最后对于环境变量文件/etc/profile的更改也是为了修改对当前用户的进程限制。
Ulimit:设定shell启动进程所占用的资源。
-n:设置内核可以同时打开的文件描述符的最大值。
-p:设置管道缓冲区的最大值。
-u:设置用户最多可开启的程序数目。
Linux默认限制了系统用户的最大进程数。为了提高性能,可以根据设备资源情况,设置各linux用户的最大进程数。其中一些设置也可以把参数设置成unlimited,即不加限制。如
数据段长度:ulimit -d unlimited
最大内存大小:ulimit -m unlimited
堆栈大小:ulimit -s unlimited
CPU 时间:ulimit -t unlimited。
虚拟内存:ulimit -v unlimited此外,如果单方面在这个位置为用户设置一些参数,有可能会遇到错误提示如下:
ulimit: max user processes: cannot modifylimit: 不允许的操作
ulimit: open files: cannot modify limit: 不允许的操作
这种情况是因为liunx对用户有默认的ulimits限制,这个默认的限制是保存在/etc/security/limits.conf中,其中的hard配置是个上限,超出上限的修改就会出“不允许的操作”这样的错误,这就是为什么前面要修改limits.conf文件的原因
理解RHEL上安装oracle的配置参数
标签: