Linux 系统密码策略设置

目录

Linux主要密码安全需求

1. 禁止使用旧密码

2.设置密码最短长度

3.设置密码复杂度

4.设置密码过期期限

Linux密码策略理论知识:

1、使用配置文件/etc/pam.conf

2、使用配置目录/etc/pam.d/


讲怎么使用,后面有理论教程,先知其然再知其所以然

Linux主要密码安全需求

1. 禁止使用旧密码

vi /etc/pam.d/system-auth

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

password sufficient pamunix.so sha512 shadow nullok tryfirstpass useauthtok remember=5

2.设置密码最短长度

vi /etc/pam.d/system-auth

找到同时有 “password” 和 “pam_cracklib.so” 字段并且附加有 “minlen=10” 的那行,它表示最小密码长度为(10 - 类型数量)。这里的 “类型数量” 表示不同的字符类型数量。PAM 提供4种类型符号作为密码(大写字母、小写字母、数字和标点符号)。如果你的密码同时用上了这4种类型的符号,并且你的 minlen 设为10,那么最短的密码长度允许是6个字符。

password requisite pam_cracklib.so retry=3 difok=3 minlen=10

3.设置密码复杂度

vi /etc/pam.d/system-auth

找到同时有 “password” 和 “pam_cracklib.so” 那行.

#  retry  允许重试3次

# difok=N:新密码必需与旧密码不同的位数   difok=3 新密码必须与旧密码有3位不同

# minlen  最小位数

# ucredit  大写字母位数

# lcredit  小写字母位数

# dcredit=N: N >= 0:密码中最多有多少个数字;N < 0密码中最少有多少个数字.   dcredit=-1  密码中最少有1个数字

# ocredit=N:特殊字母的个数    ocredit=-1 密码中至少有1个特殊字符

# 它表示密码必须至少包含一个大写字母(ucredit),两个小写字母(lcredit),一个数字(dcredit)和一个标点符号(ocredit)。

password requisite pam_cracklib.so retry=3 difok=3 minlen=10 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1

4.设置密码过期期限

vi /etc/login.defs

PASS_MAX_DAYS    99999   #密码的最大有效期, 99999:永久有期

PASS_MIN_DAYS      0          #是否可修改密码,0可修改,非0修改密码后下一次修改需间隔多少天后可修改

PASS_MIN_LEN     5          #密码最小长度,使用pam_cracklib module,该参数不再有效 

PASSWARNAGE    7          #密码失效前多少天在用户登录时通知用户修改密码

Linux密码策略理论知识:

PAM(Pluggable Authentication Modules )是由Sun提出的一种认证机制。它通过提供一些动态链接库和一套统一的API,将系统提供的服务 和该服务的认证方式分开,使得系统管理员可以灵活地根据需要给不同的服务配置不同的认证方式而无需更改服务程序,同时也便于向系 统中添加新的认证手段。PAM最初是集成在Solaris中,目前已移植到其它系统中,如Linux、SunOS、HP-UX 9.0等。
PAM的配置是通过单个配置文件/etc/pam.conf。RedHat还支持另外一种配置方式,即通过配置目录/etc/pam.d/,且这种的优先级要高于单 个配置文件的方式


1、使用配置文件/etc/pam.conf


该文件是由如下的行所组成的:
service-name  module-type  control-flag  module-path  arguments

service-name  服务的名字,比如telnet、login、ftp等,服务名字“OTHER”代表所有没有在该文件中明确配置的其它服务。

module-type   模块类型有四种:auth、account、session、password,即对应PAM所支持的四种管理方式。

                         同一个服务可以调用多个 PAM模块进行认证,这些模块构成一个stack。

control-flag     用来告诉PAM库该如何处理与该服务相关的PAM模块的成功或失败情况。

                         它有四种可能的 值:required,requisite,sufficient,optional。

required          表示本模块必须返回成功才能通过认证,但是如果该模块返回失败的话,失败结果也不会立即通知用户,

                         而是要等到同一stack 中的所有模块全部执行完毕再将失败结果返回给应用程序。

                         即全部策略执行成功才能通过, 有失败不会立即返回,待模块执行完成才返回。

requisite          与required类似,该模块必须返回成功才能通过认证,

                         但是一旦该模块返回失败,将不再执行同一stack内的任何模块,而是直 接将控制权返回给应用程序。

                        是一个必要条件。注:这种只有RedHat支持,Solaris不支持

                        即全部策略执行成功才能通过,一旦有一项失败,立即返回.

sufficient        表明本模块返回成功已经足以通过身份认证的要求,不必再执行同一stack内的其它模块

                        但是如果本模块返回失败的话可以 忽略。

optional         表明本模块是可选的,它的成功与否一般不会对身份认证起关键作用,其返回值一般被忽略。

control-flag    从Linux-PAM-0.63版本起,支持一种新的语法,具体可参看LinuxPAM文档。

module-path  用来指明本模块对应的程序文件的路径名,一般采用绝对路径,如果没有给出绝对路径

                        默认该文件在目录/usr/lib/security下面。

arguments     是用来传递给该模块的参数。一般来说每个模块的参数都不相同,可以由该模块的开发者自己定义,

                       但是也有以下几个共同 的参数:

debug                           该模块应当用syslog( )将调试信息写入到系统日志文件中。
no_warn                       表明该模块不应把警告信息发送给应用程序。
use_first_pass             表明该模块不能提示用户输入密码,而应使用前一个模块从用户那里得到的密码。
try_first_pass               表明该模块首先应当使用前一个模块从用户那里得到的密码,

                                       如果该密码验证不通过,再提示用户输入新的密码。
use_mapped_pass      该模块不能提示用户输入密码,而是使用映射过的密码。
expose_account          允许该模块显示用户的帐号名等信息,一般只能在安全的环境下使用,

                                      因为泄漏用户名会对安全造成一定程度的威胁。

2、使用配置目录/etc/pam.d/


该目录下的每个文件的名字对应服务名,例如ftp服务对应文件/etc/pam.d/ftp。如果名为xxxx的服务所对应的配置文件/etc/pam.d/xxxx不存 在,则该服务将使用默认的配置文件/etc/pam.d/other。每个文件由如下格式的文本行所构成:
module-type  control-flag  module-path  arguments
每个字段的含义和/etc/pam.conf中的相同。

密码复杂度通过/etc/pam.d/system-auth这个文件来实现的

我们先看一下默认有什么内容然后将这个文件备份一个:

在这个文件中我们会用到pam_cracklib.so这个模块。pam_cracklib.so是一个常用并且非常重要的PAM模块。该模块主要的作用是对用户密码的强健性进行检测。即检查和限制用户自定义密码的长度、复杂度和历史等。如不满足上述强度的密码将拒绝使用。
pam_cracklib.so  比较重要和难于理解的是它的一些参数和计数方法,其常用参数包括:
debug:将调试信息写入日志;
type=xxx:当添加/修改密码时,系统给出的缺省提示符是“New UNIX password:”以及“Retype UNIX
password:”,而使用该参数可以自定义输入密码的提示符,比如指定type=your own word;
retry=N:定义登录/修改密码失败时,可以重试的次数;
Difok=N:定义新密码中必须有几个字符要与旧密码不同。但是如果新密码中有1/2以上的字符与旧密码不同时,该新密码将被接受;
minlen=N:定义用户密码的最小长度;
dcredit=N:定义用户密码中必须包含多少个数字;
ucredit=N:定义用户密码中必须包含多少个大写字母;
lcredit=N:定义用户密码中必须包含多少个小些字母;
ocredit=N:定义用户密码中必须包含多少个特殊字符(除数字、字母之外)

使用 PAM 集成 OpenLDAP 实现 Linux 统一管理系统用户

http://www.linuxidc.com/Linux/2014-08/105597.htm

FTP服务器工作原理及如何通过PAM认证实现虚拟用户登录

http://www.linuxidc.com/Linux/2013-05/84984.htm

PAM的配置过程

http://www.linuxidc.com/Linux/2012-12/76812.htm

基于ssl/tls实现vsftpd的安全通信并通过PAM实现对vsftpd的虚拟用户认证

http://www.linuxidc.com/Linux/2013-05/84475.htm

Linux 使用PAM_ldap通过ad域认证

http://www.linuxidc.com/Linux/2012-09/71043.htm

整合vsftp+PAM+mysql—集中管理ftp的虚拟帐号

http://www.linuxidc.com/Linux/2012-08/68391.htm

vsftpd2.3.5+PAM安装配置笔记

http://www.linuxidc.com/Linux/2012-07/66658.htm

注意:修改后你可能会立即测试:

useradd  test
passwd test

感觉不起作用,这是因为你现在是以root身份运行的。退出root身份后,用test登录修改密码试试看。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/48242.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

远程计算机guest密码更改了,怎么给guest设置密码

我们一般是在控制面板 - 用户帐户下启用来宾帐户&#xff0c;但我们可以在guest(供来宾访问计算机或访问域的内置帐户)下新建用户名和设置密码&#xff0c;方法简单&#xff0c;操作容易。下面是学习啦小编给大家整理的一些有关给guest设置密码的方法&#xff0c;希望对大家有帮…

计算机知识科普讲解大赛,谁是科普达人?2020年成都市科普讲解大赛拉开帷幕...

生活中无处不在的电磁波是怎样产生的呢&#xff1f; 被称为“汉代计算机”的一钩多综式提花织机与成都有什么关系&#xff1f; …… 近日&#xff0c;成都博物馆&#xff0c;40余家单位的70余名选手&#xff0c;通过4分钟参赛视频&#xff0c;亮相2020年成都市科普讲解大赛预赛…

chatgpt赋能python:Python预测分析:什么是预测分析?

Python预测分析&#xff1a;什么是预测分析&#xff1f; 随着数字化时代的到来&#xff0c;数据越来越多&#xff0c;数据分析的需求也随之增加。预测分析就是一种基于数据分析的技术&#xff0c;可以通过数据分析并应用统计模型&#xff0c;来预测未来发生的事件或趋势&#…

度盘搜失效?这款网盘搜索神器万万别错过!

奶糖猫来啦&#xff01;资源搜索一直以来都是需求非常大的一方面&#xff0c;总会有伙伴问我有没有这方面比较好用的软件。 之前很火的度盘搜失效了&#xff0c;后面也出现了一系列的资源搜索工具&#xff0c;但总存在一个致命的问题&#xff0c;资源普遍太老了&#xff0c;不能…

好用的网盘搜索引擎

最近&#xff0c;我们见到了许多安利网盘搜索引擎的推文&#xff0c;安利了很多网址和论坛。但经过答主亲测&#xff0c;许多被提到的网站&#xff0c;不是打不开链接&#xff0c;就是进去发现是广告&#xff0c;早已经被封停了&#xff0c;所以我们亲自测试了一些这方面的内容…

百度云盘搜索助手 V1.2(可查询提取码,带5个搜索引擎)

介绍&#xff1a; 云盘搜索助手功能强大&#xff0c;操作简单&#xff0c;使用后可以帮助用户更轻松快捷的搜索云盘资源。软件内置5个搜索引擎供您查资源&#xff0c;另外内置查询提取码功能。 网盘下载地址&#xff1a; http://www.bytepan.com/bNjeq9AKuVC 图片&#xff1a…

百度网盘_SEARCH

需求分析 我有一些资源网站&#xff0c;但是每次我需要资源的时候需要打开他们的网页&#xff0c;搜索再筛选我需要的网盘资源&#xff0c;这样的操作非常麻烦使用python模拟这些搜索操作&#xff0c;然后爬取我需要的百度网盘信息用python的Gui编程开发一个简单的界面 实现 …

使用ChatGPT进行个性化学习

推荐&#xff1a;将 NSDT场景编辑器 加入你的3D工具链 3D工具集&#xff1a; NSDT简石数字孪生 在这篇文章中&#xff0c;您将发现 ChatGPT 作为机器学习和数据科学爱好者的个人导师的好处。特别是&#xff0c;您将学习 如何让ChatGPT引导你学习抽象代数如何让 ChatGPT 帮助您…

【对话ChatGPT】如何使用ChatGpt来学习和提问?

ChatGPT的不断发展和进步&#xff0c;我们需要工作中很多时候会用到ChatGPT&#xff0c;那么如何使用ChatGPT来解决我们工作中的问题呢&#xff1f; Q1 如何向ChatGPT提问&#xff0c;从而更快解决我们的问题&#xff1f; ChatGPT&#xff1a;以下是向ChatGPT提问的一些提示&am…

chatgpt赋能python:Python收费介绍

Python收费介绍 什么是Python? Python是一种高级的、解释性、面向对象、纯粹的动态语言&#xff0c;多用于快速应用程序开发、脚本编写、系统管理任务等。它有一个简单直观优美的语法&#xff0c;非常容易学习。 Python的收费形式 Python语言本身是免费的&#xff0c;任何…

微信「订阅号助手」 App 正式上线,请尽情吐槽!

说了一年&#xff0c;有可能做了更久。 现在微信「订阅号助手」 App 终于上线了&#xff0c;结果竟是这个。 打开微信订阅号助手 app&#xff0c;目前有邮箱登录和微信登陆两种方式&#xff0c;对于微信运营者来说&#xff0c;微信登陆无需输入账号密码&#xff0c;无疑是最省事…

易媒助手是自媒体一键式发布平台吗?

自媒体领域发展迅速&#xff0c;在当前这个大环境中&#xff0c;小伙伴们必须提高自己的内容发布效率&#xff0c;增加作品曝光量&#xff0c;才能在这个行业站得住脚。那么这里就要用到一些自媒体工具&#xff0c;比如像易媒助手这样的自媒体工具是一键发布内容平台吗&#xf…

自媒体营销工具-绑定自媒体账号一键分发到媒体平台,让运营高效省心

一、什么是自媒体营销 自媒体营销就是利用社会化网络、在线社区、博客、百科、短视频、微博、微信、今 日头条、百度、搜狐、凤凰、UC 等平台或者其他互联网协作平台和媒体来传播和发布 资讯&#xff0c;从而形成的营销、销售、公共关系处理和客户关系服务维护及开拓的一种方 …

模拟微信自动化发送(微信公众号文章自动点击)

大家好&#xff0c;我是烤鸭&#xff1a; 分享个微信自动化发送的新方式&#xff0c;仅技术分享。 本来是公众号文章抓取相关的&#xff0c;审核一直不过&#xff0c;将就看吧。 需要的工具 Java&#xff08;jdk1.8&#xff09; Fiddler Python&#xff08;3.8&#xff09;…

Wetool 一款高效免费的微信社群管理工具,检查单向好友,自动回复、群发

这是一款高效免费的微信社群管理工具&#xff0c;目前功能主要有客服、机器人、单删查询、自动接受好友、以及群管理的一些工具 下面放一下软件功能截图 需要注意的是开启此工具需要下载旧版本的微信&#xff0c;这个在软件安装启动页面会自动进行下载。 单删改查功能 这个功能…

微信运营必备!专业的微信粉丝和社群管理工具!功能强大好用,而且免费!

我们现在的生活&#xff0c;微信已经变成国民APP&#xff0c;几乎每个手机中都会有Ta的影子&#xff0c;就连最新的老人机内置应用中都有。这么庞大的用户体量&#xff0c;很多人都会将自己的客户或者粉丝加到个人号中&#xff0c;有的甚至有500的群&#xff0c;这么多的客户和…

加粉推广全能助手 推广辅助工具 好多粉微信号加粉复制统计工具加强版,加粉推广神器,持续完善升级,新增统计点击转化,页面插件功能,完美支持ocpc接口

最新一次版本是3.7版了&#xff0c;相比最开始的版本&#xff0c;新增了行为转化统计&#xff0c;落地页插件功能。 可能大家还不明白我们的这个系统有什么用了&#xff1f; 好吧&#xff0c;那就简单的介绍下&#xff0c;我们的系统可以给目前的加粉推广的提供最完善的数据统…

轻松采集微信文章,助自媒体创作优质内容!

微信已成为自媒体领域的重要平台之一&#xff0c;其丰富的内容和庞大的用户群体&#xff0c;吸引了越来越多的自媒体人士加入其中。而对于自媒体人士来说&#xff0c;如何快速高效地采集微信文章成为了一个必须掌握的技能。本文将介绍一种基于emlog的微信文章采集方法&#xff…

Wechaty|微信小助手(非web|机器人)

前言 最近在dy上看到有相关wx机器人&#xff08;SCRM&#xff09;在进行相关推广&#xff0c;而之前学习的时候&#xff0c;用基于python开发的itchat玩过一段时间&#xff0c;后来&#xff0c;某一天突然发现微信登不上了&#xff0c;官方的微信网页版也不能登陆了&#xff0…

全网一触即发,自媒体人的内容分发全能助手——融媒宝

作为一个科技数码自媒体人&#xff0c;每天码字、录制视频&#xff0c;那是家常便饭&#xff0c;所谓写文章、录视频的时候&#xff0c;一时忘我一时爽&#xff0c;可到了多平台分发内容&#xff0c;那简直是让人头疼&#xff0c;又浪费太多的时间&#xff0c;分发完毕&#xf…