CentOSの7は、一次同期LDAPビスで取り付けられました

CentOSの7は、一次同期LDAPビスで取り付けられました

タグ(スペースで区切っ):LDAP


インストール手順:

CN = configのバージョンからのファイルは、すべての構成データがslapd.dディレクトリのフォルダに保存されている起動OpenLDAP2.4.23もはやコンフィギュレーション・ファイルのslapd.confとして使用されていません

二つの構成がありますが、一つはslapd.confのレガシーファイルの設定を変更することである、そしてslaptest -f /etc/openldap/slapd.confの-F /etc/openldap/slapd.d/このように、データベースにインポート非常に面倒、推奨されません。
一つは、LDIFファイルを編集することであり、その後、サーバslapdプロセスを再起動する必要はありません動的にこのように構成されたデータベースにldapaddコマンドをインポートします。

本論文では、比較的小規模なオンラインドキュメントである第二のアプローチは、よくなり、私は半分を上演みなさ10日間を過ごし理解し、このレコードでは、私が必要としている人々にいくつかの助けを与えることを願っています

あなたが最初のメソッドを使用する必要がある場合は、システムcentos7 yumを一切slapd.conf.obsoleteファイルをインストールしていない、あなたは上centos6から[コピー]を選択することができ
、公式文書:https://www.openldap.org/doc/admin24/slapdconf2.html
インストール環境

centos 7.5
ldap主1服务器:VECS05855 10.111.30.24
ldap主2服务器:VECS05856 10.111.30.25
OpenLDAP2.4.44
root账号下执行所有命令

実装工程(二マシンが実行されます)

1、インストールLDAP

yum  install -y openldap openldap-servers openldap-clients  compat-openldap

備考(命令のみ、実行する必要はありません):

#可以通过rpm -ql <package name>,来查看每个安装包都有哪些文件
openldap:         #OpenLDAP配置文件、库和文档
openldap-servers: #服务器进程及相关命令、迁移脚本和相关文件
openldap-clients: #客户端进程及相关命令,用来访问和修改 OpenLDAP 目录
compat-openldap:  #与主从配置相关

インストールプロセスが自動的にLDAP LDAPユーザおよびグループを作成する(確認がインストールされています)

root@VECS05855:~# grep ldap /etc/passwd
ldap:x:55:55:OpenLDAP server:/var/lib/ldap:/sbin/nologin
root@VECS05855:~# grep ldap /etc/group
ldap:x:55:
root@VECS05855:~# 

2.データベーステンプレートと変更権限をコピーします

cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

chown ldap. /var/lib/ldap/DB_CONFIG

図3は、LDAPを起動し、起動するように設定します。LDAPサーバーのプロセス名はslapdのです

systemctl enable slapd && systemctl start slapd && systemctl status slapd

検証が開始されました

root@VECS05855:~# netstat -tunlp |grep slapd
tcp        0      0 0.0.0.0:389             0.0.0.0:*               LISTEN      19473/slapd         
tcp6       0      0 :::389                  :::*                    LISTEN      19473/slapd 

4、はslappasswdを生成するために、passwordコマンドを使用して

このステップでは、平文のパスワード上の2台のマシンに注意を払って、管理者パスワード生成と同じであり、暗号テキストのパスワードは同じではありません。

root@VECS05855:~# slappasswd
New password: 
Re-enter new password: 
{SSHA}csl6iL5aVUWP1+UUnN/FhTkUKilET2+J

LDIF(LDAP固有のデータ交換形式の一種)ファイル、およびldapaddをコマンドによるLDAPインポート設定ファイルへの管理者パスワードの調製。

root@VECS05855:~#  vim chrootpw.ldif
dn: olcDatabase={0}config,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}csl6iL5aVUWP1+UUnN/FhTkUKilET2+J

インポート

root@VECS05855:~# ldapadd -Y EXTERNAL -H ldapi:/// -f chrootpw.ldif 
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
modifying entry "olcDatabase={0}config,cn=config"

図5に示すように、ベースへのデータ構造

ldapadd -Y EXTERNAL  -H ldapi:/// -f /etc/openldap/schema/cosine.ldif 
ldapadd -Y EXTERNAL  -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif 
ldapadd -Y EXTERNAL  -H ldapi:/// -f /etc/openldap/schema/ppolicy.ldif 
ldapadd -Y EXTERNAL  -H ldapi:/// -f /etc/openldap/schema/nis.ldif 
ldapadd -Y EXTERNAL  -H ldapi:/// -f /etc/openldap/schema/dyngroup.ldif 

図6に示すように、その管理ドメイン(例えばDC = hellobike、dc = comの、に)LDAPルートドメインの構成:

root@VECS05855:~# vim  chdomain.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=hellobike,dc=com" read
  by * none

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: dc=hellobike,dc=com

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=admin,dc=hellobike,dc=com

dn: olcDatabase={2}hdb,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}csl6iL5aVUWP1+UUnN/FhTkUKilET2+J

dn: olcDatabase={2}hdb,cn=config
changetype: modify
add: olcAccess
olcAccess: {0}to attrs=userPassword,shadowLastChange
  by dn="cn=admin,dc=hellobike,dc=com" write
  by anonymous auth
  by self write
  by * none
olcAccess: {1}to dn.base=""
  by * read
olcAccess: {2}to *
  by dn="cn=admin,dc=hellobike,dc=com" write
  by * read

インポート

root@VECS05855:~# ldapmodify -Y EXTERNAL -H ldapi:/// -f chdomain.ldif 
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
modifying entry "olcDatabase={1}monitor,cn=config"

modifying entry "olcDatabase={2}hdb,cn=config"

modifying entry "olcDatabase={2}hdb,cn=config"

modifying entry "olcDatabase={2}hdb,cn=config"

modifying entry "olcDatabase={2}hdb,cn=config"

図7は、上記に基づいて、我々はhellobike会社のという組織を作成する必要があります

root@VECS05855:~# vim basedomain.ldif
dn: dc=hellobike,dc=com
objectClass: top 
objectClass: dcObject
objectClass: organization
o: hellobike Company
dc: hellobike

dn: cn=admin,dc=hellobike,dc=com
objectClass: organizationalRole
cn: admin

dn: ou=People,dc=hellobike,dc=com
objectClass: organizationalUnit
ou: People

dn: ou=Group,dc=hellobike,dc=com
objectClass: organizationalRole
cn: Group

インポート

[root@test1] ~$ ldapadd -x -D cn=admin,dc=hellobike,dc=com -W -f basedomain.ldif 
Enter LDAP Password: #输入上面设置的管理员密码(明文)
adding new entry "dc=hellobike,dc=com"

adding new entry "cn=admin,dc=hellobike,dc=com"

adding new entry "ou=People,dc=hellobike,dc=com"

adding new entry "ou=Group,dc=hellobike,dc=com"

すべての上記の手順によって、我々は、LDAPディレクトリツリーの設定:参照DC = hellobike、dc = comのツリーのルートで、管理ドメインのcn =管理者、直流た下= hellobike、dc = comのをと2つの組織単位は=人、DC = hellobike、dc = comのとOU =グループ、DC = hellobike、dc = comのをOU。

第二に、デュアルマスターレプリケーション機能は、次の手順は、マスター1とマスター2上で実行されています

1. syncprovモジュールを有効にします

root@VECS05855:~# vim syncprov_mod.ldif
dn: cn=module,cn=config
objectClass: olcModuleList
cn: module
olcModulePath: /usr/lib64/openldap
olcModuleLoad: syncprov.la

インポートファイルを実行します

root@VECS05855:~#  ldapadd -Y EXTERNAL -H ldapi:/// -f syncprov_mod.ldif
SASL/EXTERNAL authentication started
SASL username: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
adding new entry "cn=module,cn=config"

2、デュアルマスター同期有効OpenLDAPの

configrep.ldifファイルを作成します。
configrep.ldif

root@VECS05855:~# vim configrep.ldif
### Update Server ID with LDAP URL ###

dn: cn=config
changetype: modify
replace: olcServerID
olcServerID: 1 ldap://VECS05855
olcServerID: 2 ldap://VECS05856

### Enable replication ###

dn: olcOverlay=syncprov,olcDatabase={2}hdb,cn=config
changetype: add 
objectClass: olcOverlayConfig
objectClass: olcSyncProvConfig
olcOverlay: syncprov

### Adding details for replication ###

dn: olcDatabase={2}hdb,cn=config
changetype: modify
add: olcSyncRepl
olcSyncRepl:
  rid=001
  provider=ldap://VECS05855
  binddn="cn=admin,dc=hellobike,dc=com"
  bindmethod=simple
  credentials=Bi@#admin
  searchbase="dc=hellobike,dc=com"
  type=refreshAndPersist
  retry="5 5 300 5"
  timeout=1
olcSyncRepl:
  rid=002
  provider=ldap://VECS05856
  binddn="cn=admin,dc=hellobike,dc=com"
  bindmethod=simple
  credentials=Bi@#admin
  searchbase="dc=hellobike,dc=com"
  type=refreshAndPersist
  retry="5 5 300 5"
  timeout=1
-
add: olcMirrorMode
olcMirrorMode: TRUE

このファイルは、それぞれ、両方のサーバー上でldap_sync.ldifを実行することができます。

ldapmodify -Y EXTERNAL -H ldapi:/// -f configrep.ldif

これまでのところ、DC = hellobikeの内容、dc = comのは、両方のサーバーに同期されます。

参考:HTTPS://blog.csdn.net/fanren224/article/details/79707206
http://v.colinlee.fish/posts/openldap-speedy-tutorial-replication.html

おすすめ

転載: www.cnblogs.com/hit-zb/p/11401624.html