ldap sssd授权linux登录
业务系统越来越多,服务器也越来越多,本文主要是给企业用户减少账号密码管理难度的。
目的:使用ldap统一管理账号密码,实现单点登录linux。
一点废话,网上找了很多文章,看得云里雾里,搞了几天算是搞明白了一点,记录一下,希望有人能用得上。
小白文,接触过一点linux的都可以尝试一下
环境准备
ldap server 本文用的群晖上的
操作系统debian 12,理论上linux都可以用
开搞前强烈建议对使用的虚拟机进行快照,不要直接在生产服务器上使用。
ldap server搭建过程:略
ldap server 信息如下:
域:my
ip:10.0.0.251
base dn: dc=my
bind dn: uid=root,cn=users,dc=my
密码: abcd1234
以下为debian 12上的操作
安装sssd ldap-utils,如果安装过别的ldap管理工具,请先卸载。所有命令均为root下运行
apt update
apt install sssd ldap-utils
测试ldap是否可用,然后输入管理员密码
ldapsearch -x -b "dc=my" -D "uid=root,cn=users,dc=my" -H ldap://10.0.0.251 -W
重点是框出来的这几项,如果没有的话,那就得重新做映射了,标准的应该都有。


测试成功,创建sssd.conf,默认没这文件nano /etc/sssd/sssd.conf 用的系统可以用vi或vim
[sssd]
services = nss, pam
domains = my #域,和下面[domain/my]对应
[nss]
debug_level = 9
#filter_groups = root #不知道有啥用,反正我注释掉了
#filter_users = root #不知道有啥用,反正我注释掉了
entry_cache_timeout = 300
entry_cache_nowait_percentage = 75
[domain/my] #这儿的my对应上面的域,抄作业记得改名字
debug_level = 9
auth_provider = ldap
id_provider = ldap
chpass_provider = ldap
ldap_schema = rfc2307 #ldap版本,默认就是这个rfc2307其它还有rfc2307bis,IPA,AD
ldap_uri = ldap://10.0.0.251:389 #改了host的话也可以填my,我这儿用的ip
ldap_search_base = dc=my #base dn
ldap_default_bind_dn = uid=root,cn=users,dc=my #dind dn
ldap_default_authtok_type = password #认证方式,密码认证
ldap_default_authtok = abcd1234 #ldap的管理员密码
override_homedir = /home/%u #重定向用户文件夹为/home/用户名
override_shell= /bin/bash #修改默认shell为/bin/bash,群晖默认是/bin/sh,不好用,所以改了
用nano编辑器的按ctrl+x输入y保存并退出,用vi或vim的按i进行编辑,按esc退出编辑模式退直接输入:wq后保存退出
修改sssd.conf的权限,并重启sssd服务
chmod 600 /etc/sssd/sssd.conf #一般是600,如果报权限错误可以试试改成777再看看
systemctl restart sssd
查看sssd状态
systemctl status sssd
正常如下,如果之前有安装过nscd之类的,会报错。

验证用户,abc为ldap上的用户
getent passwd abc

能够查询到用户说明ldap已经连接成功了,如果查不到,那就需要排查一下
查阅日志sssd_域,我这儿是my
tail -f /var/log/sssd/sssd_my.log
或者直接用
tail -f /var/log/sssd/sssd_*.log
配置为第一次登录的用户创建home目录,选配
pam-auth-update --enable mkhomedir
解决掉各种问题后,尝试ssh登录

参考文献:
https://www.mankier.com/5/sssd-ldap-attributes
https://www.mankier.com/5/sssd-ldap
https://cn.linux-console.net/?p=13587
https://hmli.ustc.edu.cn/doc/linux/ubuntu-ldap/ubuntu-ldap.html
ldap sssd授权linux登录的更多相关文章
- LDAP未授权访问学习
LDAP未授权访问学习 一.LDAP 介绍 LDAP的全称为Lightweight Directory Access Protocol(轻量级目录访问协议), 基于X.500标准, 支持 TCP/IP ...
- IIS 解决问题:HTTP 错误 401.1 - 未授权:登录失败
解决问题:HTTP 错误 401.1 - 未授权:登录失败 HTTP 错误 401.1 - 未授权:登录失败 Internet 信息服务 -----------解决这个问题,折磨了两天,终于搞定了,首 ...
- Foxmail 登录 qq 账号时无法登录 提示我们设置了独立密码或使用授权码登录的解决方法
Foxmail 登录 qq 账号时无法登录 提示我们设置了独立密码或使用授权码登录的解决方法 1.首先我们设置我们邮箱的类型如下图所示 2.打开网页版的qq邮箱 在设置--->账户---&g ...
- HTTP 401.1 - 未授权:登录失败
1 HTTP 401.1 - 未授权:登录失败 由于用户匿名访问使用的账号(默认是IUSR_机器名)被禁用,或者没有权限访问计算机,将造成用户无法访问. 解决方案: 1 打开IIS,右键站点,选 ...
- Oracle12C用户创建、授权、登录
Oracle12C用户创建.授权.登录 1.以系统用户登录 C:\Users\LEI>sqlplus sys/dwh as sysdba; SQL*Plus: Release 12.1.0.2. ...
- [记录] Linux登录前后提示语
Linux登录前后提示语 /etc/issue 本地(虚拟控制台KVM等)登录前提示语,支持转义字符 /etc/issue.net 远程(telnet,ssh)登录前提示语,不支持转义字符 /etc/ ...
- linux登录后出现-bash-4.1$
linux登录后有时候会出现-bash-4.1$ 造成这样的原因: 与这个用户有关环境变量没了,有关的文件被删除.也就是用户的家目录下面 .bash_profile .bashrc 被删除. 解决办法 ...
- linux 登录后有时候会出现-bash-4.1$
转载自https://blog.csdn.net/jiedao_liyk/article/details/78470498 linux登录后有时候会出现-bash-4.1$ 造成这样的原因: 与这个用 ...
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_5-4.微信授权一键登录开发之授权URL获取
笔记 4.微信授权一键登录开发之授权URL获取 简介:获取微信开放平台扫码连url地址 1.增加结果工具类,JsonData; 增加application.properties配置 ...
- 小D课堂-SpringBoot 2.x微信支付在线教育网站项目实战_5-1.数据信息安全--微信授权一键登录功能介绍
笔记 1.数据信息安全--微信授权一键登录功能介绍 简介:讲解登录方式优缺点和微信授权一键登录功能介绍 1.手机号或者邮箱注册 优点: ...
随机推荐
- js根据某属性对json数组分类
原数据: var arr = [ {name: '张三', age: 23, work: '计算机'}, {name: '王五', age: 29, work: '计算机'}, {name: '张兴' ...
- Educational Codeforces Round 56 (Rated for Div. 2) G题(线段树,曼哈顿距离)
题目传送门 以二维为例,二维下两点间的曼哈顿距离最大值为\(max(|x_i-x_j| + |y_i-y_j|)\),可以通过枚举坐标符号正负来去掉绝对值.即\(max(x_i-x_j+y_i-y_j ...
- Vue3+Vite+ElementPlus管理系统常见问题
本文本记录了使用 Vue3+Vite+ElementPlus 从0开始搭建一个前端工程会面临的常见问题,没有技术深度,但全都是解决实际问题的干货,可以当作是问题手册以备后用.本人日常工作偏后端开发,因 ...
- 手把手教你搭建 Ceph+JuiceFS
Ceph 提供了对象存储,可作为存储引擎在 JuiceFS 中使用.这一组合非常适合云计算.大数据分析和机器学习等数据密集型应用场景. 在日常部署中可直接通过 Ceph RADOS 配合 JuiceF ...
- C与Verilog差别
C没有时钟概念,Verilog有时钟边沿触发. C无建立保持时间要求,Verilog要计算建立保持时间,并进行优化 C与工艺无关,Verilog依赖底层工艺cell,相同代码不同cell差异较大. V ...
- C++ Qt开发:使用关联容器类
当我们谈论编程中的数据结构时,顺序容器是不可忽视的一个重要概念.顺序容器是一种能够按照元素添加的顺序来存储和检索数据的数据结构.它们提供了简单而直观的方式来组织和管理数据,为程序员提供了灵活性和性能的 ...
- C++学习笔记六:运算符(五种基本运算操作,优先级和结合性)
这一章对操作符进行简单的总结: 1.五种基本运算类型:加减乘除,取余 add, substract, multiply, divide, modulus int number1{2}; int num ...
- ASR项目实战-交付团队的分工
对于通常的软件项目,参与角色,比如可以有用户,消费者,产品团队,研发团队(研发团队包括开发和测试),运营团队,运维团队,管理团队. 通常认为,用户,负责购买服务的群体,而消费者,负责使用业务的群体.这 ...
- Reactor 简介
官方的介绍如下: Reactor is a fully non-blocking reactive programming foundation for the JVM, with efficient ...
- 文心一言 VS 讯飞星火 VS chatgpt (42)-- 算法导论5.4 6题
六.假设将n个球投人 n 个箱子里,其中每次投球独立,并且每个球等可能落入任何箱子.空箱子的数目期望是多少?正好有一个球的箱子的数目期望是多少? 文心一言: 这是一个典型的概率问题.首先,我们可以通过 ...