yum -y install openldap compat-openldap openldap-clients openldap-servers openldap-servers-sql openldap-devel
命令安装。,2. **启动并设置服务自启动**:通过systemctl start slapd; systemctl enable slapd; systemctl status slapd
命令启动并设置为自启动。,3. **创建根密码**:运行slappasswd
命令生成加密后的字符串,保存好该字符串。,4. **配置服务**:通过编辑db.ldif
文件,替换olcSuffix、olcRootDN和olcRootPW字段内容,然后执行ldapmodify -Y EXTERNAL -H ldapi:/// -f db.ldif
完成配置修改。,5. **创建基础库**:复制默认配置并赋予权限,添加schemas,然后创建base.ldif文件并导入数据库。,,完成以上步骤后,LDAP服务器基础配置即完成。CentOS LDAP 服务器搭建
在企业级应用中,轻量级目录访问协议(Lightweight Directory Access Protocol, LDAP)因其高效的查询性能和良好的扩展性被广泛应用,本文将详细介绍如何在CentOS系统上搭建一个LDAP服务器。
一、安装LDAP服务器
需要确保基础的软件包已经安装,执行以下命令以安装OpenLDAP及其相关组件:
yum -y install openldap openldap-servers openldap-clients
启动并设置LDAP服务为开机自启动:
systemctl start slapd systemctl enable slapd systemctl status slapd
二、创建管理员密码
使用slappasswd
命令生成LDAP管理员的根密码,并妥善保存:
slappasswd
输入密码"123456"后,系统会输出加密后的字符串:
{SSHA}...
三、配置LDAP服务
1. 修改数据库文件
在任意目录下创建db.ldif文件,编辑以下内容:
dn: olcDatabase={2}hdb,cn=config changetype: modify replace: olcSuffix olcSuffix: dc=example,dc=com dn: olcDatabase={2}hdb,cn=config changetype: modify replace: olcRootDN olcRootDN: cn=admin,dc=example,dc=com dn: olcDatabase={2}hdb,cn=config changetype: modify add: olcRootPW olcRootPW: {SSHA}...
注意替换olcSuffix
、olcRootDN
和olcRootPW
,然后运行以下命令应用更改:
ldapmodify -Y EXTERNAL -H ldapi:/// -f db.ldif
2. 修改监控文件
创建monitor.ldif文件,编辑以下内容:
dn: olcDatabase={1}monitor,cn=config changetype: modify replace: olcAccess olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read by dn.base="cn=admin,dc=example,dc=com" read by * none
然后运行以下命令应用更改:
ldapmodify -Y EXTERNAL -H ldapi:/// -f monitor.ldif
3. 创建基础库
复制原有配置文件并赋予权限:
cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG chown ldap:ldap /var/lib/ldap/
向数据库添加schemas:
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif
创建base.ldif文件,编辑以下内容:
dn: dc=example,dc=com dc: example objectClass: top objectClass: domain dn: cn=admin,dc=example,dc=com objectClass: organizationalRole cn: admin description: LDAP Manager dn: ou=People,dc=example,dc=com objectClass: organizationalUnit ou: People dn: ou=Group,dc=example,dc=com objectClass: organizationalUnit ou: Group
将其导入数据库:
ldapadd -x -W -D "cn=admin,dc=example,dc=com" -f base.ldif
至此,LDAP服务器的基础配置完成,接下来可以通过图形界面工具如phpLDAPadmin进行管理。
四、安装并使用图形界面(可选)
1. 安装phpLDAPadmin
安装httpd和phpLDAPadmin:
yum install -y httpd phpldapadmin
启用PHP模块:
yum localinstall http://rpms.remirepo.net/enterprise/remi-release-7.rpm yum install -y php php-common php-mbstring php-ldap php-xml php-pear php-pdo php-mysqlnd php-opcache php-cli php-fpm php-pecl php-bcmath php-soap php-intl php-zlib php-bz2 php-json php-gd php-gd-devel php-gd-last php-process php-imap php-tidy php-xmlrpc php-enchant php-zip php-sqlite php-sqlite3 php-odbc php-oai php-fileinfo php-redis php-ftp php-imap-debug php-imap-spamfilter php-mailparse php-memcached php-msgpack php-mcrypt php-mhash php-mingle php-mime-message php-mime-magic php-mimetypes php-metalink php-mssql php-mysql php-mysqli php-oci8 php-odbc php-openssl php-phar php-pspell php-readline php-recode php-snmp php-soap php-sockets php-sqlite3 php-svn php-tidyhtml php-tokenizer php-xmlreader php-xsl php70w-opcache php70w-xmlrpc php70w-xmlwriter
2. 配置httpd
编辑httpd的配置文件:
vim /etc/httpd/conf/httpd.conf
确保以下内容存在:
<Directory "/var/www/html"> AllowOverride None Require all granted </Directory>
启动并设置httpd服务:
systemctl restart httpd systemctl enable httpd
3. 配置phpLDAPadmin
编辑phpLDAPadmin的配置文件:
vim /etc/phpldapadmin/config.php
取消以下几行的注释并设置相应值:
$servers->setValue('server', 'host', '127.0.0.1'); $servers->setValue('server', 'port', 389); $servers->setValue('login','attr','dn');
编辑访问控制文件:
vim /etc/httpd/conf.d/phpldapadmin.conf
取消以下几行的注释并设置相应值:
Order Deny,Allow #取消注释 Allow from all #取消注释,允许所有IP访问
重新启动httpd服务:
systemctl restart httpd
可以通过浏览器访问http://服务器IP地址/phpldapadmin进行LDAP服务器的管理,默认用户名和密码分别是cn=admin,dc=example,dc=com
和之前设置的根密码。
五、常见问题解答(FAQs)
Q1: 如何更改LDAP服务器的监听端口?
A1: 编辑/etc/sysconfig/ldap
文件,找到SLAPDOPTS
变量并添加或修改-p
参数来指定新的端口号,设置为非默认端口号389:SLAPDOPTS="-h ldap.example.com -p 389"
,然后重启服务:systemctl restart slapd
。
Q2: 如果忘记LDAP管理员密码怎么办?
A2: 如果忘记密码,可以通过停止LDAP服务,删除数据库文件,然后重新初始化来解决,但请注意,这将导致所有数据丢失,建议定期备份LDAP数据。
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1411326.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复