sssd连接OpenLDAP同步账号
sssd简介
sssd它是一个工作在Linux系统上与LDAP/AD对接进行身份认证和账号缓存的服务,与直接同LDAP对接相比,SSSD有如下一些优点:
- 支持离线认证:当本地主机与LDAP服务器断网的情况下,用户依然可以登录
- 减轻LDAP服务器的负载:通过SSSD,一台Linux主机仅与LDAP服务器建立一个连接
- 支持多个LDAP/AD:通过SSSD,可以同时配置多个LDAP/AD作为认证源
配置完成后,linux的认证都通过sssd代理来实现,故ldap上的用户不会在linux系统上(/etc/passwd)。
ssd安装配置
yum install -y sssd
有图形桌面可以安装authconfig-gtk,图形化配置
yum install -y authconfig-gtk
没有图形化就安装
yum install -y authconfig
authconfig --enablesssd --enablesssdauth --enableldap --enableldapauth --ldapserver=ldap://192.168.126.21:389 --ldapbasedn='dc=shadow,dc=com' --enablelocauthorize --enableldaptls --enablemkhomedir --update
通过以上命令胜利了sssd.conf文件
编辑文件vim /etc/sssd/sssd.conf,添加TLS证书位置和开启tls
[domain/default]
autofs_provider = ldap
auth_provider = ldap
id_provider = ldap
ldap_id_use_start_tls = True
chpass_provider = ldap
cache_credentials = True
ldap_tls_cacertdir = /etc/openldap/cacerts
ldap_search_base = dc=shadow,dc=com
ldap_uri = ldap://192.168.126.21:389
ldap_tls_cert = /etc/openldap/cacerts/CA.crt
ldap_id_use_start_tls = true
[sssd]
services = nss, pam, autofs
domains = default
[nss]
homedir_substring = /home
[pam]
[sudo]
[autofs]
[ssh]
[pac]
[ifp]
[secrets]
[session_recording]
测试
注意,SSSD 可以连接到任何 LDAP 服务器,以使用 SSSD LDAP 提供程序查找 POSIX 帐户和其他信息。只能是posix账户和组,其他的查询不到。
新建posix组和用户
[root@k8s-master01 ~]# systemctl restart sssd
[root@k8s-master01 ~]# id sss005
uid=1001(sss005) gid=500(linux) 组=500(linux)
[root@k8s-master01 ~]# id sss04
uid=1002(sss04) gid=500(linux) 组=500(linux)
[root@k8s-master01 ~]# ssh sss04@127.0.0.1
The authenticity of host '127.0.0.1 (127.0.0.1)' can't be established.
ECDSA key fingerprint is SHA256:VkcnBqyfyn8e3JNi4Df8+Tpu6NckCGcR5Yh+lJ6hJWo.
ECDSA key fingerprint is MD5:b1:9f:f0:85:26:2f:ce:47:f5:20:8b:95:ef:7a:73:ee.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '127.0.0.1' (ECDSA) to the list of known hosts.
sss04@127.0.0.1's password:
Creating home directory for sss04.
[sss04@k8s-master01 ~]$ pwd
/home/users/sss04