Ubuntu OpenLDAP配置笔记

Ubuntu OpenLDAP配置笔记

问题(需求)

怎么在Linux桌面登录一个本地不存的账号?做过企业IT管理的同学们应该都知道Windows域控(https://learn.microsoft.com/zh-cn/windows-server/identity/ad-ds/get-started/virtual-dc/active-directory-domain-services-overview)。 在国产替代的趋势下,很多企业产生了Lunux桌面登录OpenLDAP账号的需求。本文详细记录作者亲自实验的过程,希望对你有所帮助。

LDAP服务端

安装 slapd(独立 LDAP 守护程序)会创建具有顶级条目和管理员专有名称 (DN) 的最小工作配置。特别是,它会创建一个可用于存储数据的数据库实例。但是,此实例的后缀(或基本 DN)将根据主机的域名确定。如果您想要不同的东西,您可以在安装后立即更改它(在它包含任何有用的数据之前)。本文将使用域名 dc=yyaw,dc=com, 域服务器IP 192.1.4.8。您可以更改此设置以匹配您的特定设置。系统安装配置不是本文重点。想快速体验的同学可以联系我提供虚拟机。

安装slapd和ldap-utils

运行命令:sudo apt install slapd ldap-utils。输入管理员密码。

配置域名

如果要更改目录信息树 (DIT) 后缀,现在是一个好时机,因为更改它会丢弃现有的后缀。若要更改后缀,请运行以下命令:

bash 复制代码
sudo dpkg-reconfigure slapd
  1. 是否忽略LDAP自带的组织配置。LDAP自带的配置相当于数据库的元数据,比如用户表的管理员账号和密码。如果选择啥都没有,那么连接数据库的程序自身也无法正常运行。建议不要忽略,选No。

  2. 域名:yyaw.com

  3. 基本DN:admin

  4. 管理员密码:

  5. 数据库选择

  6. slapd被卸载是否删除slapd的数据,是否兼容LDAPv2版本,这些配置应用默认选项。此处不截图。

在本文中,我们将使用 LDAP 实用程序发出许多命令。为了减少一些输入,我们可以在 中 /etc/ldap/ldap.conf 配置具有某些默认值的 OpenLDAP 库(根据您的服务器名称和目录后缀调整这些条目):

BASE    dc=yyaw,dc=com
URI     ldap://yyaw.com

编辑hosts

运行命令:sudo vim /etc/hosts,按下图提示修改:

修改主机名

运行命令:sudo vim /etc/hostname,改为yyaw.com

验证

  1. 验证本地服务:ldapsearch -x -LLL -H ldap:/// -b dc=yyaw,dc=com dn
  2. 验证网络服务:ldapsearch -x -LLL -H ldap://192.1.4.8/ -b dc=yyaw,dc=com cn
  3. 验证管理员账号:ldapwhoami -x -D cn=admin,dc=yyaw,dc=com -w <密码> -H ldap://192.1.4.8/

增加一个域账号

新建LDIF文件:vim tingting.ldif,分4次先后输入以下配置,每次输入完成后运行下面的命令行:

dn: ou=People,dc=yyaw,dc=com
objectClass: organizationalUnit
ou: People

dn: ou=Groups,dc=yyaw,dc=com
objectClass: organizationalUnit
ou: Groups

dn: cn=users,ou=Groups,dc=yyaw,dc=com
objectClass: posixGroup
cn: users
gidNumber: 15000

dn: uid=tingting,ou=People,dc=yyaw,dc=com
objectClass: inetOrgPerson
objectClass: posixAccount
objectClass: shadowAccount
uid: tingting
sn: Xia
givenName: Lily
cn: Lily Xia
displayName: Lily Xia
uidNumber: 10001
gidNumber: 15000
userPassword: {CRYPT}x
gecos: Lily Xia
loginShell: /bin/bash
homeDirectory: /home/ldap/tingting

运行命令:ldapadd -x -D cn=admin,dc=yyaw,dc=com -W -f tingting.ldif -H ldap://192.1.4.8/,输入密码。

结果如下图所示:

修改用户的密码

运行命令:ldappasswd -x -H ldap://192.1.4.8/ -D cn=admin,dc=yyaw,dc=com -W -S uid=tingting,ou=people,dc=yyaw,dc=com,先输入用户的密码,后输入管理员密码。结果如下图所示:

Linux桌面加域

当前操作的主机的IP为192.1.4.9。系统安装配置不是本文重点。想快速体验的同学可以联系我提供虚拟机。

安装软件

运行sudo apt install libnss-ldapd libpam-ldapd ldap-utils,在询问界面中输入:ldap://192.1.4.8/

输入域名:dc=yyaw,dc=com

选中grouppasswdshadow

编辑/etc/ldap/ldap.conf

验证

运行命令:getent passwd

允许远程账号首次登录时自动创建HOME目录

运行sudo pam-auth-update --enable mkhomedir,按下图所示配置

重启:reboot

桌面登录

输入账号密码:

成功进入桌面

其它问题

Ubuntu更新和安装太慢

  1. 原因
    1. ubuntu默认的cn.archive.ubuntu.com网络延时太大,虽然它会转发给国内的镜像站,但每次请求它地转发要卡很久
    2. ubuntu开机在后台自动更新
  2. 其它干扰
    1. 新安装的虚拟机没有SSH,手输sources.list内容太长易出错
    2. ubuntu没有自带vim编辑器,自带的vi编辑器极难操作。
  3. 解决办法
    1. 修改仓库配置:sudo sed -i "s@cn.archive.ubuntu.com@mirrors.tuna.tsinghua.edu.cn@g" /etc/apt/sources.list
    2. 屏蔽其它更新,仅限实验:sudo vi /etc/apt/sources.list,屏蔽所有主机名不是镜像站的配置。

LDAP服务端IP默认DHCP,ifconfig设置的IP重启失效

  1. 找到正在用的网卡的GUID:nmcli con
  2. 网卡名改为eth0:nmcli con mod <guid> connection.id eth0
  3. 手动设置IP:nmcli con mod eth0 ipv4.address=192.1.4.8/24 ipv4.gateway 192.1.4.2 ipv4.method manual ipv4.dns 114.114.114.114
  4. 刷新网卡,使IP生效:nmcli con dow eth0 && nmcli con up eth0

参考资料

  1. RFC4510:https://datatracker.ietf.org/doc/html/rfc4510

|-----|-------------------------------|
| 作者: | 岬淢箫声 |
| 日期: | 2023年10月23日 |
| 版本: | 1.0 |
| 链接: | http://caowei.blog.csdn.net |

相关推荐
莫奈的日出18 分钟前
PS等软件学习笔记
笔记·学习·ps/pr学习笔记
codists31 分钟前
《计算机组成及汇编语言原理》阅读笔记:p121-p122
笔记·编程人·计算机组成及汇编语言原理
汇能感知2 小时前
光谱相机与普通相机的区别
经验分享·笔记·科技·相机
JieKki2 小时前
【Ubuntu添加右键wine运行exe程序文件】
linux·ubuntu
007php0079 小时前
linux服务器上CentOS的yum和Ubuntu包管理工具apt区别与使用实战
linux·运维·服务器·ubuntu·centos·php·ai编程
_im.m.z9 小时前
【设计模式学习笔记】1. 设计模式概述
笔记·学习·设计模式
Jzin9 小时前
Ubuntu存储硬盘扩容-无脑ChatGPT方法
ubuntu·chatgpt
djykkkkkk9 小时前
ubuntu编译遇到的问题
linux·运维·ubuntu
胡西风_foxww10 小时前
【ES6复习笔记】迭代器(10)
前端·笔记·迭代器·es6·iterator
左漫在成长11 小时前
王佩丰24节Excel学习笔记——第十九讲:Indirect函数
笔记·学习·excel