当前位置: 首页 > news >正文

服务器口令长度、强度、时效限制

银河麒麟服务器的root密码要求 如下:

一是口令生存周期不长于30天。

二是口令长度最小值10个字符。

三是启动口令复杂度要求。

四是强制密码历史,记住24个密码。

#查看当前密码有效期是多少
grep -nr 'PASS_MAX_DAYS' /etc/login.defs
#查看当前密码策略是什么
grep -nr 'password' /etc/pam.d/system-auth        

在银河麒麟服务器中,配置 root 密码策略 以满足您提到的要求,可以通过修改系统的 PAM(Pluggable Authentication Modules)密码策略配置文件 来实现。以下是具体的配置步骤:


1. 口令生存周期不长于 30 天

通过修改 /etc/login.defs 文件,设置密码的最大使用天数。

sudo vi /etc/login.defs

找到以下参数并修改为:

PASS_MAX_DAYS 30

2. 口令长度最小值 10 个字符

通过修改 PAM 配置文件,设置密码的最小长度。

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

在文件中找到以下行(或类似行):

password    requisite     pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=

修改为:

password    requisite     pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type= minlen=10

3. 启动口令复杂度要求

通过修改 PAM 配置文件,启用密码复杂度检查。

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

在文件中找到以下行(或类似行):

password    requisite     pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=

修改为:

password    requisite     pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type= minlen=10 dcredit=-1 ucredit=-1 ocredit=-1 lcredit=-1

参数说明:

  • dcredit=-1:至少包含 1 个数字。
  • ucredit=-1:至少包含 1 个大写字母。
  • ocredit=-1:至少包含 1 个特殊字符。
  • lcredit=-1:至少包含 1 个小写字母。

4. 强制密码历史,记住 24 个密码

通过修改 PAM 配置文件,设置密码历史记录。

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

在文件中找到以下行(或类似行):

password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok

修改为:

password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok remember=24

5. 应用配置

完成上述修改后,保存文件并退出编辑器。然后,运行以下命令使配置生效:

sudo pam-auth-update

6. 验证配置

可以通过以下命令验证配置是否生效:

  • 检查密码生存周期:
    sudo chage -l root
  • 尝试设置不符合要求的密码,验证复杂度检查是否生效。 

 

注意事项

  1. 备份配置文件:在修改配置文件之前,建议先备份原始文件,以便在出现问题时恢复。
    sudo cp /etc/pam.d/system-auth /etc/pam.d/system-auth.baksudo cp /etc/login.defs /etc/login.defs.bak
  2. 测试新密码策略:在正式应用之前,建议先测试新密码策略,确保不会影响系统正常使用。
  3. 通知用户:如果服务器有其他用户,需要提前通知他们新的密码策略,避免因密码不符合要求而无法登录。

相关文章:

  • 基于Python Socket的多线程聊天程序案例分析
  • Springboot集成websocket实现消息推送
  • 【C++教程】C++中为什么优先使用 cout/cin流
  • Windows网络及服务:制作系统盘
  • rk3588上完成halcon的形状模型配准以及和opencv的图像转换
  • 算法 | 成长优化算法(Growth Optimizer,GO)原理,公式,应用,算法改进研究综述,matlab代码
  • 【MySQL】MySQL中的数据类型详解
  • 【前端】【面试】【业务场景】前端如何获取并生成设备唯一标识
  • 使用pyinstaller打包fastapi项目的问题记录
  • 01-初识前端
  • 级联vs端到端、全双工、轮次检测、方言语种、商业模式…语音 AI 开发者都在关心什么?丨Voice Agent 学习笔记
  • 深度学习3.5 图像分类数据集
  • 每日算法-250421
  • Java 并发包核心机制深度解析:锁的公平性、异步调度、AQS 原理全解
  • 【MySQL】:数据库事务管理
  • JavaEE--2.多线程
  • 把dll模块注入到游戏进程的方法_基于文件修改的注入方式
  • MCP:AI时代的“万能插座”,开启大模型无限可能
  • SvelteKit 最新中文文档教程(22)—— 最佳实践之无障碍与 SEO
  • 进程与线程:02 多进程图像
  • 热点问答|澳大利亚联邦选举结果有何看点
  • 校方就退60件演出服道歉:承诺回收服装承担相关费用,已达成和解
  • 政府效率部效果不佳?马斯克有意寻求支持,含糊表态部门未来
  • 阿根廷发生5.8级地震
  • 看纪录片抵学分,贺桂梅:纪录片是对抗低质碎片信息的好媒介
  • 澎湃回声丨23岁小伙“被精神病”8年续:今日将被移出“重精”管理系统