如何在Linux上设置密码复杂度

如何在Linux上设置密码复杂度linux

经过麦格什 · 马鲁塔穆图MAGESH MARUTHAMUTHU) · 最近更新:2019年9月11日安全

用户管理是Linux系统管理的重要任务之一。这涉及不少方面,而实施强密码策略就是其中之一。dom

若是要在Linux上生成强密码,请导航至如下URL 。加密

它将限制对系统的未受权访问。spa

默认状况下,Linux是每一个人都知道的安全机制。可是,咱们须要对此进行必要的调整以使其更安全。unix

不安全的密码将致使违反安全性。所以,请对此特别注意。md5

若是要查看密码强度和生成的强密码的分数,请导航至如下URL 。terminal

在本文中,咱们将向您展现如何在Linux上实现最佳安全策略。get

咱们可使用PAM(“可插入身份验证模块”)在大多数Linux系统上实施密码策略。it

能够在如下位置找到该文件。

  • 基于Redhat的系统@ /etc/pam.d/system-auth
  • 基于Debian的系统@ /etc/pam.d/common-password。

能够在/etc/login.defs文件中找到默认的密码过时详细信息。

我已修剪此文件以更好地理解。

#vi /etc/login.defs

 

PASS_MAX_DAYS 99999

PASS_MIN_DAYS 0

PASS_MIN_LEN 5

PASS_WARN_AGE 7

细节:

  • PASS_MAX_DAYS: 可使用密码的最大天数。
  • PASS_MIN_DAYS: 两次密码更改之间容许的最少天数。
  • PASS_MIN_LEN: 可接受的最小密码长度。
  • PASS_WARN_AGE: 密码过时前给出的警告天数。

咱们将向您展现如何在Linux中实施如下十一个密码策略。

  • 密码最长天数
  • 密码分钟
  • 密码警告日
  • 密码历史记录或拒绝重用密码
  • 密码最小长度
  • 最小大写字母
  • 最小小写字符
  • 密码中的最小位数
  • 最少其余字符(符号)
  • 账户锁定-重试
  • 账户解锁时间

什么是密码最长天数?

此参数限制了密码可使用的最大天数。用户必须在到期前更改其账户密码。

若是他们忘记更改,则不容许他们登陆系统。他们须要与管理团队合做来摆脱它。

能够在/etc/login.defs文件中设置。在这里,我将其设置为   90 days。

#vi /etc/login.defs

 

PASS_MAX_DAYS 90

什么是密码最少天数?

此参数限制能够更改密码的最小天数。

例如,假设此参数设置为15,而且用户今天更改了密码。而后,他将没法在15天后再次更改密码。

能够在/etc/login.defs文件中设置。在这里,我将其设置为15 days。

#vi /etc/login.defs

 

PASS_MIN_DAYS 15

什么是密码警告日?

此参数控制密码的警告天数,它将在密码到期时向用户发出警告。

在警告日结束以前,将按期向用户发出警告。这有助于用户在到期前更改其密码。不然,咱们须要与管理团队合做以解锁密码。

能够在/etc/login.defs文件中设置。在这里,我将其设置为10 days。

#vi /etc/login.defs

 

PASS_WARN_AGE 10

注意:以上全部参数仅适用于新账户,不适用于现有账户。

什么是密码历史记录或拒绝重用密码?

此参数保留对密码历史记录的控制。保留使用密码的历史记录(没法重复使用的先前密码的数量)。

当用户尝试设置新密码时,它将检查密码历史记录并在使用相同的旧密码时警告用户。

能够在/etc/pam.d/system-auth文件中设置。在这里,我将其设置为  5密码历史记录。

#vi /etc/pam.d/system-auth

 

密码足够pam_unix.so md5阴影nullok try_first_pass use_authtok 记住= 5

什么是密码最小长度?

此参数保留最小密码长度条件。当用户设置新密码时,它将检查该参数,并警告用户是否尝试设置小于此长度的密码。

能够在/etc/pam.d/system-auth文件中设置。在这里,我将其设置为12字符以最小密码长度。

#vi /etc/pam.d/system-auth

 

密码必填pam_cracklib.so try_first_pass retry = 3 minlen = 12

try_first_pass retry = 3:容许用户在passwd命令停止以前设置一个好的密码。

设置最小的大写字符?

此参数保留在密码中添加多少个最小大写字符。这些是密​​码增强参数,能够增长密码强度。

当用户设置新密码时,它将检查该参数并警告用户是否在密码中不包含任何大写字符。

它能够在文件中设置。在/etc/pam.d/system-auth这里,我将其设置为1字符,以最小化密码长度。

#vi /etc/pam.d/system-auth

 

密码必填pam_cracklib.so try_first_pass retry = 3 minlen = 12 ucredit = -1

设置最小的小写字符?

此参数保留在密码中添加多少个小写字符。这些是密​​码增强参数,能够增长密码强度。

当用户设置新密码时,它将检查该参数并警告用户是否在密码中不包含任何小写字符。

能够在文件中设置。在/etc/pam.d/system-auth这里,我将其设置为1字符。

#vi /etc/pam.d/system-auth

 

密码必填pam_cracklib.so try_first_pass retry = 3 minlen = 12 lcredit = -1

设置密码的最小位数?

此参数保留密码中应添加的位数。这些是密​​码增强参数,能够增长密码强度。

当用户设置新密码时,它将检查此参数并警告用户是否未在密码中包含任何数字。

能够在/etc/pam.d/system-auth文件中设置。在这里,我将其设置为1角色。

#vi /etc/pam.d/system-auth

 

密码必填pam_cracklib.so try_first_pass retry = 3 minlen = 12 dcredit = -1

在密码中设置最少其余字符(符号)?

此参数保留在密码中添加多少个特殊字符。这些是密​​码增强参数,能够增长密码强度。

当用户设置新密码时,它将检查该参数并警告用户是否在密码中未包含任何符号。

能够在/etc/pam.d/system-auth文件中设置。在这里,我将其设置为1角色。

#vi /etc/pam.d/system-auth

 

密码必填pam_cracklib.so try_first_pass retry = 3 minlen = 12 ocredit = -1

设置账户锁定?

此参数控制用户的失败尝试。达到给定的登陆尝试失败次数后,它将锁定用户账户。

能够在/etc/pam.d/system-auth文件中设置。

#vi /etc/pam.d/system-auth

 

要求认证pam_tally2.so onerr =失败审核静默拒绝= 5

所需账户pam_tally2.so

设置账户解锁时间?

此参数使用户保持解锁时间。若是用户账户在连续的身份验证失败后被锁定。

达到指定时间后,便可解锁锁定的用户账户。设置账户应保持锁定状态的时间(900秒= 15分钟)。

能够在/etc/pam.d/system-auth文件中设置。

#vi /etc/pam.d/system-auth

 

须要认证pam_tally2.so onerr =失败审核静默拒绝= 5 unlock_time = 900

所需账户pam_tally2.so