安装所需要的库
yum -y install nss-pam-ldapd pam_ldap
yum -y install openldap-clients-2.4.44-25.el7_9.x86_64
yum -y install epel*
关闭seliunx
通过命令“”获取selinux状态,
命令 | 功能 |
---|---|
getenforce | 获取seliunx状态 |
setenforce 0 | 临时关闭seliunx |
setenforce 1 | 开启seliunx |
想要永久关闭SEliunx的话就去修改“ /etc/sysconfig/selinux ”文件夹,将SELINUX修改为“disabled”就可以了,然后重启服务器。
配置
①在终端输入“authconfig-tui”显示出图像化页面
选择好就Next,Next之后就输入openldap客户端的ip以及Base DN,然后OK即可。
②接着查看“/etc/sysconfig/authconfig”文件是否等于yes的存在这几个
cat /etc/sysconfig/authconfig |grep yes
③查看“/etc/openldap/ldap.conf”的BASE和URL是不是第①步设置的
④修改 /etc/nsswitch.conf中sss为ldap
⑤修改/etc/pam.d/system-auth和/etc/pam.d/password-auth,将里面的pam_sss.so 替换为pam_ldap.so
sed -i 's/pam_sss.so/pam_ldap.so/g' /etc/pam.d/system-auth
sed -i 's/pam_sss.so/pam_ldap.so/g' /etc/pam.d/password-auth
⑥修改sssd配置:/etc/sssd/sssd.conf
[domain/default]
autofs_provider = ldap
cache_credentials = True
ldap_search_base =(和前面设置一样的base)
id_provider = ldap
auth_provider = ldap
chpass_provider = ldap
ldap_uri = ldap: (ldap服务端ip ://xxx.xx.xxx.xx/)
ldap_id_use_start_tls = False
ldap_tls_cacertdir = /etc/openldap/cacerts
ldap_tls_reqcert = allow
krb5_realm=ocdp
krb5_server= (ldap服务端IP:host-xxx-xx-xxx-xx)
[sssd]
services = nss, pam, autofs
config_file_version = 2
domains = default
[nss]
homedir_substring = /home
[pam]
[sudo]
[autofs]
[ssh]
[pac]
[ifp]
[secrets]
⑦最后是修改修改nslcd配置文件:/etc/nslcd.conf
uri ldap:(ldap服务端ip ://xxx.xx.xxx.xx/)
binddn (ldap的基本base)
bindpw (ldap的管理员密码)
base (和前面设置一样的base)
ssl no
⑨接下来重启nslcd/sssd,并设置开启自启
systemctl start nslcd
systemctl enable nslcd
systemctl start sssd
systemctl enable sssd
测试
现在可以测试一样ladp中的用户有没有到服务器中来了,输入id ldap中用户名查看一下
[root@ed /]# id yaowj
uid=2687(yaowj) gid=0(root) groups=0(root)
然后打开windows的终端,ssh登录试试看,能连上就代表没有问题了。
添加ldap的图形化
但是这里只能实现ssh远程登录liunx服务器,没有图形化界面,想要图形化界面我们还需编辑 /etc/pam.d/sshd 这个文件,在末尾另起一行添加
session required pam_mkhomedir.so
这下我们就可以使用ldap去连接liux服务器的图形化了