当前位置: 首页 > 科技观察

Linux如何设置密码复杂度?

时间:2023-03-12 09:21:37 科技观察

用户管理是Linux系统管理员最重要的事情之一。涉及的因素很多,实施强密码策略是用户管理的一个方面。转到以下URL以查看如何在Linux上生成强密码。它限制未经授权的用户访问系统。大家都知道Linux默认的策略是非常安全的,但是我们还是要做一些微调来更加安全。弱密码存在安全风险,所以要小心。进入以下网址查看生成的强密码的密码长度和分值。本文将教您如何在Linux中实施最安全的策略。在大多数Linux系统中,我们可以使用PAM(可插入身份验证模块)来执行密码策略。该文件可以在下面的路径中找到。在RedHat系列系统中,路径为:/etc/pam.d/system-auth。Debian系列系统中,路径:/etc/pam.d/common-password。对于默认的密码过期时间,您可以在/etc/login.defs文件中查看详细信息。为了更好的理解,我提取了部分文件:#vi/etc/login.defsPASS_MAX_DAYS99999PASS_MIN_DAYS0PASS_MIN_LEN5PASS_WARN_AGE7详细解释:PASS_MAX_DAYS:密码可以使用的最大天数。PASS_MIN_DAYS:密码更改之间的最小天数。PASS_MIN_LEN:最小密码长度。PASS_WARN_AGE:密码过期前发出警告的天数。我们将展示如何在Linux中实现以下11种密码策略。密码可以使用的最大天数密码更改之间的最小天数密码到期前发出警告的最小天数密码历史记录/拒绝密码重用最小密码长度最小大写字母数最小小写字母数其他字符数(符号)数字最少帐户锁定-重试帐户解锁时间密码最多可以使用多少天?此参数限制密码可以使用的最大天数。它强制用户在密码过期之前更改他/她的密码。如果他们忘记修改它,那么他们将无法登录系统。他们需要联系管理员才能正常登录。这个参数可以在/etc/login.defs文件中设置。我将此参数设置为90天。#vi/etc/login.defsPASS_MAX_DAYS90最小密码天数是多少?此参数限制两次修改之间的最小天数。例如,该参数设置为15天,用户今天修改密码,则15天内不能修改密码。这个参数可以在/etc/login.defs文件中设置。我设置为15天。#vi/etc/login.defsPASS_MIN_DAYS15密码警告天数是多少?该参数控制密码警告前的天数,当密码即将过期时会警告用户。用户每天都会收到警告提醒,直到警告日结束。提醒用户在密码过期前修改密码,否则需要联系管理员解锁密码。这个参数可以在/etc/login.defs文件中设置。我设置为10天。#vi/etc/login.defsPASS_WARN_AGE10注意:以上所有参数只对新账户有效,对现有账户无效。什么是密码历史记录或拒绝密码重用?此参数控制密码历史记录。它记录曾经使用过的密码(禁止使用的以前使用过的密码的数量)。当用户设置新密码时,它会检查密码历史记录并在他们即将设置的密码是旧密码时发出警告。这个参数可以在/etc/pam.d/system-auth文件中设置。我将密码历史设置为5。#vi/etc/pam.d/system-authpasswordsufficientpam_unix.somd5shadownulloktry_first_passuse_authtokremember=5最小密码长度是多少?该参数表示密码的最小长度。当用户设置新密码时,系统会检查该参数,如果新密码的长度小于该参数设置的值,则会收到警告提示。这个参数可以在/etc/pam.d/system-auth文件中设置。我将最小密码长度设置为12。#vi/etc/pam.d/system-authpasswordrequisitepam_cracklib.sotry_first_passretry=3minlen=12try_first_passretry=3:在密码设置界面,用户有3次重设密码的机会。设置最小大写字母数?该参数至少表示密码中需要的大写字母个数。这些是使密码更强的密码强度参数。当用户设置新密码时,系统会检查该参数,如果密码中不包含大写字母,则会收到警告。这个参数可以在/etc/pam.d/system-auth文件中设置。我将密码(大写字母)设置为最小长度为1个字母。#vi/etc/pam.d/system-authpasswordrequisitepam_cracklib.sotry_first_passretry=3minlen=12ucredit=-1设置最小小写字母个数?该参数至少表示密码中需要的小写字母个数。这些是使密码更强的密码强度参数。当用户设置新密码时,系统会检查该参数,如果密码不包含小写字母,系统会收到警告。这个参数可以在/etc/pam.d/system-auth文件中设置。我把它设置为1个字母。#vi/etc/pam.d/system-authpasswordrequisitepam_cracklib.sotry_first_passretry=3minlen=12lcredit=-1设置密码最少位数?该参数表示密码中要求的最少位数。这些是使密码更强的密码强度参数。当用户设置新密码时,系统会检查该参数,如果密码中没有数字,系统会收到警告。这个参数可以在/etc/pam.d/system-auth文件中设置。我将它设置为1个数字。#vi/etc/pam.d/system-authpasswordrequisitepam_cracklib.sotry_first_passretry=3minlen=12dcredit=-1设置密码中其他字符(符号)的最少个数?该参数至少表示密码中需要的特殊符号的个数。这些是使密码更强的密码强度参数。当用户设置新密码时,系统会检查该参数,如果密码中没有特殊符号,系统会发出警告。这个参数可以在/etc/pam.d/system-auth文件中设置。我将它设置为1个字符。#vi/etc/pam.d/system-authpasswordrequisitepam_cracklib.sotry_first_passretry=3minlen=12ocredit=-1设置账户锁?该参数控制用户连续登录失败的最大次数。当达到设置的连续登录失败次数阈值时,账户将被锁定。这个参数可以在/etc/pam.d/system-auth文件中设置。#vi/etc/pam.d/system-authauthrequiredpam_tally2.soonerr=failauditsilentdeny=5accountrequiredpam_tally2.so设置账户解锁时间?该参数表示用户解锁时间。如果用户帐号在连续认证失败后被锁定,则需要经过设置的解锁时间后才能解锁。设置锁定帐户的解锁时间(900秒=15分钟)。这个参数可以在/etc/pam.d/system-auth文件中设置。#vi/etc/pam.d/system-authauth需要pam_tally2.soonerr=failauditsilentdeny=5unlock_time=900account需要pam_tally2.so