我所做的是:
vim /etc/sysconfig/authconfig
USESSSDAUTH=yes
USESSSD=yes
FORCELEGACY=no
然后:
authconfig --enablesssd --enablesssdauth --enablelocauthorize --update
authconfig --enableldap --enableldapauth --ldapserver="ipa.example.com" --ldapbasedn="dc=example,dc=com" --enablerfc2307bis --enableldaptls --update
authconfig --enablemkhomedir --enablecachecreds --update
authconfig --enablekrb5 --krb5kdc="ipa.example.com" --krb5adminserver="ipa.example.com" --krb5realm="EXAMPLE.COM" --update
authconfig --enablekrb5kdcdns --enablekrb5realmdns --update
之后我添加了
ldap_tls_reqcert = never
到/etc/sssd/sssd.conf
由于某些未知原因,服务器仍然使用 nslcd 进行身份验证。如果在 root 用户内部并尝试
su - LDAPuser
有用。但是,当我在普通用户(本地用户)中,并且我尝试 su 进入 LDAP 用户时,我得到:
su: Authentication service cannot retrieve authentication info
通过看
systemctl status nslcd -l
Jul 24 13:18:21 server2.example.com nslcd[74273]: [482a97] <group/member="shaked"> no available LDAP server found: Server is unavailable: Resource temporarily unavailable
Jul 24 13:18:25 server2.example.com nslcd[74273]: [63b9ea] <group/member="root"> no available LDAP server found: Server is unavailable: Resource temporarily unavailable
^^^ “shaked”是我的本地用户
systemctl status sssd -l
^^^ 没有给出任何错误
The content of /etc/nsswitch.conf
passwd: files sss ldap
shadow: files sss ldap
group: files sss ldap
hosts: files dns
bootparams: nisplus [NOTFOUND=return] files
ethers: files
netmasks: files
networks: files
protocols: files
rpc: files
services: files sss
netgroup: files sss ldap
publickey: nisplus
automount: files sss ldap
aliases: files nisplus
我的操作系统是 CentOS 7。
答案1
停止并禁用 nslcd:
systemctl stop nslcd
systemctl disable nslcd
重新运行 authconfig,但这次尝试在同一行上使用所有选项,并使用 --disableldapauth 而不是 --enableldapauth:
authconfig --enablelocauthorize --enableldap --disableldapauth --ldapserver="ipa.example.com" --ldapbasedn="dc=example,dc=com" --enablerfc2307bis --enableldaptls --enablemkhomedir --enablecachecreds --enablekrb5 --krb5kdc="ipa.example.com" --krb5adminserver="ipa.example.com" --krb5realm="EXAMPLE.COM" --enablekrb5kdcdns --enablekrb5realmdns --enablesssd --enablesssdauth --update