Linux用户密码策略要求
- 格式:doc
- 大小:113.50 KB
- 文档页数:11
linux查询密码策略在Linux系统中,密码策略是用来控制用户密码的安全性和复杂性的规则集合。
通过密码策略,可以强制用户设置强密码、定期更改密码、限制密码重复使用等,以增加系统的安全性。
下面是关于Linux密码策略的多个角度的回答:1. 查看密码策略文件,Linux系统中的密码策略通常存储在/etc/login.defs文件中。
你可以使用文本编辑器(如vi或nano)打开该文件,并查看其中的配置参数。
2. 密码复杂性要求,密码策略通常会要求密码具有一定的复杂性,例如长度要求、包含大小写字母、数字和特殊字符等。
这些要求可以在密码策略文件中找到,例如minlen表示密码最小长度。
3. 密码过期策略,密码策略还可以设置密码的过期时间,强制用户定期更改密码。
在密码策略文件中,你可以找到参数如PASS_MAX_DAYS表示密码的最大有效天数,PASS_MIN_DAYS表示密码更改间隔的最小天数,PASS_WARN_AGE表示在密码过期前提醒用户的天数。
4. 密码历史记录,为了防止用户反复使用相同的密码,密码策略可以限制密码的历史记录。
这意味着用户不能在一定的时间内重复使用之前使用过的密码。
在密码策略文件中,你可以找到参数如remember表示记录密码历史的数量。
5. 锁定策略,密码策略还可以设置账户在多少次登录失败后被锁定一段时间,以防止暴力破解。
在Linux系统中,可以通过查看/etc/pam.d/system-auth文件来了解锁定策略的配置。
6. 特权用户密码策略,除了普通用户,特权用户(如root)的密码策略也是非常重要的。
通常,特权用户的密码策略要求更加严格,以确保系统的安全性。
可以在密码策略文件中找到特权用户的相关配置。
7. 使用密码策略工具,除了手动查看密码策略文件,还可以使用一些命令行工具来查看和管理密码策略。
例如,passwd命令可以用于更改用户密码,chage命令可以用于管理用户的密码过期策略。
linux系统密码复杂度策略
Linux系统密码复杂度策略可以通过配置文件
/etc/pam.d/system-auth和/etc/pam.d/common-password来进行设置。
以下是一些常见的密码复杂度策略:
1. 密码长度限制:可以通过设置“minlen”参数指定密码的最小
长度,例如“minlen=8”表示密码至少需要8个字符。
2. 密码复杂度要求:可以通过设置“dcredit”(数字)、“ucredit”(大写字母)、“lcredit”(小写字母)、“ocredit”(特殊字符)参数来限制密码中字符的种类和数量,例如“ucredit=-1”表示
密码中至少需要一个大写字母。
3. 密码历史记录:可以通过设置“remember”参数来指定密码历史记录的个数,例如“remember=5”表示在密码修改过程中,
系统会记住最近5个密码,新密码不能与这些密码相同。
4. 密码过期:可以通过设置“maxage”参数来指定密码的过期时间,例如“maxage=90”表示密码在90天后过期。
5. 密码锁定:可以通过设置“deny”参数来指定密码锁定的策略,例如“deny=3”表示在连续3次密码错误后,账户会被锁定。
这些策略可以根据具体需求进行配置,并可以进行组合使用。
配置完成后,需要重启系统或者重启相应的服务才能生效。
linux 用户鉴别安全策略
Linux 用户鉴别安全策略是确保只有经过授权的用户才能访问系统资源的措施。
以下是一些通用的 Linux 用户鉴别安全策略:
1. 使用强密码:要求用户使用强密码,包含大小写字母、数字和特殊字符,并设置密码长度的最小要求。
2. 禁用或限制 root 用户:root 用户具有最高权限,因此应禁止远程登录或限制其登录权限。
3. 启用账号锁定:设置登录失败尝试次数的上限,并锁定账号一段时间以防止恶意攻击。
4. 限制提权:限制用户通过 su 或 sudo 命令获取 root 权限,并记录提权操作。
5. 定期更改密码:要求用户定期更改密码,以提高系统的安全性。
6. 使用二次验证:使用像 Google Authenticator 这样的二次验证工具,要求用户在登录时提供额外的身份验证。
7. 建立访问控制列表(ACL):在文件和文件夹上设置 ACL,以控制特定用户或用户组的访问权限。
8. 软件和系统更新:及时安装操作系统和软件的更新,以修复已知的安全漏洞。
9. 限制网络访问:配置防火墙规则,限制从外部网络访问系统的连接。
10. 监控和审计:监控用户活动,记录登录和操作日志,并进行定期审计以及检查异常行为。
这些策略可以帮助保护 Linux 系统的安全,但需要根据具体的情况和需求来进行定制化的配置和管理。
Linux安全加固手册
可用离线破解、暴力字典破解或者密码网站查询出帐号密钥的密码是否是弱口令
2)修改vi /etc/login.defs配置密码周期策略
此策略只对策略实施后所创建的帐号生效,以前的帐号还是按99999天周期时间来算。
3)/etc/pam.d/system-auth配置密码复杂度:
在文件中添加如下一行:
password requisite pam_cracklib.so retry=3 difok=2 minlen=8 lcredit=-1 dcredit=-1
参数含义如下所示:
difok:本次密码与上次密码至少不同字符数
minlen:密码最小长度,此配置优先于login.defs中的PASS_MAX_DAYS
ucredit:最少大写字母
lcredit:最少小写字母
dcredit:最少数字
retry:重试多少次后返回密码修改错误
【注】用root修改其他帐号都不受密码周期及复杂度配置的影响。
1.2登录失败策略
要求:应启用登录失败处理功能,可采取结束会话、限制非法
登录次数和自动退出等措施。
目的:遭遇密码破解时,暂时锁定帐号,降低密码被猜解的可
能性
操作步骤:。
linux7 系统用户密码安全策略在Linux 7系统中,用户密码安全策略可以通过以下几种方式进行设置和管理:1.密码策略文件:可以通过编辑/etc/login.defs文件来设置密码策略。
这个文件包含了与账户密码相关的各种配置选项。
例如,你可以设置密码有效期(PASS_MAX_DAYS)、密码最小使用期限(PASS_MIN_DAYS)、密码最小长度(PASS_MIN_LEN)等。
2.PAM配置文件:PAM(Pluggable Authentication Modules)是Linux下的一个身份验证机制,可以通过配置PAM来实施更复杂的密码策略。
例如,你可以在/etc/pam.d/common-password 文件中添加配置,实现密码强度检查。
3.定期更换密码:为了增强安全性,建议定期更换用户密码。
你可以通过设置PASS_MAX_DAYS参数来控制密码的有效期,然后设置一个提醒系统,在密码过期前通知用户更换。
4.密码强度要求:为了防止弱密码导致的安全风险,可以设置密码强度检查。
例如,你可以要求密码至少包含大小写字母、数字和特殊字符等。
5.禁用root账户:在大多数情况下,直接使用root账户进行日常操作是不安全的。
建议为普通用户分配权限,然后通过sudo 等方式执行需要root权限的操作。
6.审计和监控:使用审计工具定期检查和监控系统上的用户活动,包括登录、密码修改等,以便及时发现任何可疑行为。
7.使用两步验证:为了提高安全性,可以考虑使用两步验证。
这意味着用户在登录时除了输入密码外,还需要提供另一种验证方式(如手机验证码、硬件令牌等)。
8.安全地存储和管理密码:对于管理员和具有敏感权限的用户,建议使用加密和安全的密码管理工具来存储和管理密码。
以上只是一些基本的策略和建议,实际的安全措施应根据组织的具体需求和风险承受能力来制定。
Linux系统⽤户密码规则-运维总结随着linux使⽤的普遍,对于linux⽤户以及系统的安全要求越来越⾼,⽽⽤户密码复杂程度是系统安全性⾼低的⾸要体现。
因此如何对linux 下⽤户的密码进⾏规则限制,以保证⽤户必须使⽤复杂的密码,杜绝⽤户随意使⽤简单的密码,从⽽提⾼⽤户的安全性和系统的安全性。
下⾯以Centos7系统为例,出于安全考虑,对⽤户密码规则复杂度的设置进⾏梳理:⼀、设置密码规则1)密码长度、有效期/etc/login.defs⽂件是当创建⽤户时的⼀些规划,⽐如创建⽤户时,是否需要家⽬录,UID和GID的范围;⽤户的期限等等,这个⽂件是可以通过root来定义的。
PASS_MAX_DAYS 90 —-两次改变密码之间相距的最⼤天数,密码有效最⼤天数PASS_MIN_DAYS 6 —-两次改变密码之间相距的最⼩天数,为零时代表任何时候都可以更改密码PASS_MIN_LEN 6 —-密码最⼩长度PASS_WARN_AGE 30 —-在密码过期之前警告的天数注意:以上只对之后新增的⽤户有效,如果要修改已存在的⽤户密码规则,需要使⽤chage命令2)查看⽤户的密码规则Last password change : Sep 11, 2018Password expires : Sep 30, 2030Password inactive : neverAccount expires : neverMinimum number of days between password change : 6Maximum number of days between password change : 90Number of days of warning before password expires : 7翻译过来:最近⼀次密码修改时间: 9⽉ 11, 2018密码过期时间: 9⽉ 30, 2030密码失效时间:从不帐户过期时间:从不两次改变密码之间相距的最⼩天数:6两次改变密码之间相距的最⼤天数:90在密码过期之前警告的天数:7=============================================================chage是⽤了修改账户有效期限的命令。
linux操作系统安全配置内容
1. 更新操作系统:确保在系统中安装了最新的安全补丁和更新,以修复已知的漏洞和弱点。
2. 强密码策略:设置密码策略,要求用户使用强密码,包括至少8个字符,包含字母、数字和
特殊字符,并定期更改密码。
3. 用户权限管理:为每个用户分配适当的权限,并限制对敏感文件和系统配置的访问权限。
避
免使用管理员权限进行常规操作。
4. 防火墙设置:配置防火墙以限制网络流量,并只允许必要的端口和服务通过。
拒绝来自未知
来源或可疑IP地址的连接。
5. 安全审计:启用并配置安全审计工具,以跟踪对系统和文件的访问、登录尝试和其他安全事件。
6. 文件和目录权限:设置适当的文件和目录权限,以防止未经授权的用户访问和修改敏感文件。
7. 禁用不必要的服务和端口:禁用不必要的服务和端口,以减少攻击面。
8. 加密通信:对重要的网络通信采取加密措施,如使用SSL/TLS进行安全的远程登录、传输
和数据传输。
9. 安全日志管理:配置日志记录和监控系统,以及定期检查日志以发现潜在的安全问题。
10. 定期备份:定期备份系统和重要数据,以防止数据丢失和恶意破坏。
11. 安全性测试和漏洞扫描:进行定期的安全性测试和漏洞扫描,以发现并修复系统中的安全
漏洞。
12. 非必要软件和服务的删除:删除不必要的软件和服务,减少系统的攻击面。
13. 安全培训和意识提升:为用户提供安全培训和意识提升,教育他们遵循最佳的安全实践,
如不点击垃圾邮件的链接或下载未知来源的文件。
Linux密码复杂度配置方案密码复杂度配置目标是保证密码由数字,大写字母,小写字母,符号各至少1位组成, 长度不短于8, 历史记忆密码8个. 由于Suse 9, Suse10, Suse11关于密码验证的系统实现方式略有差别, 本文将针对不同系统版本给出相应配置方法.1. 对于Suse9将/etc/pam.d/passwd更改为以下:#%PAM-1.0auth required pam_unix2.so nullokaccount required pam_unix2.sopassword required pam_pwcheck.sopassword required pam_cracklib.so dcredit=-1 ucredit=-1 ocredit=-1 lcredit=-1 minlen=8 use_authtokpassword required pam_pwcheck.so nullok remember=8 use_authtokpassword required pam_unix2.so use_authtok nulloksession required pam_unix2.so2. 对于Suse10/etc/pam.d/common-password更改为以下:## /etc/pam.d/common-password - password-related modules common to all services## This file is included from other service-specific PAM config files,# and should contain a list of modules that define the services to be# used to change user passwords. The default is pam_unix2 in combination# with pam_pwcheck.# The "nullok" option allows users to change an empty password, else# empty passwords are treated as locked accounts.## To enable Blowfish or MD5 passwords, you should edit# /etc/default/passwd.## Alternate strength checking for passwords should be configured# in /etc/security/pam_pwcheck.conf.## pam_make can be used to rebuild NIS maps after password change.#password required pam_pwcheck.sopassword required pam_cracklib.so dcredit=-1 ucredit=-1 ocredit=-1 lcredit=-1 minlen=8 use_authtokpassword required pam_pwcheck.so nullok remember=8 use_authtok password required pam_unix2.so use_authtok nullok注意: 设置完以上密码策略后, 以后不可以用yast工具更改历史密码个数, 否则下次更改密码时, 会一直提示重新输入新密码, 最终无法重置密码. 经确认此为Suse10系统bug.3. 对于Suse11(I) 新建/etc/pam.d/common-password-complexity,内容如下:password required pam_cracklib.so dcredit=-1 ucredit=-1 ocredit=-1 lcredit=-1 minlen=8(II) 将/etc/pam.d/common-password更改为password requisite pam_pwcheck.so use_authtok nullok cracklib remember=8 password required pam_unix2.so use_authtok nullok(III) 将/etc/pam.d/passwd更改为#%PAM-1.0auth include common-authaccount include common-accountpassword include common-password-complexitypassword include common-passwordsession include common-session注意:设置完以上密码策略后, 最好也不要用yast工具来更改历史密码个数, 此操作会将/etc/pam.d/common-password文件重置为,password requisite pam_pwcheck.so nullok cracklib remember=8password required pam_unix2.so use_authtok nullok系统会将common-password-complexity和common-password当成两个独立的密码验证模块, 以后重置密码, 若输入的新密码不符合复杂度要求, 会再次提示用户输入新密码, 最终报错. 但是对生产无影响, 用户可重试更改密码, 若输入正确密码, 即可修改成功.关掉系统不必要服务根据linux系统Runbook, 需要关闭不必要开机自动启动服务, 方法如下:关掉系统不必要的服务, 执行以下命令:chkconfig alsasound offchkconfig fbset offchkconfig postfix offchkconfig splash offchkconfig splash_early offchkconfig SuSEfirewall2 off如果以上服务已经设置为开机不启动,重复执行以上命令不会改变设置。
linux操作系统的密码策略
Linux操作系统的密码策略是为了增加系统安全性而制定的一系列规则和要求,以确保用户设置强密码、定期更改密码,并限制密码的使用。
不同的Linux发行版可能有略微不同的实现方法,但通常包括以下方面:
密码复杂性要求:密码策略通常要求密码必须包含不同类型的字符,如大写字母、小写字母、数字和特殊字符,以增加密码的复杂性和难破解性。
密码长度要求:密码策略会要求密码的最小长度,通常要求密码至少包含8个字符,以确保足够的强度。
密码历史和重用限制:密码策略可能要求用户不得在一定的时间内重复使用先前使用过的密码,以防止频繁更改密码并轮流使用相似的密码。
密码过期策略:密码策略可能要求用户定期更改密码,以减少长期使用相同密码的风险。
通常,系统会设定密码的最大有效期。
密码锁定和登录尝试限制:密码策略可能会在用户多次登录失败后锁定账户一段时间,以防止恶意尝试破解密码。
账户不活动策略:密码策略可能会在用户长时间不活动后要求重新认证密码,以防止未经授权的访问。
弱密码拒绝:密码策略可能会拒绝设置过于简单的密码,如常见的单词或数字组合。
默认密码要求:密码策略可能会要求用户在首次登录时设置密码,以确保初始密码的安全性。
这些是一些常见的Linux密码策略要求,实际的配置和实施方法可能因发行版和系统设置而有所不同。
管理员可以通过修改系统配置文件来自定义密码策略,以适应特定的安全需求。
综合考虑密码策略,可以有效提高系统的安全性,减少密码被攻击或破解的风险。
在linux中用户密码创建规则在Linux中,用户密码的创建规则通常由操作系统的密码策略和密码管理工具来定义和执行。
1. 密码复杂性要求:密码长度:密码应该至少包含8个字符,最好更长。
大小写字母:密码应该包含至少一个大写字母和一个小写字母。
数字:密码应该包含至少一个数字。
特殊字符:密码应该包含至少一个特殊字符,如!@#$%^&*等。
2. 避免使用常见密码:禁止用户使用弱密码,如"password"、"123456"等。
密码管理工具可以提供密码黑名单功能,以防止使用常见密码。
3. 密码过期和历史记录:强制用户定期更改密码,以减少密码泄露的风险。
过期时间可以根据安全要求进行配置。
同时,避免用户在一段时间内重复使用之前的密码。
4. 密码锁定和失败计数器:设置密码锁定策略,以防止暴力破解密码。
例如,当用户连续多次尝试失败登录时,可以锁定其帐户一段时间。
同时,记录密码失败的计数器,以便在超过一定次数后锁定帐户。
5. 双因素认证:鼓励或强制用户启用双因素认证,以增加帐户的安全性。
双因素认证结合了密码和其他形式的身份验证,如手机验证码、指纹识别等。
6. 避免用户信息作为密码的一部分:禁止用户在密码中使用与其个人信息(如用户名、生日、电话号码等)相关的内容。
7. 密码存储和传输:密码应该以加密的形式存储,并在传输过程中使用安全协议(如SSH)来保护密码的机密性。
8. 定期审查密码策略:定期审查和更新密码策略,以适应新的安全威胁和最佳实践。
请注意,具体的密码策略和规则可能因Linux发行版和使用的密码管理工具而有所不同。
可以通过操作系统文档、密码管理工具的文档或管理员的指导来了解并配置适合您系统的密码创建规则。
系统版本:Red Hat Enterprise Linux AS release 4Linux用户密码策略Linux用户密码的有效期,是否可以修改密码可以通过login.defs文件控制.对l ogin.defs文件修只影响后续建立的用户,如果要改变以前建立的用户的有效期等可以使用chage命令.Linux用户密码的复杂度可以通过pam pam_cracklib module或pam_pass wdqc module控制,两者不能同时使用. 个人感觉pam_passwdqc更好用./etc/login.defs密码策略PASS_MAX_DAYS 99999 #密码的最大有效期, 99999:永久有期PASS_MIN_DAYS 0 #是否可修改密码,0可修改,非0多少天后可修改PASS_MIN_LEN 5 #密码最小长度,使用pam_cracklib module,该参数不再有效PASS_WARN_AGE 7 #密码失效前多少天在用户登录时通知用户修改密码pam_cracklib主要参数说明:tretry=N:重试多少次后返回密码修改错误difok=N:新密码必需与旧密码不同的位数dcredit=N: N >= 0:密码中最多有多少个数字;N < 0密码中最少有多少个数字.lcredit=N:小宝字母的个数ucredit=N大宝字母的个数ocredit=N:特殊字母的个数minclass=N:密码组成(大/小字母,数字,特殊字符)pam_passwdqc主要参数说明:mix:设置口令字最小长度,默认值是mix=disabled。
max:设置口令字的最大长度,默认值是max=40。
passphrase:设置口令短语中单词的最少个数,默认值是passphrase=3,如果为0则禁用口令短语。
atch:设置密码串的常见程序,默认值是match=4。
similar:设置当我们重设口令时,重新设置的新口令能否与旧口令相似,它可以是similar=permit允许相似或similar=deny不允许相似。
random:设置随机生成口令字的默认长度。
默认值是random=42。
设为0则禁止该功能。
enforce:设置约束范围,enforce=none表示只警告弱口令字,但不禁止它们使用;enforce=users将对系统上的全体非根用户实行这一限制;enforce=everyone将对包括根用户在内的全体用户实行这一限制。
non-unix:它告诉这个模块不要使用传统的getpwnam函数调用获得用户信息,retry:设置用户输入口令字时允许重试的次数,默认值是retry=3密码复杂度通过/etc/pam.d/system-auth实施如:要使用pam_cracklib将注释去掉,把pam_passwdqc.so注释掉即可.#password requisite /lib/security/$ISA/pam_cracklib.so retry=3 difok=1 password requisite /lib/security/$ISA/pam_passwdqc.so min=disabled,2 4,12,8,7 passphrase=3password sufficient /lib/security/$ISA/pam_unix.so nullok use_authtok md5 shadow#password requisite /lib/security/$ISA/pam_cracklib.so retry=3 difok=1新密码至少有一位与原来的不同.#########################################服务器的系统安全确实是一件让大多数用户头痛的事情:如何确保系统中使用应用程序或服务的用户确是用户本人?如何给这些用户指定限制访问服务的时间段?以及如何限制各种应用程序或服务对系统资源的使用率等等?所有的这些问题,常规的安全措施并不能妥善地解决。
在使用Linux内核的RedHat企业Linux3中,已经集成了一种叫做可插入式认证模块(Pluggable Authentication Modules)的安全验证方式,能够用它来完成上面所示的任务。
可插入认证模块(简称PAM)是基于模块化设计、具有可插入功能的一种独立于应用程序之外的验证方式。
使用PAM后,应用程序可以不需要集成验证功能,而由PAM来完成。
例如,在Linux系统中,Login服务为用户提供系统登录服务,它提示用户输入相应的用户名和密码来验证用户的有效性,当使用PAM后,这个验证过程可以由PAM来代替。
PAM具有很大的灵活性,系统管理员可以通过它为应用程序自由选择需要使用的验证方式。
鉴于PAM有这么多优点,在本文中,将以RedHat企业Linux3为应用平台,来讨论如何使用PAM来增强Linux服务器的安全性能。
一、PAM入门必读当LINUX服务器中的某个应用程序或服务需要使用PAM来进行验证时,只要此应用程序或服务支持PAM 验证功能,就可以通过修改其相应的PAM配置文件,加放相应的验证方式,当重新启用些服务或应用程序时,PAM模块就会通过其专用API来读取它的配置文件,根据配置文件中的内容来提供相应的验证功能。
所有验证功能都是通过一些库文件来提供的。
因此,在使用PAM之前,先掌握PAM配置文件的设置方法,了解一些常用的验证模块就显得非常必要。
当某个支持PAM验证的应用程序启动时,就会通过PAM的API读取它的PAM配置文件,然后根据配置文件中验证项指定的内容,再由API调用所需的验证模块来完成配置文件中指定的验证任务。
从这里可以看出,要掌握PAM的使用,就必需了解配置文件的配置规则,以及各种验证模块的意义和作用。
在这里还要注意的是,一个Linux系统下的应用程序能够使用PAM功能,最关键的是它已经将支持PAM 功能的代码集成到了原代码当中。
如果你能够得到一个应用程序的原代码,你也可以自行将支持PAM的功能代码加入其中。
但是,如果你得到的二进制文件不具有这些PAM功能代码,那么,此应用程序就不支持PAM验证功能。
查看应用程序是否具有PAM验证功能,可以使用ldd命令查看其动态连接库中有没有libpam和libpam_misc,有就支持。
1、设置PAM的配置文件在RedHat企业Linux3系统中,每个支持PAM验证的应用程序或服务,都有一个相应的PAM配置文件,存放在/etc/pam.d/目录。
要想这些配置文件有效,就必需将这些配置文件名字编写进程序源代码中。
通常,这些配置文件的名字与其对应的应用程序的名字是一样的。
要想设置这些配置文件,只需要通过VI或VIM来打开它们,然后添加或删除其中的验证项就可以。
打开/etc/pam.d/目录下的任何一个配置文件,其中每行的验证规则都使用如下所示的语法格式:Type Control-flag Module-path Module-arguments其中每行代表一个独立的验证方式,每个配置文件可以由多种验证规则相互叠加而成。
验证时PAM-API 会按照从上往下的方式一一读取这些验证规则,并根据其中的控制标志做出相应的动作。
在编辑配置文件时一定要小心谨慎,由于规则的验证是有上下顺序之分的,因此你要小心确定某些危险的验证规则处于配置文件中的正确位置。
因为一旦出错,可能会导致系统的部分功能或整个系统不能访问,这样你就不得不重新恢复它们的备份。
要正常配置PAM配置文件,就应当了解配置文件方法格式中每列的所包括的内容,下面是这些列的简短说明:(1)、Type列,主要用来指定需要验证的类型。
一共有以下四种验证类型:1、 auth 验证使用者身份,提示输入帐号和密码;2、 account 提供对帐户的进一步验证,例如验证帐户的此操作是否已经过期,权限多大,拥有此权限的时间期限是否已经过期等等;3、 password 提供对密码的细致控制,例如控制密码的使用期限,重复输入的次数,密码锁定后的解禁时限等等。
4、 session 对每个会话进行跟踪和记录,记录的内容包括登录的用户名及登录的时间和次数等等。
(2)、Control-flag列,主要用来控制在验证过程中动作和返回结果的方式。
它有两种类型的表达方式:简单的就是使用一个简单的关键字,复杂的可以使用方括号来嵌套控制标志,并可在方括号中使用value=action的方式表达。
简单的关键字有四个:1、 required当使用此控制标志时,当验证失败时仍然会继续进行其下的验证过程,它会返回一个错误信息,但是,由于它不会由于验证失败而停止继续验证过程,因此用户不会知道是哪个规则项验证失败。
2、 requisite此控制标志与required的验证方式大体相似,但是,只要某个规则项验证失败则立即结束整个验证过程,并返回一个错误信息。
使用此关键字可以防止一些通过暴力猜解密码的攻击,但是,由于它会返回信息给用户,因此,它也有可能将系统的用户结构信息透露给攻击者。
3、 sufficient只要有此控制标志的一个规则项验证成功,那么PAM构架将会立即终止其后所有的验证,并且不论其前面的required标志的项没有成功验证,它依然将被忽略,然后验证通过。
4、 optional表明对验证的成功或失败都是可有可无的,所有的都会被忽略。
(通常用于session类型)复杂的控制标志能够让管理员可以指定在验证过程中发生某种事件时可以执行的动作。
这些控制标志用方括号包括起来,并由一系列的value=action 所构成,每个值之间用空格分开。
在新版PAM中,可供你选择的value列表存在于/usr/include/security/_pam_types.h文件中。
其中的内容包括:success,open_err,symbol_err,ervice_err,system_err,buf_err,perm_denied,auth_err,cred_insufficient,authinfo_unavail,user_unknown,maxtries,new_authtok_reqd,acct_expired,session_err,cred_unavail,cred_expired,cred_err,no_module_data,conv_err,authtok_err,authtok_recover_err,authtok_lock_busy,authtok_disable_aging,try_again,ignore,abort,authtok_expired,module_unknown,bad_item,conv_again,incomplete,和default。