# SSL ## Démonstration préalable: lancer un wireshark sur le poste client, avec comme filtre _port 389_ faire une requète ldap authentifiée. Constater la présence du mot de passe et DN de connexion en clair ## Création du certificat ### Certificat autosigné Suivre la procédure slide 97. ⚠️ Bien faire attention aux permissions sur les fichiers, l'utilisateur _ldap_ doit pouvoir les lire. ### Certificat letsencrypt ```bash systemctl stop httpd dnf install certbot -y certbot certonly --standalone -d CHANGEME.formation.opendoor.fr -m formation@opendoor.fr --agree-tos --test-cert # répondre N à la question systemctl start httpd ``` ⚠️ Attention, pour que le certificat (de test) soit reconnu, il faudra que le client télécharge la clé publique de la CA: ```bash curl https://letsencrypt.org/certs/staging/letsencrypt-stg-root-x1.pem -L >> /etc/openldap/certs/ca.pem echo TLS_CACERT /etc/openldap/certs/ca.pem >> /etc/openldap/ldap.conf ``` Attention également aux permissions. L'utilisateur _ldap_ doit pouvoir lire les différents fichiers: ```bash chgrp -R ldap chgrp ldap /etc/letsencrypt/{archive,live} chmod -R g+rX /etc/letsencrypt/{archive,live} ``` ## Configurer le serveur ```ldif dn: cn=config changetype: modify replace: olcTLSCipherSuite olcTLSCipherSuite: ECDHE-RSA-AES256-SHA384:AES256-SHA256:!RC4:HIGH:!MD5:!EDH:!EXP:!SSLV2:!eNULL - replace: olcTLSProtocolMin olcTLSProtocolMin: 3.4 - replace: olcTLSCACertificateFile olcTLSCACertificateFile: /etc/openldap/certs/ca.pem #LETsEncrypt: olcTLSCACertificateFile: /etc/letsencrypt/live/CHANGEME.formation.opendoor.fr/fullchain.pem - replace: olcTLSCertificateFile olcTLSCertificateFile: /etc/openldap/certs/cert.pem #LETsEncrypt: olcTLSCertificateFile: /etc/letsencrypt/live/CHANGEME.formation.opendoor.fr/fullchain.pem - replace: olcTLSCertificateKeyFile olcTLSCertificateKeyFile: /etc/openldap/certs/key.pem #LETsEncrypt: olcTLSCertificateKeyFile: /etc/letsencrypt/live/CHANGEME.formation.opendoor.fr/privkey.pem ``` Le cas échéant on ouvrira le parefeu: ```bash firewall-cmd --add-service ldaps--permanent firewall-cmd --add-service ldaps ``` ## Configurer le client dans le fichier /etc/openldap/ldap.conf modifier l'_URI_, _TLS_REQCERT_ et _TLS_CACERT_ ```bash URI ldaps://CHANGEME.formation.opendoor.fr TLS_REQCERT demand TLC_CACERT /etc/openldap/certs/ca.pem ``` ## Test On doit pouvoir se connecter de manière sécurisé au serveur ```bash lds -Z ``` Wireshark ne doit voir passer que des paquets TLS 1.3 application_data