Tri*_*yen 6 debian rename openldap
我试图重命名我的OpenLDAP的baseDN
从:
DC = ABC,DC = com的
至:
DC = XYZ,DC = EDU
我确实修改了一些conf文件:
/etc/ldap/slapd.d/cn\=config/olcDatabase={1}hdb.ldif
/etc/ldapscripts/ldapscripts.conf
和phpLDAPadmin的配置:
到新的根dn
但是在我重新启动slapd和lighttpd服务之后,即使我可以登录到phpLDAPAdmin(admin binddn)的管理界面,但我无法做任何事情.
我也尝试运行一些ldap命令行,但它不起作用.
还有什么我需要做的?或者我的方法有什么问题?
Tri*_*yen 16
好的,我自己解决了.以下是我将当前LDAP数据库迁移到新域的方法:
假设我有一个新域名,dc = my,dc = new,dc = ldap,dc = domain,我想将所有现有LDAP数据移动到新域名.
备份旧的LDAP数据库
# slapcat -v -l old_ldap.ldif
Run Code Online (Sandbox Code Playgroud)停止OpenLDAP服务器
# service slapd stop
Run Code Online (Sandbox Code Playgroud)删除旧的LDAP数据库
# cd /var/lib/ldap
# rm -rf *
Run Code Online (Sandbox Code Playgroud)确保LDAP未运行
# nano /var/lib/ldap/DB_CONFIG
Run Code Online (Sandbox Code Playgroud)
注意:添加以下这些行并保存
#DB_CONFIG
set_cachesize 0 150000000 1
set_lg_regionmax 262144
set_lg_bsize 2097152
set_flags DB_LOG_AUTOREMOVE
Run Code Online (Sandbox Code Playgroud)更改以下文件中的当前LDAP设置
/etc/ldapscripts/ldapscripts.conf
...
SERVER="ldap://localhost"
BINDDN="cn=admin,dc=my,dc=new,dc=ldap,dc=domain"
BINDPWDFILE="/etc/ldapscripts/ldapscripts.passwd"
...
Run Code Online (Sandbox Code Playgroud)/etc/ldap/slapd.d/cn=config/olcDatabase\={1}hdb.ldif
...
olcSuffix: dc=my,dc=new,dc=ldap,dc=domain
olcAccess: {0}to attrs=userPassword,shadowLastChange by self write by anonymous auth by dn="cn=admin,dc=my,dc=new,dc=ldap,dc=domain" write by * none
olcAccess: {2}to * by self write by dn="cn=admin,dc=my,dc=new,dc=ldap,dc=domain" write by * read
olcRootDN: cn=admin,dc=my,dc=new,dc=ldap,dc=domain
olcRootPW: <new administrator password>
...
Run Code Online (Sandbox Code Playgroud)准备新的LDAP目录结构,数据new_ldap.ldif,(或old_ldap.ldif使用新的dn 修改)
# Root
dn: dc=my,dc=new,dc=ldap,dc=domain
description: New LDAP BaseDN
dc: parent
o: parent.my.new.ldap.domain
objectClass: top
objectClass: dcObject
objectClass: organization
structuralObjectClass: organization
# administrator
dn: cn=admin,dc=my,dc=new,dc=ldap,dc=domain
objectClass: simpleSecurityObject
objectClass: organizationalRole
cn: admin
description: LDAP administrator
userPassword: <new administrator password>
structuralObjectClass: organizationalRole
# Subtree for Users
dn: ou=Users,dc=my,dc=new,dc=ldap,dc=domain
ou: Users
description: Parent Ldap Users
objectClass: organizationalUnit
objectClass: top
structuralObjectClass: organizationalUnit
# Subtree for Groups
dn: ou=Groups,dc=my,dc=new,dc=ldap,dc=domain
ou: Groups
description: Parent LDAP Groups
objectClass: organizationalUnit
objectClass: top
structuralObjectClass: organizationalUnit
...
Run Code Online (Sandbox Code Playgroud)测试新的ldif
# slapadd -b "dc=my,dc=new,dc=ldap,dc=domain" -v -u -l new_ldap.ldif
Run Code Online (Sandbox Code Playgroud)
注意:该-u方法在测试模式下运行命令
如果一切正常,输出将如下所示:
added: "dc=my,dc=new,dc=ldap,dc=domain"
added: "cn=admin,dc=my,dc=new,dc=ldap,dc=domain"
added: "ou=Users,dc=my,dc=new,dc=ldap,dc=domain"
added: "ou=Groups,dc=my,dc=new,dc=ldap,dc=domain"
_#################### 100.00% eta none elapsed none fast!
Run Code Online (Sandbox Code Playgroud)
将新的LDAP数据添加到服务器
# slapadd -b "dc=my,dc=new,dc=ldap,dc=domain" -v -l new_ldap.ldif
Run Code Online (Sandbox Code Playgroud)您可以在我的博客文章中查看有关此问题的更新:http://iambusychangingtheworld.blogspot.com/2013/10/ldap-create-new-ldap-directory.html
| 归档时间: |
|
| 查看次数: |
21834 次 |
| 最近记录: |