Edited at

ldapのマルチマスタ設定とELB越しにldaps通信設定

More than 3 years have passed since last update.

備忘録です。


構成:

ldap1 <-- multi master replication --> ldap2 <-- ELB <-- read only(ssl) -- ldap-proxy1

こんなかんじで。


replication設定

とりあえずreplication関連の設定を抜粋してとっておきます。

(本物はchefでやっててattributeが散在でかなりわかりにくいので脳内整理したかっただけ)


ldap1:slapd.conf

# Global section

serverID 1
# syncrepl directive
syncrepl rid=001
provider="ldap://ldap2.hoge.com"
bindmethod=simple
binddn="uid=Rep,ou=System,dc=hoge,dc=com"
credentials={SSHA}vt1Wi0m**********************
searchbase="dc=hoge,dc=com"
schemachecking=on
type=refreshAndPersist
retry="60 +"
mirrormode on


ldap2:slapd.conf

# Global section

serverID 2
# syncrepl directive
syncrepl rid=001
provider="ldap://ldap1.hoge.com"
bindmethod=simple
binddn="uid=Rep,ou=System,dc=hoge,dc=com"
credentials={SSHA}vt1Wi0m**********************
searchbase="dc=hoge,dc=com"
schemachecking=on
type=refreshAndPersist
retry="60 +"
mirrormode on


ldap-proxy1:slapd.conf

# Global section

serverID 3
# syncrepl directive
syncrepl rid=001
provider="ldaps://elb.public.address:10636"
bindmethod=simple
binddn="uid=Rep,ou=System,dc=hoge,dc=com"
credentials={SSHA}vt1Wi0m**********************
searchbase="dc=hoge,dc=com"
schemachecking=on
type=refreshOnly
retry="60 +"
tls_cacert=/etc/openldap/certs/hoge.cacrt
tls_cacertdir=/etc/openldap/certs
tls_reqcert=demand
interval=00:00:00:30
mirrormode off


ELB設定

ELBはServerCertとKeyをいれて

listnerはSSL:10636->TCP:389で

Route53にA(ALIAS)レコード登録しといて

ldap-proxy1のproviderにldaps::/アドレス:listner-portと指定しcacert認識できるようにする

とつながる。

たぶん。


コツなど

typeをrefreshOnlyにすると常時接続じゃなくて時々再接続にいきましてSSLとかELB越しな場合にいいかんじに。

(常時接続系はELBとは相性悪いようだった)

mirrormode offだとreadonlyになります。

chefだとproviderとかserveridはnodeのjsonで管理に。

複数AWSアカウントまたぐ感じだとclient側のproviderはdata_bagsに入れるといいかんじでした。

VPCpeeringすればSSLにしなくてよくてもっと簡単かと。

今回はVPCpeeringはAWSアカウント間はできるけどやりたくないという話でSSLすることに。


参考

第20回 OpenLDAPの冗長化対策【2】:そろそろLDAPにしてみないか?|gihyo.jp … 技術評論社

Amazon ELBをうまくつかうには、KeepAliveを有効にしよう。Timeoutは60秒よりだいぶ長くしよう。その背景。 | debiancdn

AWS Blackbelt 2015シリーズ Elastic Load Balancing

以上。