Ubuntu22.04下安装LDAP

目录

  • 1 简单说明
  • 2 安装配置
    • 2.1 安装
      • 1、安装前准备
      • 2、安装 OpenLADP
      • 3、配置OpenLDAP
      • 4、设置基本组
      • 5、添加新组
      • 5、添加 OpenLDAP 用户
    • 2.2 安装 LDAP 帐户管理器
      • 1、安装
      • 2、配置 LDAP 帐户管理器
  • 3 简单使用
    • 3.1 创建一个组
    • 3.2 创建一个用户
  • 总结

1 简单说明

之前写过在Centos下的安装,以及使用源码包的方式安装OpenLADP,客户端使用的PHPLDAPadmin,在使用的时候创建用户时并不直观。

这次在Ubuntu22.04上安装使用的是apt来安装,同时使用 LDAP 帐户管理器 (LAM) 来作为 OpenLDAP 服务器的前端。

2 安装配置

2.1 安装

1、安装前准备

条件:
Ubuntu 22.04
在安装之前需要确认80端口没有被占用
具有根/管理员权限的非根用户

在开始 安装 OpenLDAP 服务器之前,需要确保 OpenLDAP 服务器的 FQDN(完全限定域名)配置正确。在这里使用 ldap.localdomain.com

# 在 /etc/hosts 中添加
192.168.92.10 ldap.localdomain.com

2、安装 OpenLADP

# 更新存储库
sudo apt update
sudo apt install slapd ldap-utils

在安装 OpenLDAP 包期间,系统会要求设置 OpenLDAP 的管理员密码。输入 OpenLDAP 管理员用户的强密码并选择“确定”,然后重复您的密码。并且 OpenLDAP 安装将完成。
在这里插入图片描述
在这里插入图片描述

3、配置OpenLDAP

# 要开始配置 OpenLDAP 服务器,请运行以下命令。此命令将重新配置主 OpenLDAP 包“slapd”,您将被要求提供一些基本的 OpenLDAP 配置。
sudo dpkg-reconfigure slapd

当询问“省略 OpenLDAP 服务器配置?”时,选择“否”。这将使用新配置文件和新数据库设置 OpenLDAP 服务器。
在这里插入图片描述

输入 OpenLDAP 安装的域名并选择“确定”。此域名将用作 OpenLDAP 服务器的 DN(专有名称)。在此演示中,域名为“localdomain.com”,因此 DN 为“dc=localdomain,dc=com”。
在这里插入图片描述

输入将在 DN 中使用的组织名称。可以为此使用域,但也可以使用其他名称。
在这里插入图片描述

现在输入 OpenLDAP 服务器的管理员密码并重复密码。另外,请确保密码正确。
在这里插入图片描述
在这里插入图片描述

当要求删除旧数据库时,选择“否”。
在这里插入图片描述

现在选择“是”移动旧的 OpenLDAP 数据库,OpenLDAP 配置完成。
在这里插入图片描述

下面是 OpenLDAP 配置完成后的输出。
在这里插入图片描述重新配置 slapd 包后,使用以下命令编辑配置文件 /etc/ldap/ldap.conf 。

sudo vim /etc/ldap/ldap.conf# 这里的“BASE”是“dc=localdomain,dc=com”,OpenLDAP 服务器的“URI”是“ldap://ldap.localdomain.com
BASE    dc=localdomain,dc=com
URI     ldap://ldap.localdomain.com # 重启服务
sudo systemctl restart slapd.service
sudo systemctl status slapd.service 
● slapd.service - LSB: OpenLDAP standalone server (Lightweight Directory Access Protocol)Loaded: loaded (/etc/init.d/slapd; generated)Drop-In: /usr/lib/systemd/system/slapd.service.d└─slapd-remain-after-exit.confActive: active (running) since Thu 2024-08-22 14:14:36 CST; 7s agoDocs: man:systemd-sysv-generator(8)Process: 2245951 ExecStart=/etc/init.d/slapd start (code=exited, status=0/SUCCESS)Tasks: 3 (limit: 9405)Memory: 3.3MCPU: 21msCGroup: /system.slice/slapd.service└─2245960 /usr/sbin/slapd -h "ldap:/// ldapi:///" -g openldap -u openldap -F /etc/ldap/slapd.dAug 22 14:14:36 template systemd[1]: Starting LSB: OpenLDAP standalone server (Lightweight Directory Access Protocol)...
Aug 22 14:14:36 template slapd[2245951]:  * Starting OpenLDAP slapd
Aug 22 14:14:36 template slapd[2245957]: @(#) $OpenLDAP: slapd 2.5.18+dfsg-0ubuntu0.22.04.2 (Jul 12 2024 21:51:23) $Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Aug 22 14:14:36 template slapd[2245960]: slapd starting
Aug 22 14:14:36 template slapd[2245951]:    ...done.
Aug 22 14:14:36 template systemd[1]: Started LSB: OpenLDAP standalone server (Lightweight Directory Access Protocol).# 运行以下命令来检查和验证 OpenLDAP 基本配置
sudo ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:///
#######
dn: dc=localdomain,dc=com
objectClass: top
objectClass: dcObject
objectClass: organization
o: localdomain.com
dc: localdomain

4、设置基本组

# 1、创建 基本组
## 创建一个新的 OpenLDAP 用户基本组,将创建两个不同的基本组,名为“People”的组用于存储用户,然后名为“Groups”的组用于在 OpenLDAP 服务器上存储组。
# 可以使用 LDIF 文件(LDAP 数据交换格式)和 LDAP 工具“ldapadd”
mkdir ldap 
cd ldapcat >> base-groups.ldif << EOF
dn: ou=People,dc=localdomain,dc=com
objectClass: organizationalUnit
ou: Peopledn: ou=Groups,dc=localdomain,dc=com
objectClass: organizationalUnit
ou: Groups
EOFsudo ldapadd -x -D cn=admin,dc=localdomain,dc=com -W -f base-groups.ldif
### 输出
Enter LDAP Password: 
adding new entry "ou=People,dc=localdomain,dc=com"adding new entry "ou=Groups,dc=localdomain,dc=com"# 查看
sudo ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:///
#### 输出
dn: dc=localdomain,dc=com
objectClass: top
objectClass: dcObject
objectClass: organization
o: localdomain.com
dc: localdomain
####### 以下为刚才新加的内容
dn: ou=People,dc=localdomain,dc=com
objectClass: organizationalUnit
ou: Peopledn: ou=Groups,dc=localdomain,dc=com
objectClass: organizationalUnit
ou: Groups

5、添加新组

vim group.ldif
## 创建一个名为“netops”的新组,将其存储在基本组“Groups”中并定义 gidNumber 为“5000”
dn: cn=netops,ou=Groups,dc=localdomain,dc=com
objectClass: posixGroup
cn: netops
gidNumber: 5000# 运行下面的“ldapadd”命令以添加新的“netops”组。并确保输入 OpenLDAP 服务器的管理员密码。
sudo ldapadd -x -D cn=admin,dc=localdomain,dc=com -W -f group.ldif
#### 输出
Enter LDAP Password: 
adding new entry "cn=netops,ou=Groups,dc=localdomain,dc=com"## 删除
# ldapdelete -D "cn=admin,dc=localdomain,dc=com" -W  "cn=netops,ou=Groups,dc=localdomain,dc=com"# 查看
sudo ldapsearch -x -LLL -b dc=localdomain,dc=com '(cn=netops)' gidNumber
######
dn: cn=netops,ou=Groups,dc=localdomain,dc=com
gidNumber: 5000

5、添加 OpenLDAP 用户

# 生成加密密码 
slappasswd 
New password: 
Re-enter new password: 
{SSHA}ms1fuVBly5kBXdPmPRlg8mavZDyf638e# 
cat >> user.ldif <<EOF
dn: uid=xiaoming,ou=People,dc=localdomain,dc=com
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
uid: xiaoming
sn: Wang
givenName: Xiaoming
cn: Xiaoming Wang
displayName: Xiaoming Wang
uidNumber: 10000
gidNumber: 5000
userPassword: {SSHA}ms1fuVBly5kBXdPmPRlg8mavZDyf638e
gecos: Xiaoming Wang
loginShell: /bin/bash
homeDirectory: /home/xiaoming
EOF# 使用命令添加用户
sudo ldapadd -x -D cn=admin,dc=localdomain,dc=com -W -f user.ldif
Enter LDAP Password: 
adding new entry "uid=xiaoming,ou=People,dc=localdomain,dc=com"# 查看验证
sudo ldapsearch -x -LLL -b dc=localdomain,dc=com '(uid=xiaoming)' cn uidNumber gidNumber
dn: uid=xiaoming,ou=People,dc=localdomain,dc=com
cn: Xiaoming Wang
uidNumber: 10000
gidNumber: 5000

2.2 安装 LDAP 帐户管理器

LDAP 帐户管理器 (LAM) 是一个 Web 应用程序,可用作 OpenLDAP 服务器的前端。它允许您从 Web 浏览器管理 OpenLDAP 服务器,您可以从 Web 浏览器设置新用户、组等。
默认情况下,LAM 在 Ubuntu 存储库中可用。您可以使用下面的 apt 命令安装它。这将安装一些其他包,包括 PHP 和 Apache2 网络服务器

1、安装

sudo apt install ldap-account-manager
登录:http://192.168.92.10/lam

2、配置 LDAP 帐户管理器

单击“编辑服务器配置文件” OpenLDAP 服务器设置 LAM 配置文件
在这里插入图片描述在这里插入图片描述

当询问密码时,输入默认密码“lam”并单击“登录”。 LDAP 帐户管理器上的默认配置文件是 lam。为 OpenLDAP 服务器编辑此默认配置文件。

在这里插入图片描述

做一些简单设置:

  • 在“常规设置”页面上,可以看到一些不同的设置。
  • 在“工具设置”中,输入 OpenLDAP 服务器的主 DN(可分辨名称)。这里,DN 是dc=localdomain,dc=com
  • 在“安全设置”部分,选择“登录方式”为“固定列表”。然后,输入详细信息登录 OpenLDAP 服务器。 OpenLDAP 的默认用户是 admin ,因此该字段应该是这样的 cn=admin,dc=localdomain,dc=com
  • 最后,在“密码配置文件”部分输入新密码。这将更改配置文件“lam”的默认密码。然后,单击“保存”按钮应用新的更改。
    在这里插入图片描述

保存后会被重定向到 LDAP 帐户管理员登录页面。再次单击“LAM 配置”菜单并编辑默认配置文件“lam”。

  • 现在转到“帐户类型”页面以设置 OpenLDAP 服务器的默认组。
  • 在“用户”部分,将 LDAP 后缀输入为 ou=People,dc=localdomain,dc=com 。 在这个例子中,所有用户都应该在 People 上可用。
  • 在“组”部分,输入 LDAP 后缀为 ou=Groups,dc=localdomain,dc=com 。在此示例中,所有组都应在基本组 Groups 中可用。
    在这里插入图片描述在这里插入图片描述
    现在单击“保存”按钮以保存对默认配置文件“lam”的更改。
    此处的用户和groups和之前在创建组的时候名字一致

再次被重定向到 LDAP 帐户管理员登录页面。默认用户登录现已更改为“admin”。输入 OpenLDAP 密码的管理员密码,然后单击“登录”。你应该得到 LAM 仪表板。
在这里插入图片描述
在这里插入图片描述

3 简单使用

3.1 创建一个组

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.2 创建一个用户

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

# 在后台查看可以看到 SiLi
sudo ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:///
##### 
dn: cn=SiLi,ou=Groups,dc=localdomain,dc=com
cn: SiLi
gidNumber: 10000
objectClass: posixGroup
memberUid: SiLi

总结

在Ubuntu22.04的时候可以使用apt的方式来安装,在安装LDAP的web 服务器的时候可以考虑选择 LDAP 帐户管理器 (LAM) 。因为 PHPLDAPadmin 安装时需要 php 的环境依赖,相对来说安装麻烦。此外在 PHPLDAPadmin 中创建组织和用户时与平常的语法有很大不同,对新手来说不友好。

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

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

相关文章

nginx和tomcat负载均衡,动静分离

文章目录 一&#xff0c;tomcat1.tomca用途2.tomcat重要目录 二&#xff0c;nginx1.Nginx应用2.nginx作用3.nginx的正向代理和反向代理3.1正向代理3.2反向代理(单级)3.3反向代理(多级) 4.nginx负载均衡4.1Nginx支持的常见的分流算法1. 轮询(Round Robin):2.最少连接数(LeastCon…

[MRCTF2020]Hello_ misc

解压得一个png图片和一个flag.rar 图片拖入010editor 选择带zip头的这段蓝色全部复制&#xff0c;file-new-new Hex File&#xff0c;黏贴到新文件&#xff0c;另存为为1.zip 要密码,线索中断&#xff08;当然try to restore it.png&#xff0c;隐藏了zip压缩包&#xff0c;可…

uniapp - plugins的组件配置使用

点击进入到uniapp中mp-weixin的配置中 点击进入小程序的plugin的配置 在项目中&#xff0c;我们可引用插件的使用&#xff0c;例如一些快递100&#xff0c;点餐插件的业务引入 添加插件 在使用插件前&#xff0c;首先要在小程序管理后台的“设置-第三方服务-插件管理”中添加…

java ssl使用自定义证书或忽略证书

1.证书错误 Caused by: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target 2.生成客户端证书 openssl x509 -in <(openssl s_client -connect 192.168.11.19:8101 -prexit 2>/dev/null) -ou…

C HTML格式解析与生成

cmake报错替换 if(NOT MyHTML_BUILD_WITHOUT_THREADS OR NOT MyCORE_BUILD_WITHOUT_THREADS) set(CMAKE_THREAD_PREFER_PTHREAD 1) if (WIN32) set(CMAKE_USE_WIN32_THREADS_INIT ON) set(CMAKE_THREAD_PREFER_PTHREADS TRUE) set(THREADS_PR…

windows配置jmeter定时任务

场景&#xff1a; 需要让脚本在指定的执行 步骤&#xff1a; 准备jmeter脚本&#xff0c;保证在命令行中可以调用脚本且脚本运行正常&#xff1a;"C:\Apache\jmeter\bin\jmeter.bat" -n -t C:\tests\test_plan.jmx -l C:\tests\results.jtl -t : 指定执行jmeter脚…

异步交互技术Ajax-Axios

目录 一、同步交互和异步交互 二、Ajax 1.概述 2.如何实现ajax请求 三、异步传输数据乱码的问题 regist.html页面代码 服务端代码处理 四、Axios 1. Axios的基本使用 &#xff08;1&#xff09;引入Axios文件 &#xff08;2&#xff09;使用Axios发送请求&#xff0…

通过Python绘制不同数据类型适合的可视化图表

在数据可视化中&#xff0c;对于描述数值变量与数值变量之间的关系常见的有散点图和热力图&#xff0c;以及描述数值变量与分类变量之间的关系常见的有条形图&#xff0c;饼图和折线图&#xff0c;可以通过使用Python的matplotlib和seaborn库来绘制图表进行可视化表达&#xff…

【大数据】什么是数据中台?

随着企业规模不断扩大、业务多元化——中台服务架构的应运而生。“中台”早期是由美军的作战体系演化而来的&#xff0c;技术上说的“中台”主要是指学习这种高效、灵活和强大的指挥作战体系。阿里在今年发布“双中台ET”数字化转型方法论&#xff0c;“双中台”指的是数字中台…

ResNet网络学习

简介 Residual Network 简称 ResNet (残差网络) 下面是ResNet的网络结构&#xff1a; ResNet详细介绍 原理 传统方法的问题&#xff1a; 对于一个网络&#xff0c;如果简单地增加深度&#xff0c;就会导致 梯度消失 或 梯度爆炸&#xff0c;我们采取的解决方法是 正则化。…

卸载nomachine

网上的方法:提示找不到命令 我的方法: step1. 终端输入 sudo find / -name nxserver 2>/dev/null确认 NoMachine 的实际安装路径。你可以使用 find 命令在系统中查找 nxserver 脚本的位置。 找到路径后,你可以使用该路径来卸载 NoMachine。 如下图,紫色框中是我的路径…

ProtoBuf简要介绍与快速上手使用(C++版)

文章目录 一、 初识ProtoBuf1. 序列化和反序列化概念2. ProtoBuf是什么3. ProtoBuf的使用特点 二、 讲解说明三、 快速上手1. 创建 .proto 文件2. 编译 contacts.proto 文件&#xff0c;生成C文件3. 序列化与反序列化的使用4. 小结 ProtoBuf 使用流程 一、 初识ProtoBuf 1. 序…

Linux权限维持实战

目录 介绍步骤 介绍 攻击者在获取服务器权限后&#xff0c;会通过一些技巧来隐藏自己的踪迹和后门文件 查看/tmp目录下的flag文件 查看/root目录下具有特殊文件属性的文件 操作机中共有几个SUID文件 操作机中共有几个SGID文件 查看操作机中ssh公私钥免密登陆 查看strace后门 …

Web3链上聚合器声呐已全球上线,开启区块链数据洞察新时代

在全球区块链技术高速发展的浪潮中&#xff0c;在创新发展理念的驱动下&#xff0c;区块链领域的工具类应用备受资本青睐。 2024年8月20日&#xff0c;由生纳&#xff08;香港&#xff09;国际集团倾力打造的一款链上应用工具——“声呐链上聚合器”&#xff0c;即“声呐链上数…

24暑假算法刷题 | Day39 | 动态规划 VII | LeetCode 198. 打家劫舍,213. 打家劫舍 II,337. 打家劫舍 III

目录 198. 打家劫舍题目描述题解 213. 打家劫舍 II题目描述题解 337. 打家劫舍 III题目描述题解 打家劫舍的一天 &#x1f608; 198. 打家劫舍 点此跳转题目链接 题目描述 你是一个专业的小偷&#xff0c;计划偷窃沿街的房屋。每间房内都藏有一定的现金&#xff0c;影响你偷…

贪心+栈。。

前言&#xff1a;这个题目一开始我没想通的就是如果s当前的一个字符或者之后的一个字符和当前t的尾巴是一样的&#xff0c;那么优先选哪一个&#xff0c;其实这个就要优先选t的 class Solution { public:string robotWithString(string s) {string ans;int cnt[26]{}, min 0; …

<C++> 二叉搜索树

目录 二叉搜索树 1. 概念 2. 二叉搜索树操作 2.1 基础结构 2.2 非递归版 1. 查找 2. 插入 3. 删除 2.3 递归版 1. 查找 2. 插入 3. 删除 2.4 拷贝构造函数 2.5 赋值运算符重载 2.6 析构函数 2.7 完整代码 3. 二叉搜索树的应用 4. 二叉搜索树的性能 二叉搜索树 1. 概念 二叉搜索…

SpringBoot+Vue3整合minio,实现分布式文件存储

文章目录 几种常用的文件存储安装和使用minioSpringBoot整合minio 基本所有的软件项目都会需要文件存储功能&#xff0c;图片、视频存储。 几种常用的文件存储 经常用的几种方案&#xff0c;直接存在本地文件夹&#xff0c;开发一个简单的系统当然没有问题。随机系统所需的资源…

微服务多个模块启动,端口被占用,yml配置文件读不到

刚刚提交到gitee自己的仓库&#xff0c;拉下来还是报错&#xff0c;然后看到一个解决方法&#xff1a; <build><resources><resource><directory>src/main/java</directory><includes><include>**/*.yml</include><includ…

推荐一个java低代码开发平台-橙单

文章目录 前言一、项目介绍二、技术选型三、项目特点四、基础功能介绍五、源码下载六、官方文档总结 前言 大家好&#xff0c;今天为大家推荐一个开箱即用&#xff0c;快速开发的低代码平台。项目采用 Boot3 Flowable7 Sa-Token Vue3技术栈。 一、项目介绍 橙单中台化低代…