openldap之slappasswd

news/2025/10/14 17:34:48/文章来源:https://www.cnblogs.com/limt/p/19141636

slappasswd 是 OpenLDAP 中用于生成加密密码的工具。它对于安全地存储LDAP密码非常重要。下面详细介绍它的使用方法:

基本用法

1. 交互式模式(最常用)

bash
slappasswd

执行后:

  • 系统会提示:New password: (输入密码,不会显示)

  • 再次提示:Re-enter new password: (确认密码)

  • 输出加密后的密码,如:{SSHA}qv8X8l4GHWgoh35fQr0NvYGM+OdfcR1P

2. 命令行直接指定密码

bash
# 不安全的做法,密码会留在命令历史中
slappasswd -s "your_password"# 从文件读取密码(相对安全)
slappasswd -s "$(cat /path/to/password_file)"

常用参数选项

bash
# 指定加密算法
slappasswd -h {MD5}         # 使用MD5加密
slappasswd -h {SHA}         # 使用SHA加密
slappasswd -h {SSHA}        # 使用加盐的SHA(默认,最推荐)
slappasswd -h {CRYPT}       # 使用crypt加密
slappasswd -h {SMD5}        # 使用加盐的MD5# 指定密码
slappasswd -s "mypassword123"# 输出到文件而不是屏幕
slappasswd -s "mypassword123" -o /path/to/encrypted_password_file# 显示帮助信息
slappasswd -H

实际应用示例

场景1:创建LDAP用户时生成加密密码

bash
# 生成加密密码
slappasswd -s "user123password"
# 输出:{SSHA}8Qxd9zrWcBzJCW2rGv9Q7Vp3x5Yzabc1# 在LDIF文件中使用
cat > add_user.ldif << EOF
dn: uid=user1,ou=people,dc=linx-info,dc=com
objectClass: inetOrgPerson
uid: user1
cn: Test User
sn: User
userPassword: {SSHA}8Qxd9zrWcBzJCW2rGv9Q7Vp3x5Yzabc1
EOF

场景2:修改现有用户密码

bash
# 生成新密码
NEW_PASSWORD_HASH=$(slappasswd -s "new_password_123")# 创建修改文件
cat > change_pass.ldif << EOF
dn: uid=user1,ou=people,dc=linx-info,dc=com
changetype: modify
replace: userPassword
userPassword: $NEW_PASSWORD_HASH
EOF# 执行修改
ldapmodify -H ldap://your-server -D "cn=admin,dc=linx-info,dc=com" -W -f change_pass.ldif

场景3:批量创建用户脚本

bash
#!/bin/bash
USERNAME=$1
PLAIN_PASSWORD=$2# 生成加密密码
ENCRYPTED_PASS=$(slappasswd -s "$PLAIN_PASSWORD")cat > /tmp/add_$USERNAME.ldif << EOF
dn: uid=$USERNAME,ou=people,dc=linx-info,dc=com
objectClass: inetOrgPerson
uid: $USERNAME
cn: $USERNAME
sn: $USERNAME
userPassword: $ENCRYPTED_PASS
EOFecho "LDIF file created for user: $USERNAME"

支持的加密算法比较

 
算法示例输出安全性说明
{SSHA} {SSHA}qv8X8l4GHWg... ★★★★★ 加盐SHA,最推荐
{SHA} {SHA}5baa61e4c9... ★★★★ 不加盐SHA
{SMD5} {SMD5}4Qxd9zrWcBz... ★★★ 加盐MD5
{MD5} {MD5}5d41402ab... ★★ 普通MD5,较弱
{CRYPT} {CRYPT}ab1C2d3E... ★★★★ 系统crypt

安全最佳实践

  1. 使用SSHA:

    bash
    # 总是使用加盐的SHA
    slappasswd -h {SSHA} -s "your_password"
  2. 避免密码泄露:

    bash
    # 错误:密码会留在历史中
    slappasswd -s "password123"# 正确:交互式输入
    slappasswd
  3. 文件权限:

    bash
    # 如果输出到文件,设置严格权限
    slappasswd -s "password123" -o /tmp/pass.txt
    chmod 600 /tmp/pass.txt

验证密码(如果需要)

虽然 slappasswd 只用于生成,但您可以用以下方式验证:

bash
# 生成测试
HASH1=$(slappasswd -s "test123")
HASH2=$(slappasswd -s "test123")# 两个哈希值应该不同(因为盐值不同),但都能验证同一密码
echo "Hash 1: $HASH1"
echo "Hash 2: $HASH2"

在LDAP配置中使用

在 slapd.conf 或动态配置中,root密码通常也这样设置:

bash
# 生成root密码
slappasswd -s "admin_secret_password"# 在配置中使用
olcRootPW: {SSHA}qv8X8l4GHWgoh35fQr0NvYGM+OdfcR1P

记住:永远不要使用明文密码存储在任何LDAP条目中!总是使用 slappasswd 生成的加密哈希。

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

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

相关文章

杰理GPIO状态设置

高阻态/*----------------------------------------------------------------------------*/ /**@brief 把所有IO设置为高阻@param x:显示横坐标@return void@author Change.tsai@note void led7_clear(void…

【STM32 系列】理清 xxRAM、xxROM、xxFlash 的核心作用,附 H7 系列超便捷内存区域管理方法

前言 这篇文章我们会对各种内存进行一次较为详细的梳理,主要是分清它们的区别,使得我们可以更好地了解并利用好内存。 RAM、ROM、Flash 这三个总的概括,就使用一个表格来说明吧,表格如下:内存 存储类型 核心功能 …

深入理解 AbstractQueuedSynchronizer(AQS):构建高性能同步器的基石 - 指南

深入理解 AbstractQueuedSynchronizer(AQS):构建高性能同步器的基石 - 指南pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-fa…

2025 年清洗机厂家最新推荐:高压清洗机、超声波清洗机等多类型设备企业品牌权威榜单,帮企业高效筛选优质清洗设备

随着工业生产对设备洁净度与生产效率要求不断提升,清洗机市场需求日益旺盛,但市场品牌繁杂、产品质量参差不齐的问题也愈发凸显。许多企业在选购时,常因缺乏专业信息支撑,难以辨别设备技术是否适配自身行业、质量是…

AVAssetExportSession 为什么比 videotoolbox 处理视频快

https://www.doubao.com/thread/wdad52d2858751bac判断力是一个人最重要的能力

springboot线上问题websocket、rabbitmq失效

问题出现,之前没问题,发过版后突然不行了让后一直不消费,生产者正常,websocket也连接不上最后确认是开起了懒加载,导致初始化失效了,出现连锁反应

从零开始:用C#开发的海量文件内容秒搜神器TDSContent——免费开源高效办公必备!

从零开始:用C#开发的海量文件内容秒搜神器TDSContent——免费开源高效办公必备!从零开始:用C#开发的海量文件内容秒搜神器TDSContent——免费开源高效办公必备! 还在为全文搜索烦恼吗?是否被收费软件的糟糕体验困扰?…

centos 7.9 安装单机版k8s

我这里提前安装好了 docker ,直接着手安装k8s[root@zjk ~]# docker -v Docker version 26.1.4, build 5650f9b1、关闭防火墙、selinux(减少不必要的麻烦)、交换区(防止k8s对pod内存监控幻觉)systemctl stop firew…

隐藏继承成员什么时候用到

“只有在‘故意不让父类成员参与多态’,但又不想改父类签名时,才用 new 隐藏继承成员。”一、先分清 表格 复制关键字目的运行时效果override 扩展/替换父类实现 动态绑定——真实类型决定方法new 彻底隐藏父类成员 …

2025 旋转蒸发仪选型指南:适配科研与生产需求的优质厂家 TOP5 推荐

2025 旋转蒸发仪选型指南:适配科研与生产需求的优质厂家 TOP5 推荐在精细化工提纯、生物医药溶剂回收、高校科研样品预处理等场景中,旋转蒸发仪的控温精度、真空适配性及运行稳定性,直接决定实验效率与产物纯度。面…

今天被公司告知不续签合同了,我被优化了 哈哈哈

沒什么别的事儿,今天被公司告知不续签合同了,我被优化了 哈哈哈, 记录一下

移动终端安全:实验2-创建自签名证书对APP签名 - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

2025 年混合机厂家最新推荐排行榜:强力混合机 / 倾斜式混合机 / 耐火材料混合机 / 锂电池材料混合机 / 球团强力混合机优质厂家推荐

当前锂电池、耐火材料、陶瓷、化工等行业飞速发展,对混合机的需求愈发多元,不仅要求设备混合均匀度高,还需适配不同物料特性与生产场景。但行业内混合机品牌繁杂,产品质量参差不齐,部分设备存在混合死角、能耗高、…

Oracle OCM 认证的定位与价值

对于刚接触数据库的“小白”来说,Oracle OCM认证是个非常陌生的词,”最高级认证“、”认证大师“听起来像一座遥不可及的高山。别担心,OCM虽然难,但”难啃的骨头才香“。 OCM认证,全称为Oracle Certified Master(…

2025 优质防爆接线盒/防爆穿线盒/防爆接电箱厂家推荐榜:安全与专业兼具的行业之选

在石油、化工、矿山等易燃易爆环境中,防爆接线盒作为电气系统的 "安全卫士",其质量与性能直接关系到生产安全。基于产品合规性、市场应用反馈及综合服务能力,本文梳理出五家值得关注的防爆接线盒制造商,…

Microsoft Purview实现数据泄露概率降低30%的技术解析

根据Forrester研究报告,微软Purview统一数据安全平台通过精细化数据防丢失策略、自动化合规审计和集中式信息治理,帮助企业实现数据泄露概率降低30%,调查时间减少75%,并节省近50万美元的遗留成本。Microsoft Purvi…

Day13-C:\Users\Lenovo\Desktop\note\code\JavaSE\Basic\src\com\exception

异常EXCEPTION 检查性异常 用户错误或问题引起的异常 运行时异常 运行时异常可以被程序员发现 错误ERROR 错误不是异常,而是脱离程序员控制的问题,比如栈溢出 异常处理框架 java可以吧异常当作对象来处理,并定义一个…

2025 值得关注的除锈剂厂家企业推荐榜单,覆盖多场景需求

在工业维护、汽车养护、设备保养等多个领域,除锈剂作为基础防护产品发挥着关键作用。市面上的除锈剂企业各具特色,有的深耕技术研发,有的侧重场景适配,有的凭借口碑站稳市场。以下结合企业技术实力、产品适配性及行…

Day3整形输入

#include<stdio.h>int main(){int a;//通过键盘输入赋值//&运算符,表示取地址运算符scanf("%d",&a);printf("%d\n",a);return 0; }

2025优质电缆/防火/模压/瓦楞/大跨距/热镀锌/热浸锌/不锈钢/光伏/铝合金/锌铝镁桥架厂家推荐:五家实力企业的技术与服务特色解析

在工业电力传输与布线系统中,电缆桥架作为关键基础设施,其品质直接影响工程安全性与运维效率。经过市场调研与行业口碑梳理,以下五家桥架厂家凭借各自技术优势与服务能力脱颖而出,涵盖不同规模与特色定位,为各类工…