[re2o-ldap-replica] Deploy a re2o-ldap-replica
Signed-off-by: Yohann D'ANELLO <ynerant@crans.org>certbot_on_virtu
parent
b14fd01ce0
commit
05c641fa7e
|
@ -0,0 +1,8 @@
|
|||
---
|
||||
glob_re2o_ldap_replica:
|
||||
replicator:
|
||||
username: replicator
|
||||
password: "{{ vault.ldap_replication_re2o_credentials }}"
|
||||
suffix: dc=crans,dc=org
|
||||
url: "ldaps://{{ query('ldap', 'ip', 're2o-ldap', 'adm') | ipv4 | first }}:636"
|
||||
root_password_hash: "{{ vault.ldap_master_password_hash }}"
|
3
hosts
3
hosts
|
@ -158,6 +158,9 @@ radius
|
|||
re2o.adm.crans.org
|
||||
re2o.cachan-adm.crans.org
|
||||
|
||||
[re2o_ldap_replica:children]
|
||||
adh_server
|
||||
|
||||
[reverseproxy]
|
||||
hodaur.adm.crans.org
|
||||
rodauh.cachan-adm.crans.org
|
||||
|
|
|
@ -5,3 +5,9 @@
|
|||
slapd: '{{ glob_slapd | default({}) | combine(loc_slapd | default({})) }}'
|
||||
roles:
|
||||
- slapd
|
||||
|
||||
- hosts: re2o_ldap_replica
|
||||
vars:
|
||||
re2o_ldap_replica: '{{ glob_re2o_ldap_replica | default({}) | combine(loc_re2o_ldap_replica | default({})) }}'
|
||||
roles:
|
||||
- re2o-ldap-replica
|
||||
|
|
|
@ -0,0 +1,84 @@
|
|||
---
|
||||
- name: Install slapd
|
||||
apt:
|
||||
name:
|
||||
- ldap-utils
|
||||
- libio-socket-ssl-perl
|
||||
- slapd
|
||||
update_cache: true
|
||||
install_recommends: false
|
||||
register: apt_result
|
||||
retries: 3
|
||||
until: apt_result is succeeded
|
||||
|
||||
- name: Check if installation was done
|
||||
stat:
|
||||
path: /root/.delete_me_to_reset_ldap_configuration
|
||||
register: installation
|
||||
|
||||
- name: Stop slapd
|
||||
when: not installation.stat.exists
|
||||
systemd:
|
||||
name: slapd
|
||||
state: stopped
|
||||
|
||||
- name: Delete old slapd configuration and data
|
||||
when: not installation.stat.exists
|
||||
file:
|
||||
path: '{{ item }}'
|
||||
state: absent
|
||||
loop:
|
||||
- /etc/ldap/slapd.d
|
||||
- /var/lib/ldap
|
||||
|
||||
- name: Create slapd configuration and data directory
|
||||
file:
|
||||
path: '{{ item }}'
|
||||
state: directory
|
||||
owner: openldap
|
||||
group: openldap
|
||||
mode: 0700
|
||||
loop:
|
||||
- /etc/ldap/slapd.d
|
||||
- /var/lib/ldap
|
||||
|
||||
- name: Copy ldiff files
|
||||
template:
|
||||
src: 'ldap/{{ item }}.ldiff.j2'
|
||||
dest: '/tmp/{{ item }}.ldiff'
|
||||
owner: openldap
|
||||
group: openldap
|
||||
mode: 0600
|
||||
loop:
|
||||
- db
|
||||
- schema
|
||||
- consumer_simple_sync
|
||||
|
||||
- name: Initialize re2o-ldap schema
|
||||
when: not installation.stat.exists
|
||||
shell: slapadd -n 0 -l /tmp/schema.ldiff -F /etc/ldap/slapd.d/
|
||||
become_user: openldap
|
||||
|
||||
- name: Initialize re2o-ldap database
|
||||
when: not installation.stat.exists
|
||||
shell: slapadd -n 1 -l /tmp/db.ldiff
|
||||
become_user: openldap
|
||||
|
||||
- name: Start slapd
|
||||
when: not installation.stat.exists
|
||||
systemd:
|
||||
name: slapd
|
||||
state: started
|
||||
|
||||
- name: Enable data replication
|
||||
when: not installation.stat.exists
|
||||
shell: ldapadd -Q -Y EXTERNAL -H ldapi:/// -f /tmp/consumer_simple_sync.ldiff
|
||||
|
||||
- name: Touch installation marker
|
||||
when: not installation.stat.exists
|
||||
file:
|
||||
path: /root/.delete_me_to_reset_ldap_configuration
|
||||
state: touch
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0600
|
|
@ -0,0 +1,19 @@
|
|||
dn: olcDatabase={1}hdb,cn=config
|
||||
changetype: modify
|
||||
add: olcSyncrepl
|
||||
olcSyncrepl: rid=1
|
||||
provider={{ re2o_ldap_replica.url }}
|
||||
bindmethod=simple
|
||||
binddn="cn={{ re2o_ldap_replica.replicator.username }},{{ re2o_ldap_replica.suffix }}"
|
||||
credentials={{ re2o_ldap_replica.replicator.password }}
|
||||
searchbase="{{ re2o_ldap_replica.suffix }}"
|
||||
scope=sub
|
||||
schemachecking=on
|
||||
type=refreshAndPersist
|
||||
timeout=0
|
||||
network-timeout=0
|
||||
retry="30 20 300 +"
|
||||
tls_reqcert=allow
|
||||
-
|
||||
add: olcUpdateRef
|
||||
olcUpdateRef: {{ re2o_ldap_replica.url }}
|
|
@ -0,0 +1,183 @@
|
|||
dn: {{ re2o_ldap_replica.suffix }}
|
||||
o: rezo
|
||||
structuralObjectClass: organization
|
||||
entryUUID: fc97a0fe-514b-1034-9e4d-59675b32507b
|
||||
creatorsName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
createTimestamp: 20150225150906Z
|
||||
description: ldap
|
||||
objectClass: top
|
||||
objectClass: dcObject
|
||||
objectClass: organization
|
||||
entryCSN: 20151003212702.245118Z#000000#000#000000
|
||||
modifiersName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
modifyTimestamp: 20151003212702Z
|
||||
contextCSN: 20161004233332.689769Z#000000#000#000000
|
||||
|
||||
dn: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
objectClass: simpleSecurityObject
|
||||
objectClass: organizationalRole
|
||||
cn: admin
|
||||
structuralObjectClass: organizationalRole
|
||||
entryUUID: fc97fa72-514b-1034-9e4e-59675b32507b
|
||||
creatorsName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
createTimestamp: 20150225150906Z
|
||||
description:: TERBUCBhZG1pbmlzdHJhdG9yDQo=
|
||||
userPassword: {{ re2o_ldap_replica.root_password_hash }}
|
||||
entryCSN: 20160604005945.576566Z#000000#000#000000
|
||||
modifiersName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
modifyTimestamp: 20160604005945Z
|
||||
|
||||
dn: cn=Utilisateurs,{{ re2o_ldap_replica.suffix }}
|
||||
gidNumber: 500
|
||||
cn: Utilisateurs
|
||||
structuralObjectClass: posixGroup
|
||||
entryUUID: 5d53854e-5204-1034-8c61-8da535cabdfc
|
||||
creatorsName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
createTimestamp: 20150226130856Z
|
||||
sambaSID: 500
|
||||
uid: Users
|
||||
objectClass: posixGroup
|
||||
objectClass: top
|
||||
objectClass: sambaSamAccount
|
||||
objectClass: radiusprofile
|
||||
entryCSN: 20150226130950.194154Z#000000#000#000000
|
||||
modifiersName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
modifyTimestamp: 20150226130950Z
|
||||
|
||||
dn: ou=groups,{{ re2o_ldap_replica.suffix }}
|
||||
objectClass: organizationalUnit
|
||||
description: Groupes d'utilisateurs
|
||||
ou: groups
|
||||
structuralObjectClass: organizationalUnit
|
||||
entryUUID: 986aa1b6-bb86-1035-9a4c-2ff0c800ec24
|
||||
creatorsName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
createTimestamp: 20160531142039Z
|
||||
entryCSN: 20160531142039.780151Z#000000#000#000000
|
||||
modifiersName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
modifyTimestamp: 20160531142039Z
|
||||
|
||||
dn: ou=services,ou=groups,{{ re2o_ldap_replica.suffix }}
|
||||
objectClass: organizationalUnit
|
||||
description: Groupes de comptes techniques
|
||||
ou: services
|
||||
structuralObjectClass: organizationalUnit
|
||||
entryUUID: cbb56904-bc6a-1035-9fbb-3dc3850d88ba
|
||||
creatorsName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
createTimestamp: 20160601173411Z
|
||||
entryCSN: 20160601173411.088359Z#000000#000#000000
|
||||
modifiersName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
modifyTimestamp: 20160601173411Z
|
||||
|
||||
dn: ou=service-users,{{ re2o_ldap_replica.suffix }}
|
||||
objectClass: organizationalUnit
|
||||
description: Utilisateurs techniques de l'annuaire
|
||||
ou: service-users
|
||||
structuralObjectClass: organizationalUnit
|
||||
entryUUID: 0e397270-bc6b-1035-9fbd-3dc3850d88ba
|
||||
creatorsName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
createTimestamp: 20160601173602Z
|
||||
entryCSN: 20160601173602.683304Z#000000#000#000000
|
||||
modifiersName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
modifyTimestamp: 20160601173602Z
|
||||
|
||||
dn: cn=freeradius,ou=service-users,{{ re2o_ldap_replica.suffix }}
|
||||
objectClass: applicationProcess
|
||||
objectClass: simpleSecurityObject
|
||||
cn: freeradius
|
||||
userPassword: {{ re2o_ldap_replica.root_password_hash }}
|
||||
structuralObjectClass: applicationProcess
|
||||
entryUUID: 8596e4ec-bc6b-1035-9fbf-3dc3850d88ba
|
||||
creatorsName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
createTimestamp: 20160601173922Z
|
||||
entryCSN: 20160601173922.944598Z#000000#000#000000
|
||||
modifiersName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
modifyTimestamp: 20160601173922Z
|
||||
|
||||
dn: cn=nssauth,ou=service-users,{{ re2o_ldap_replica.suffix }}
|
||||
objectClass: applicationProcess
|
||||
objectClass: simpleSecurityObject
|
||||
cn: nssauth
|
||||
structuralObjectClass: applicationProcess
|
||||
entryUUID: cfbdadc6-bc6b-1035-9fc4-3dc3850d88ba
|
||||
creatorsName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
createTimestamp: 20160601174127Z
|
||||
userPassword: {{ re2o_ldap_replica.root_password_hash }}
|
||||
entryCSN: 20160603093724.770069Z#000000#000#000000
|
||||
modifiersName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
modifyTimestamp: 20160603093724Z
|
||||
|
||||
dn: cn=auth,ou=services,ou=groups,{{ re2o_ldap_replica.suffix }}
|
||||
objectClass: groupOfNames
|
||||
cn: auth
|
||||
member: cn=nssauth,ou=service-users,{{ re2o_ldap_replica.suffix }}
|
||||
structuralObjectClass: groupOfNames
|
||||
entryUUID: 98524836-bc6d-1035-9fc7-3dc3850d88ba
|
||||
creatorsName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
createTimestamp: 20160601175413Z
|
||||
entryCSN: 20160620005705.309928Z#000000#000#000000
|
||||
modifiersName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
modifyTimestamp: 20160620005705Z
|
||||
|
||||
dn: ou=posix,ou=groups,{{ re2o_ldap_replica.suffix }}
|
||||
objectClass: organizationalUnit
|
||||
description: Groupes de comptes POSIX
|
||||
ou: posix
|
||||
structuralObjectClass: organizationalUnit
|
||||
entryUUID: fbd89c4a-bdb5-1035-9045-d5a09894d93e
|
||||
creatorsName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
createTimestamp: 20160603090455Z
|
||||
entryCSN: 20160603090455.267192Z#000000#000#000000
|
||||
modifiersName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
modifyTimestamp: 20160603090455Z
|
||||
|
||||
dn: cn=wifi,ou=service-users,{{ re2o_ldap_replica.suffix }}
|
||||
objectClass: applicationProcess
|
||||
objectClass: simpleSecurityObject
|
||||
cn: wifi
|
||||
structuralObjectClass: applicationProcess
|
||||
entryUUID: 8cc2d1a6-bdc2-1035-9051-d5a09894d93e
|
||||
creatorsName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
createTimestamp: 20160603103452Z
|
||||
userPassword: {{ re2o_ldap_replica.root_password_hash }}
|
||||
entryCSN: 20160603103638.682210Z#000000#000#000000
|
||||
modifiersName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
modifyTimestamp: 20160603103638Z
|
||||
|
||||
dn: cn=usermgmt,ou=services,ou=groups,{{ re2o_ldap_replica.suffix }}
|
||||
objectClass: groupOfNames
|
||||
cn: usermgmt
|
||||
structuralObjectClass: groupOfNames
|
||||
entryUUID: ec01e206-bdc2-1035-9054-d5a09894d93e
|
||||
creatorsName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
createTimestamp: 20160603103732Z
|
||||
member: cn=wifi,ou=service-users,{{ re2o_ldap_replica.suffix }}
|
||||
entryCSN: 20160603103746.897151Z#000000#000#000000
|
||||
modifiersName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
modifyTimestamp: 20160603103746Z
|
||||
|
||||
dn: cn=replica,ou=service-users,{{ re2o_ldap_replica.suffix }}
|
||||
objectClass: applicationProcess
|
||||
objectClass: simpleSecurityObject
|
||||
cn: replica
|
||||
structuralObjectClass: applicationProcess
|
||||
entryUUID: caef5c54-c0e4-1035-948f-dfe369fe3d4f
|
||||
creatorsName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
createTimestamp: 20160607101733Z
|
||||
userPassword: {{ re2o_ldap_replica.root_password_hash }}
|
||||
entryCSN: 20160607101829.424643Z#000000#000#000000
|
||||
modifiersName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
modifyTimestamp: 20160607101829Z
|
||||
|
||||
dn: cn=readonly,ou=services,ou=groups,{{ re2o_ldap_replica.suffix }}
|
||||
objectClass: groupOfNames
|
||||
cn: readonly
|
||||
structuralObjectClass: groupOfNames
|
||||
entryUUID: f6bd2366-c0e4-1035-9492-dfe369fe3d4f
|
||||
creatorsName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
createTimestamp: 20160607101846Z
|
||||
member: cn=replica,ou=service-users,{{ re2o_ldap_replica.suffix }}
|
||||
member: cn=freeradius,ou=service-users,{{ re2o_ldap_replica.suffix }}
|
||||
entryCSN: 20160619214628.287369Z#000000#000#000000
|
||||
modifiersName: cn=admin,{{ re2o_ldap_replica.suffix }}
|
||||
modifyTimestamp: 20160619214628Z
|
||||
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue