Stations de travail en ligne OnWorks Linux et Windows

Logo

Hébergement gratuit en ligne pour les postes de travail

<Précédent | Table des matières | Suivant>

1.9. Réplication et TLS


Si vous avez configuré la réplication entre les serveurs, il est courant de chiffrer (StartTLS) le trafic de réplication pour empêcher l'espionnage. Ceci est différent de l'utilisation du cryptage avec authentification comme nous l'avons fait ci-dessus. Dans cette section, nous allons nous appuyer sur ce travail d'authentification TLS.


L'hypothèse ici est que vous avez configuré la réplication entre le fournisseur et le consommateur conformément à la Section 1.6, « Réplication » [p. 123] et avoir configuré TLS pour l'authentification sur le fournisseur en suivant la Section 1.8, « TLS » [p. 129].


Comme indiqué précédemment, l'objectif (pour nous) de la réplication est la haute disponibilité du service LDAP. Puisque nous avons TLS pour l'authentification sur le fournisseur, nous exigerons la même chose sur le consommateur. En plus de cela, cependant, nous voulons chiffrer le trafic de réplication. Il ne reste plus qu'à créer une clé et un certificat pour le consommateur, puis à configurer en conséquence. Nous générerons la clé/le certificat sur le fournisseur, pour éviter d'avoir à créer un autre certificat CA, puis transférerons le matériel nécessaire au consommateur.

1. Sur le fournisseur,


Créez un répertoire de stockage (qui sera utilisé pour le transfert éventuel) puis la clé privée du Consommateur :


mkdir ldap02-ssl cd ldap02-ssl

sudo certtool --generate-privkey \

--bits 1024 \

--outfile ldap02_slapd_key.pem


Créer un fichier d'informations, ldap02.info, pour le serveur Consommateur, en ajustant ses valeurs en conséquence :


organisation = Exemple Entreprise cn = ldap02.example.com



tls_www_server encryption_key signature_clé expiration_days = 3650


Créez le certificat du consommateur :


sudo certtool --generate-certificate \

--load-privkey ldap02_slapd_key.pem \

--load-ca-certificate /etc/ssl/certs/cacert.pem\

--load-ca-privkey /etc/ssl/private/cakey.pem \

--modèle ldap02.info \

--outfile ldap02_slapd_cert.pem


Obtenez une copie du certificat CA :


cp /etc/ssl/certs/cacert.pem .


Avaient fini. Transférez maintenant le ldap02-ssl répertoire au Consommateur. Ici, nous utilisons scp (ajustez en conséquence):


cd ..

scp -r ldap02-ssl utilisateur@consommateur :


2. Sur le consommateur,


Configurez l'authentification TLS :


sudo apt installer ssl-cert

sudo gpasswd -a openldap ssl-cert

sudo cp ldap02_slapd_cert.pem cacert.pem /etc/ssl/certs sudo cp ldap02_slapd_key.pem /etc/ssl/private

sudo chgrp openldap /etc/ssl/private/ldap02_slapd_key.pem sudo chmod 0640 /etc/ssl/private/ldap02_slapd_key.pem sudo systemctl redémarrer slapd.service


Créer le fichier /etc/ssl/certinfo.ldif avec le contenu suivant (ajuster en conséquence):


dn : cn=config

ajouter : olcTLSCACertificateFile olcTLSCACertificateFile : /etc/ssl/certs/cacert.pem

-

ajouter : olcTLSCertificateFile

olcTLSCertificateFile : /etc/ssl/certs/ldap02_slapd_cert.pem

-

ajouter : olcTLSCertificateKeyFile

olcTLSCertificateKeyFile : /etc/ssl/private/ldap02_slapd_key.pem


Configurez la base de données slapd-config :



sudo ldapmodify -Y EXTERNE -H ldapi:/// -f certinfo.ldif


Configurer / etc / default / slapd comme sur le fournisseur (SLAPD_SERVICES).

3. Sur le consommateur,


Configurez TLS pour la réplication côté consommateur. Modifier l'existant olcSyncrepl attribut en ajoutant certaines options TLS. Ce faisant, nous verrons, pour la première fois, comment modifier la ou les valeurs d'un attribut.


Créer le fichier consumer_sync_tls.ldif avec le contenu suivant:


dn : olcDatabase={1}mdb,cn=config remplacer : olcSyncRepl

olcSyncRepl : rid=0 provider=ldap://ldap01.example.com bindmethod=simple binddn="cn=admin,dc=example,dc=com" credentials=secret searchbase="dc=example,dc=com" logbase= "cn=accesslog" logfilter="(&(objectClass=auditWriteObject)(reqResult=0))" schemachecking=on type=refreshAndPersist retry="60 +" syncdata=accesslog starttls=critical tls_reqcert=demand


Les options supplémentaires spécifient, respectivement, que le consommateur doit utiliser StartTLS et que le certificat CA est requis pour vérifier l'identité du fournisseur. Notez également la syntaxe LDIF pour changer les valeurs d'un attribut ('replace').


Mettez en œuvre ces changements :


sudo ldapmodify -Y EXTERNAL -H ldapi:/// -f consumer_sync_tls.ldif


Et redémarrez slapd :


sudo systemctl redémarrer slapd.service


4. Sur le fournisseur,


Vérifiez qu'une session TLS a été établie. Dans / var / log / syslog, à condition que vous ayez configuré la journalisation au niveau « conns », vous devriez voir des messages similaires à :


slapd[3620] : conn=1047 fd=20 ACCEPTER de IP=10.153.107.229:57922 (IP=0.0.0.0:389) slapd[3620]: conn=1047 op=0 EXT oid=1.3.6.1.4.1.1466.20037

slapd[3620] : conn=1047 op=0 STARTTLS

slapd[3620]: conn=1047 op=0 RESULTAT oid= err=0 text=

slapd[3620] : conn=1047 fd=20 TLS établi tls_ssf=128 ssf=128 slapd[3620] : conn=1047 op=1 BIND dn="cn=admin,dc=example,dc=com" method=128

slapd[3620] : conn=1047 op=1 BIND dn="cn=admin,dc=example,dc=com" mech=SIMPLE ssf=0 slapd[3620] : conn=1047 op=1 RESULT tag=97 err= 0 texte


Meilleur système d'exploitation Cloud Computing chez OnWorks :