CentOS OpenLDAP安装与配置详解
一、环境说明
系统:CentOS 7.4
软件:OpenLDAP 2.4.44
安装方式:yum安装
服务器角色:ldapmaster(主服务器)和 ldapslave(从服务器)
二、安装前准备
1、设置主机名:
#hostnamectl static sethostname ldapmaster.domain.com #hostnamectl transient sethostname ldapmaster.domain.com
2、关闭SELinux和防火墙:
systemctl stop firewalld systemctl disable firewalld sed i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config setenforce 0
三、安装与配置
1. 安装OpenLDAP相关软件包
在主从服务器上都执行以下命令:
yum y install openldapservers openldap openldapclients openldapdevel
2. 配置slapd.conf
主服务器ldapmaster配置文件部分内容:
include /etc/openldap/schema/ppolicy.schema include /etc/openldap/schema/sudo.schema modulepath /usr/lib/openldap modulepath /usr/lib64/openldap moduleload syncprov.la moduleload ppolicy.la moduleload memberof.la TLSCACertificateFile /etc/openldap/certs/cabundle.crt TLSCertificateFile /etc/openldap/certs/server.crt TLSCertificateKeyFile /etc/openldap/certs/server.key TLSVerifyClient never overlay ppolicy ppolicy_default cn=default,ou=policy,dc=tt2kj,dc=com overlay dynlist dynlistattrset inetOrgPerson labeledURI overlay memberof overlay syncprov syncprovcheckpoint 100 10
从服务器ldapslave配置文件部分内容:
TLSCACertificateFile /etc/openldap/certs/cabundle.crt TLSCertificateFile /etc/openldap/certs/slave.crt TLSCertificateKeyFile /etc/openldap/certs/slave.key TLSVerifyClient never syncrepl rid=003 provider=ldap://120.xx.xx.xx:389/ type=refreshAndPersist interval=01:00:00:00 searchbase="dc=domain,dc=com" schemachecking=on bindmethod=simple binddn="cn=Admin,dc=domain,dc=com" credentials=password scope=sub attrs="*,+" schemachecking=off retry="60 +"
3. 启动slapd服务并生成文件
systemctl start slapd cd /etc/openldap/ slaptest f slapd.conf F slapd.d/
四、客户端安装与配置
1、安装NSS LDAP认证工具:
yum y install nsspamldapd
2、配置OpenLDAP登录验证:
使用authconfigtui
进行相应的配置。
3、创建用户目录:
authconfig enablemkhomedir update
五、TLS传输加密
主服务器ldapmaster:
cd /etc/pki/tls/certs make server.key && make server.csr && openssl x509 in server.csr out server.crt req signkey server.key days 3650
从服务器ldapslave:
1、生成密钥对的slave.csr, slave.key,上传到主服务器签名后回传。
2、签名后的配置重启服务:
openssl x509 in slave.csr out slave.crt req signkey slave.key days 3650
六、sudo配置
1、服务端加载sudo.schema。
2、客户端配置使用sudo:
tls_checkpeer no uri ldaps://ldapmaster.domain.com:636/ sudoers_base ou=sudoers,dc=tt2kj,dc=com
七、基于用户和组的主机控制
原本想使用基于ip或主机名,但最终决定使用基于用户和组的控制策略,具体步骤详见上述配置。
八、FAQs
1、如何修改OpenLDAP的管理员密码?
slappasswd
按照提示输入新密码,系统会显示加密后的密码,将该加密密码替换olcRootPW
字段中的值即可。
2、如何生成自签名证书?
openssl req new x509 nodes sha256 days 3650 keyout server.key out server.crt
按照提示填写相关信息,生成自签名证书和私钥。