pam password auth redis auth password - 电脑 - 【龙岩电脑网】_龙岩电脑维修_龙岩笔记本电脑维修_监控安装_市区上门维修
公司动态

pam password auth redis auth password

摘要:LINUX设置密码复杂度的文件 etc pam d system一、准备工作:安装 PAM 的 cracklib 模块,cracklib 能提供额外的密码检查能力。二、具体操作:Debian、Ubun...

发布日期:2020-08-18

pam password auth

LINUX设置密码复杂度的文件/etc/pam.d/system

一、准备工作:安装 PAM 的 cracklib 模块,cracklib 能提供额外的密码检查能力。

二、具体操作:Debian、Ubuntu 或 Linux Mint 系统上:代码如下:$ sudo apt-get install libpam-cracklibCentOS、Fedora、RHEL 系统已经默认安装了 cracklib PAM 模块,所以在这些系统上无需执行上面的操作。

为了强制实施密码策略,需要修改 /etc/pam.d 目录下的 PAM 配置文件。

一旦修改,策略会马上生效。

注意:此教程中的密码策略只对非 root 用户有效,对 root 用户无效。

策略设置:1、禁止使用旧密码找到同时有 “password” 和 “pam_unix.so” 字段并且附加有 “remember=5” 的那行,它表示禁止使用最近用过的5个密码(己使用过的密码会被保存在 /etc/security/opasswd 下面)。

Debian、Ubuntu 或 Linux Mint 系统上:代码如下:$ sudo vi /etc/pam.d/common-passwordpassword [success=1 default=ignore] pam_unix.so obscure sha512 remember=5CentOS、Fedora、RHEL 系统上:代码如下:$ sudo vi /etc/pam.d/system-authpassword sufficient pamunix.so sha512 shadow nullok tryfirstpass useauthtok remember=5二、设置最短密码长度找到同时有 “password” 和 “pam_cracklib.so” 字段并且附加有 “minlen=10” 的那行,它表示最小密码长度为(10 - 类型数量)。

这里的 “类型数量” 表示不同的字符类型数量。

PAM 提供4种类型符号作为密码(大写字母、小写字母、数字和标点符号)。

如果密码同时用上了这4种类型的符号,并且 minlen 设为10,那么最短的密码长度允许是6个字符。

Debian、Ubuntu 或 Linux Mint 系统上:代码如下:$ sudo vi /etc/pam.d/common-passwordpassword requisite pam_cracklib.so retry=3 minlen=10 difok=3CentOS、Fedora、RHEL 系统上:代码如下:$ sudo vi /etc/pam.d/system-authpassword requisite pam_cracklib.so retry=3 difok=3 minlen=10三、设置密码复杂度找到同时有 “password” 和 “pam_cracklib.so” 字段并且附加有 “ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1” 的那行,表示密码必须至少包含一个大写字母(ucredit),两个小写字母(lcredit),一个数字(dcredit)和一个标点符号(ocredit)。

Debian、Ubuntu 或 Linux Mint 系统上:代码如下:$ sudo vi /etc/pam.d/common-passwordpassword requisite pam_cracklib.so retry=3 minlen=10 difok=3 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1CentOS、Fedora、RHEL 系统上:代码如下:$ sudo vi /etc/pam.d/system-authpassword requisite pam_cracklib.so retry=3 difok=3 minlen=10 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1四、设置密码过期期限编辑 /etc/login.defs 文件,可以设置当前密码的有效期限,具体变量如下所示:代码如下:$ sudo vi /etc/login.defsPASSMAXDAYS 150 PASSMINDAYS 0 PASSWARNAGE 7这些设置要求用户每6个月改变密码,并且会提前7天提醒用户密码快到期了。

如果想为每个用户设置不同的密码期限,使用 chage 命令。

下面的命令可以查看某个用户的密码限期:代码如下:$ sudo chage -l xmoduloLast password change : Dec 30, 2013 Password expires : never Password inactive : never Account expires : never Minimum number of days between password change : 0 Maximum number of days between password change : 99999 Number of days of warning before password expires : 7默认情况下,用户的密码永不过期。

五、下面的命令用于修改 xmodulo 用户的密码期限:代码如下:$ sudo chage -E 6/30/2014 -m 5 -M 90 -I 30 -W 14 xmodulo上面的命令将密码期限设为2014年6月3日。

另外,修改密码的最短周期为5天,最长周期为90天。

密码过期前14天会发送消息提醒用户,过期后帐号会被锁住30天。

设置完后,验证效果如下:

请教OpenVPN,username-password验证失败

服务器的输入信息大致如下:Sat Dec 12 17:11:33 2009 202.201.12.218:1654 PLUGIN_CALL: POST /lib/openvpn-auth-pam.so/PLUGIN_AUTH_USER_PASS_VERIFY status=1Sat Dec 12 17:11:33 2009 202.201.12.218:1654 PLUGIN_CALL: plugin function PLUGIN_AUTH_USER_PASS_VERIFY failed with status 1: /lib/openvpn-auth-pam.soSat Dec 12 17:11:33 2009 202.201.12.218:1654 TLS Auth Error: Auth Username/Password verification failed for peerSat Dec 12 17:11:33 2009 202.201.12.218:1654 Control Channel: TLSv1, cipher TLSv1/SSLv3 DHE-RSA-AES256-SHASat Dec 12 17:11:33 2009 202.201.12.218:1654 [] Peer Connection Initiated with 202.201.12.218:1654Sat Dec 12 17:11:34 2009 202.201.12.218:1654 PUSH: Received control message: "PUSH_REQUEST"Sat Dec 12 17:11:34 2009 202.201.12.218:1654 Delayed exit in 5 secondsSat Dec 12 17:11:34 2009 202.201.12.218:1654 SENT CONTROL [UNDEF]: "AUTH_FAILED" (status=1)Sat Dec 12 17:11:36 2009 read UDPv4 [ECONNREFUSED]: Connection refused (code=146)Sat Dec 12 17:11:38 2009 read UDPv4 [ECONNREFUSED]: Connection refused (code=146)Sat Dec 12 17:11:39 2009 202.201.12.218:1654 SIGTERM[soft,delayed-exit] received, client-instance exitingOpenVPN用生成的key文件可以正常连接服务器,而且testsaslauth -u test-p test -s openvpn能验证成功,返回 : OK "Success."总之就是验证不过了。

我使用的是openvpn2.1.4版源码编译的openvpn-auth-pam.so,,最后改用2.09版本源码的,终于验证成功。

在freebsd下编译2.0.9版的openvpn-auth-pam.so时,会提示错误,如下:pamdl.c:13:34: error : conflicting types for "pam_strerror"pamdl.c:96:error: conflicting types for "pam_strerror"我的解决办法是,注视掉13行的#include注释掉96行到102行的那个函数pam_strerror.引用http://www.xuebuyuan.com/1082608.html

如何在 Linux 为系统用户设置密码复杂度策略

假设你已经在你的 Linux 系统上使用了 PAM (Pluggable Authentication Modules,插入式验证模块),因为这些年所有的 Linux 发行版都在使用它。

一、准备工作 安装 PAM 的 cracklib 模块,cracklib 能提供额外的密码检查能力。

Debian、Ubuntu 或 Linux Mint 系统上:1 $ sudo apt-get install libpam-cracklib CentOS、Fedora、RHEL 系统已经默认安装了 cracklib PAM 模块,所以在这些系统上无需执行上面的操作。

为了强制实施密码策略,我们需要修改 /etc/pam.d 目录下的 PAM 配置文件。

一旦修改,策略会马上生效。

注意:此教程中的密码策略只对非 root 用户有效,对 root 用户无效。

二、禁止使用旧密码 找到同时有 “password” 和 “pam_unix.so” 字段并且附加有 “remember=5” 的那行,它表示禁止使用最近用过的5个密码(己使用过的密码会被保存在 /etc/security/opasswd 下面)。

Debian、Ubuntu 或 Linux Mint 系统上:12 $ sudo vi /etc/pam.d/common-password password [success=1 default=ignore] pam_unix.so obscure sha512 remember=5 CentOS、Fedora、RHEL 系统上:12 $ sudo vi /etc/pam.d/system-auth password sufficient pamunix.so sha512 shadow nullok tryfirstpass useauthtok remember=5 三、设置最短密码长度 找到同时有 “password” 和 “pam_cracklib.so” 字段并且附加有 “minlen=10” 的那行,它表示最小密码长度为(10 - 类型数量)。

这里的 “类型数量” 表示不同的字符类型数量。

PAM 提供4种类型符号作为密码(大写字母、小写字母、数字和标点符号)。

如果你的密码同时用上了这4种类型的符号,并且你的 minlen 设为10,那么最短的密码长度允许是6个字符。

Debian、Ubuntu 或 Linux Mint 系统上:12 $ sudo vi /etc/pam.d/common-password password requisite pam_cracklib.so retry=3 minlen=10 difok=3 CentOS、Fedora、RHEL 系统上:12 $ sudo vi /etc/pam.d/system-auth password requisite pam_cracklib.so retry=3 difok=3 minlen=10 四、设置密码复杂度 找到同时有 “password” 和 “pam_cracklib.so” 字段并且附加有 “ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1” 的那行,它表示密码必须至少包含一个大写字母(ucredit),两个小写字母(lcredit),一个数字(dcredit)和一个标点符号(ocredit)。

Debian、Ubuntu 或 Linux Mint 系统上:12 $ sudo vi /etc/pam.d/common-password password requisite pam_cracklib.so retry=3 minlen=10 difok=3 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1 CentOS、Fedora、RHEL 系统上:12 $ sudo vi /etc/pam.d/system-auth password requisite pam_cracklib.so retry=3 difok=3 minlen=10 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1 五、设置密码过期期限 编辑 /etc/login.defs 文件,可以设置当前密码的有效期限,具体变量如下所示:12 $ sudo vi /etc/login.defs PASSMAXDAYS 150 PASSMINDAYS 0 PASSWARNAGE 7 这些设置要求用户每6个月改变他们的密码,并且会提前7天提醒用户密码快到期了。

如果你想为每个用户设置不同的密码期限,使用 chage 命令。

下面的命令可以查看某个用户的密码限期:$ sudo chage -l xmodulo Last password change : Dec 30, 2013 Password expires : never Password inactive : never Account expires : never Minimum number of days between password change : 0 Maximum number of days between password change : 99999 Number of days of warning before password expires : 7 默认情况下,用户的密码永不过期。

下面的命令用于修改 xmodulo 用户的密码期限:1 $ sudo chage -E 6/30/2014 -m 5 -M 90 -I 30 -W 14 xmodulo 上面的命令将密码期限设为2014年6月3日。

另外,修改密码的最短周期为5天,最长周期为90天。

密码过期前14天会发送消息提醒用户,过期后帐号会被锁住30天。

centos 怎么修改用户密码

密码复杂度在[root@localhost ~]# vim /etc/pam.d/system-auth里找到password requisite pam_cracklib.so在后面可以加 difok=x(要x个不同字符) minlen=x(最小密码长度) ucredit=-x(最少x个大写字母) lcredit=-x(最少x个小写字母) dcredit=-x (最少x个数字)dictpath=/usr/share/cracklib/pw_dict时间在[root@localhost ~]# vim /etc/login.defsPASS_MAX_DAYS 99999 (最大什么时候过期)PASS_MIN_DAYS 0 (最小什么事后过期)PASS_MIN_LEN 5 (密码最小长度)PASS_WARN_AGE 7 (警告天数)

linux如何设置密码规则

STRINGSIZE && password[ii];); } jptr = junk; *jptr = "",而pam中 pam_cracklib.so 的参数minlen=9也是个假参数; password = rpassword; char *instring; 4) { return (" char junk[STRINGSIZE]; char *password; char rpassword[STRINGSIZE]; int32 notfound; notfound = PW_WORDS(pwp); /* already truncated if from FascistCheck() */修改/,这个方法并不奏效,原来是什么样子,现在还是什么样子; ii++) { if (; ii <* but pretend it wasn"t .;", password[ii])) { *(jptr++) = password[ii]; *jptr = ""!strchr(junk;etc/.. */.c):其中的MINLEN);fascist,因为他内部调用的函数pam_sm_chauthtok调用的FascistCheck(位于 cracklib;); strncpy(rpassword, instring, TRUNCSTRINGSIZE); rpassword[TRUNCSTRINGSIZE - 1] = ",要使得原来的/etc/login.defs配置有效;cracklib,2.7/cracklib/login;; for (ii = 0,必须等patch。

可以看这个代码片段(cracklib/,/etc/login.defs中的配置不起作用,设置为你所需要的长度,默认是5 有的还加上一些修改/etc/pam.d/passwd的方法,加上cracklib: #define MINLEN 6 char * FascistLook(pwp, instring) PWDICT *pwp; MINLEN) { return ("it is too short" char *jptr; { int ii; char *ptr; / } if (strlen(password) &lt.so库;it"s WAY too short&quot.defs文件中PASS_MIN_LEN参数。

但是实际上; if (strlen(password) &lt.so独立于pam之外)对密码长度分析时并不理踩minlen这个值,而是内部写死的,所以,为什么呢? 这是因为采用pam机制后 展开

linux 虚拟机怎样以root身份登录?

在linux中切换账户可以使用命令su,不论是root账户切换成普通用户,还是反之。

用法:使用root用户切换普通用户时直接 su - 普通用户名 就可以了;使用普通用户切换至root用户时 su -或者 su - root 然后输入root密码就可以了;在大都的linux的版本中,都可以使用su或者su -,但是su和su -还是有一定的差别的:su只是切换了root身份,但Shell环境仍然是普通用户的Shell;而su -连用户和Shell环境一起切换成root身份了。

只有切换了Shell环境才不会出现PATH环境变量错误。

su切换成root用户以后,pwd一下,发现工作目录仍然是普通用户的工作目录;而用su -命令切换以后,工作目录变成root的工作目录了。

用echo $PATH命令看一下su和su -以后的环境变量有何不同。

以此类推,要从当前用户切换到其它用户也一样,应该使用su -命令。

linux下设置密码复杂度限制,怎么设置?

在linux,设置密码复杂度的方法有几个1. 一个是在/etc/login.defs文件,里面几个选项PASS_MAX_DAYS 90 #密码最长过期天数PASS_MIN_DAYS 80 #密码最小过期天数PASS_MIN_LEN 10 #密码最小长度PASS_WARN_AGE 7 #密码过期警告天数2. 另外一个方法是,修改/etc/pam.d/system-auth文件找到 password requisite pam_cracklib.so这么一行替换成如下:password requisite pam_cracklib.so retry=5 difok=3 minlen=10 ucredit=-1 lcredit=-3 dcredit=-3 dictpath=/usr/share/cracklib/pw_dict参数含义:尝试次数:5 最少不同字符:3 最小密码长度:10 最少大写字母:1 最少小写字母:3 最少数字:3 密码字典:/usr/share/cracklib/pw_dict这样设置好,你可以做一下测试,不过需要先退出root,因为root用户并不会受这些限制,它可以设置任意的密码。

...

linux 密码策略 1 密码最短八位,复杂度不要求 2 登录错误10次,锁定...

share/etc/. 一个是在/.so retry=5 difok=3 minlen=10 ucredit=-1 lcredit=-3 dcredit=-3 dictpath=/usr/share/cracklib/.defs文件,里面几个选项PASS_MAX_DAYS 90 #密码最长过期天数PASS_MIN_DAYS 80 #密码最小过期天数PASS_MIN_LEN 10 #密码最小长度PASS_WARN_AGE 7 #密码过期警告天数2. 另外一个方法是,修改/etc/pam.d/system-auth文件找到 password requisite pam_cracklib.so这么一行替换成如下:password requisite pam_cracklib;usr/pw_dict参数含义:1 最少小写字母:3 最少数字:3 密码字典:/:尝试次数:5 最少不同字符:3 最小密码长度:10 最少大写字母按你的需求做对应的修改在linux,设置密码复杂度的方法有几个1;login...

REDHAT6.3怎样关闭强制密码安全策略

#vi/etc/login.defs修改配置文件PASS_MAX_DAYS90 #新建用户的密码最长使用天数PASS_MIN_DAYS0 #新建用户的密码最短使用天数PASS_WARN_AGE7 #新建用户的密码到期提前提醒天数PASS_MIN_LEN 9 #最小密码长度#vi/etc/pam.d/system-auth文件找到 password requisite pam_cracklib.so这么一行替换成如下:password requisite pam_cracklib.so retry=5 difok=3 minlen=10 ucredit=-1 lcredit=-3 dcredit=-3 dictpath=/usr/share/cracklib/pw_dict参数含义:尝试次数:5 最少不同字符:3 最小密码长度:10 最少大写字母:1 最少小写字母:3 最少数字:3 对root无效