Puncte:0

Replicarea push OpenLDAP prin proxy - Ghid pentru configurarea syncrepl

drapel cn

Am ceva experiență de bază în interacțiunea și depanarea OpenLDAP, precum și 389-ds, dar nu am foarte multă experiență în setarea lor sau în configurarea unui Server OpenLDAP.

Scopul meu este să configurez replicarea de la o rețea primară într-o rețea de încredere spre exterior la un Replica care se află într-o rețea nede încredere, fără a permite replicii orice acces direct la primar, datorită fluxurilor de firewall și cerințelor rețelei. Acest lucru este valabil chiar și pentru conexiune inițială, deci o configurație simplă RefreshAndPersist nu va funcționa.

Am citit că este posibil să configurați o replicare bazată pe push folosind un proxy, de exemplu acea:

  • Proxy-ul este instalat ca bază de date „ascunsă” pe același server ca și primar
  • Proxy-ul setează replicarea cu primarul folosind RefreshAndPersist
  • Proxy-ul este apoi capabil să împingă datele din replică

Am răsfoit și recitit o mulțime de părți din aceasta document: https://www.openldap.org/doc/admin24/replication.html De asemenea, am urmat acest ghid de bază pentru a configura un primar cu replicare capacitate: https://ubuntu.com/server/docs/service-ldap-replication

Ceea ce am probleme cu, este să găsesc un ghid util care să mă ghideze prin proces pentru a configura și configura proxy-ul așa cum am descris mai sus.

În cercetările mele și încercările de a configura acest lucru, am învățat cum să încarc și să activez module, să activez înregistrarea în jurnal și să configurez suportul TLS.

În prezent, am OpenLDAP 2.4 care rulează pe Ubuntu 20.04 din depozitele Ubuntu (slapd și ldap-utils instalate cu apt).

Iată modulele activate în prezent:

root@davidw-ldap-provider-with-proxy:~# slapcat -n 0 | grep olcModuleLoad
olcModuleLoad: {0}back_mdb
olcModuleLoad: {1}pcache
olcModuleLoad: {2}back_ldap
olcModuleLoad: {3}syncprov
olcModuleLoad: {4}back_monitor
olcModuleLoad: {5}rwm

Iată setarea de înregistrare:

root@davidw-ldap-provider-with-proxy:~# ldapsearch -Y EXTERNAL -H ldapi:/// -b 'cn=config' -D 'cn=config' -s base -LLL -W olcLoglevel
Introduceți parola LDAP: 
Autentificarea SASL/EXTERNĂ a început
Nume utilizator SASL: gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth
SASL SSF: 0
dn: cn=config
olcLogLevel: Sincronizare
olcLogLevel: statistici

Putem vedea în rezultatul de mai sus că am back_ldap (un backend pentru OpenLDAP) și syncprov (o suprapunere) module încărcate. Acum încerc să urmez ghidul de la https://www.pixelstech.net/article/1509263631-OpenLDAP-Proxy----slapd-conf pentru a configura proxy-ul. Am adăugat următoarele în /etc/ldap/ldap.conf:

modulepath /usr/lib/ldap
moduleload back_bdb.la

baza de date ldap
numai citit da
protocol-versiunea 3
relegare ca utilizator
uri: "ldapi:///"
sufixul „dc=ma,dc=us,dc=example,dc=com”
suprapunere rwm

Încerc să convertesc acest lucru în ldif cu următoarea comandă, care produce o eroare că „ldap” este un tip de bază de date nerecunoscut:

root@davidw-ldap-provider-with-proxy:~# slaptest -f /etc/ldap/ldap.conf -F /etc/ldap/slapd.d/
Tip de bază de date nerecunoscut (ldap)
61ccaacf /etc/ldap/ldap.conf: linia 21: <database> init (ldap) eșuat
slaptest: director de configurare prost!

Întrebări

  1. De ce primesc asta Tip de bază de date nerecunoscut mesaj de eroare, chiar dacă putem dovedi că backend-ul ldap este încărcat?
  2. După ce primesc configurarea proxy-ului, unde pot găsi instrucțiuni utile pentru îndeplinirea cerințelor rămase ale proiectului meu? Am trimis câteva e-mailuri către lista de corespondență openldap la https://lists.openldap.org/hyperkitty/list/[email protected]/thread/UDTYKW6AEDR2ALY43V2DQZSL7AVTG5GB/, pentru că sunt destul de blocat și nu prea știu cum să merg mai departe. O vreme, am încercat să compilez v2.5 din sursă, dar nu am reușit să ajung nicăieri atât de departe cu acea configurație pe cât am putut să o fac folosind pachetele Ubuntu, așa că m-am întors la încercarea de a configura lucrurile. cu pachetele standard de la apt.
Puncte:0
drapel cn

Răspunsul la prima mea întrebare este că am făcut o greșeală prostească. În fișierul ldap.conf, aveam următoarele:

modulepath /usr/lib/ldap
moduleload back_bdb.la

baza de date ldap

Încărcam back_bdb modul, și nu back_ldap modul. Trebuia să schimb încărcare module valoare pentru back_ldap.la.

Greșeală prostească, probabil cauzată de privirea prea lungă la aceste fișiere de configurare.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.