首页 > 系统相关 >如何在Linux中实施密码策略(Ubuntu / CentOS)

如何在Linux中实施密码策略(Ubuntu / CentOS)

时间:2023-10-20 18:34:18浏览次数:33  
标签:策略 CentOS etc Linux 密码 Ubuntu pam

尽管Linux被认为是一个安全的操作系统,但其安全性与登录用户的密码强度一样。密码策略的存在是为了确保为用户设置一个强大的密码,作为一个Linux用户,你应该注意执行这些策略,使违规行为难以发生。你肯定不希望用户配置弱密码或容易猜测的密码,这些密码可以在几秒钟内被黑客强行破解。
在这篇文章中,我们将触及如何在Linux,更具体地说是CentOS和Ubuntu中执行密码策略。我们将介绍如何执行密码策略,如密码到期时间、密码复杂度和密码长度。
一、在Ubuntu / Debian中执行密码策略
你可以通过2种主要方式来执行密码策略。让我们来详细了解一下每种方式。
1、配置可以使用密码的最大天数
首先,您可以配置一个密码策略,该策略要求用户在一定天数后更改密码。实践表明,应该定期更改密码,以防止恶意用户受到控制,并使他们更难以破坏系统。这不仅适用于Linux,还适用于Windows和macOS等其他系统。
为此,在Debian / Ubuntu中,您需要修改/etc/login.defs文件并注意PASS_MAX_DAYS属性。
默认情况下,它被设置为99999天,如图所示。


您可以将其修改为合理的期限,例如30天。只需将当前值设置为30,如图所示,然后保存更改即可。30天后,您将需要创建一个新的密码。


2、使用pam配置密码复杂度
确保密码满足一定程度的复杂性同样至关重要,这将进一步阻止黑客使用暴力侵入您的系统的任何尝试。
通常,强密码应包含大写,小写,数字和特殊字符的组合,并且长度至少应为12-15个字符。
要在Debian / Ubuntu系统中强制设置密码复杂性,您需要安装libpam-pwquality软件包,如下所示:
$ sudo apt install libpam-pwquality


安装完成后,前往/etc/pam.d/common-password文件,从该文件中设置密码策略。默认情况下,文件显示如下:


找到下面显示的行
password requisite pam_pwquality.so retry=3
在该行添加以下属性:
minlen=12 maxrepeat=3 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1 difok=4 reject_username enforce_for_root
整个行应如下所示:


让我们充实这些指令的含义:
retry = 3:此选项将提示用户3次,然后退出并返回错误。
minlen = 12:这指定密码不能少于12个字符。
maxrepeat = 3:密码中最多只能包含3个重复字符。
ucredit = -1:要求密码中至少包含一个大写字符。
lcredit = -1:要求密码中至少包含一个小写字符。
dcredit = -1:密码最后应包含一个数字字符。
ocredit = -1:要求密码中至少包含一个特殊字符。
difok = 3:新密码中最多只能有3个字符的更改出现在旧密码中。
reject_username:如果该选项以常规方式或相反方式包含用户名,则该选项将拒绝密码。
force_for_root:即使是配置密码的root用户,这也可以确保遵守密码策略。
二、在CentOS / RHEL中实施密码策略
对于Debian和Ubuntu系统,我们通过更改/etc/pam.d/common-password配置文件来实施密码策略。
对于CentOS 7和其他派生产品,我们将修改/etc/pam.d/system-auth 或/etc/security/pwquality.conf 配置文件。
因此,继续并打开文件:
$ sudo vim /etc/pam.d/system-auth
找到下面显示的行
password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=
如图所示,将选项附加在行中。
minlen=12 lcredit=-1 ucredit=-1 dcredit=-1 ocredit=-1 enforce_for_root
你最终得到下面这一行:


完成后,保存密码策略并退出文件。
再试一次,当您尝试使用弱密码创建不符合强制策略的用户时,您将遇到终端中显示的错误。


实施密码策略非常容易,并且是防止用户设置弱密码的极好方法,因为弱密码容易被猜中或容易受到暴力攻击。通过执行这些策略,您可以放心,您已经加强了系统的安全性,并使黑客更难以入侵您的系统。
————————————————
版权声明:本文为CSDN博主「oMcLin」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/oMcLin/article/details/107974887

标签:策略,CentOS,etc,Linux,密码,Ubuntu,pam
From: https://www.cnblogs.com/Future-L/p/17777772.html

相关文章

  • 第一章:Linux的一些基本概念
    一些概念在Linux系统中,每个设备都被当成一个文件对待如,SATA接口的硬盘的文件名即为/dev/sd[a-d]。几乎所有硬件设备文件都在/dev这个目录内。窗口Linux默认会为用户提供六个终端让用户登录,切换方式:Ctrl+Alt+F1~F6其中F1对应图形用户界面模式目录当登录用户为root时,~代表......
  • 【Linux驱动】内核模块编译 —— make modules 的使用(单模块编译、多模块编译)
    编译驱动一般采用的是将驱动编译成模块(.ko文件),然后加载到内核,这其中就用到了makemodules命令。目录一、单模块编译1、一个c文件编译成一个ko文件2、多个文件编译成一个ko文件二、多模块编译(多文件多模块)一、单模块编译1、一个c文件编译成一个ko文件下面是最简......
  • 《Linux内核完全注释》(1)
    1概述1.1Linux发展1.1.1UnixUnix诞生于1969年,1972年用C语言进行改写,使其能够广泛推广。1.1.2Minix基于Unix,一群老师研发了minix用于教学,但是由于不开源,功能也不够,只够用于教学。这激发了Linus开发了Linux操作系统。1.1.3GNU计划在1984年,为了推广开源操作系统,让大家都......
  • Linux实用操作
    Linux实用操作快捷键Ctrl+C:强制停止用于Linux程序运行的时候命令输入错误,也可以通过快捷键ctrl+c,退出当前输入,重新输入Ctrl+d:退出或登出通过快捷键:ctrl+d,退出账户的登录退出某些特定程序的专属页面不能用于退出vi/vim历史命令搜索history:通过history命令,查......
  • Linux20--定时任务之:crond计划任务
    1定时任务介绍1.1定时任务含义和用途#含义设定某个日期或时间周期性执行指令比如设定一个闹铃,叫你每天早上7点钟起床等#用途定期备份数据,定期执行脚本程序1.2什么是Crond?#Crond是Linux系统中用来定期执行命令或脚本的一种服务软件一般情况下,安装完CentOS操......
  • centos home空间分给root
    通过mkdir/data创建的文件夹空间继承于/root,当空间不够时,可以从home借一点。备份home目录cd/tar-zcf/tmp/home.tarhome清除/home相关进程:fuser-km/home/如果提示-bash:fuser:commandnotfound,则执行下面命令yuminstall-ypsmisc卸载/home目录:umount/home移除/home......
  • Linux 实现OpenSSL 服务器端客户端通信
    1.OpenSSL安装详情参考博文:https://blog.csdn.net/qq_39521181/article/details/964576732.SSL在学习openssl编程之前,先了解一下什么是SSL,有助于后续的学习。SSL是一个缩写,代表的是SecureSocketsLayer。它是支持在Internet上进行安全通信的标准,并且将数据密码术集成到了......
  • openssl基础使用(密码学 linux)
    目录       实验原理       实验过程           一、对称加密               1、使用rc4加解密               2、使用AES加解密               3、使用3DES加解密           二、非对......
  • 小明哥学linux驱动之USB-OTG(基于gadget框架)【转】
    转自:https://blog.csdn.net/silence3039/article/details/100187666一、简介OTG是On-The-Go的缩写。其设计的初衷是为了两个“外设”在没有PC(Host)的情况下,也可以通过USB进行数据传输。可以理解为,拥有OTG功能的USB设备(OTG设备)既可以做host,也可以做peripheral。二、OTG基本结构2......
  • linux上部署ftp server
    在github上找到了2个还算活跃的方案:https://github.com/fauria/docker-vsftpdhttps://github.com/stilliard/docker-pure-ftpd方案一  https://github.com/fauria/docker-vsftpd1、创建容器dockerrun-d-v/my/data/directory:/home/vsftpd\-p20:20-p21:21-p2110......