====== Certificati DS389 - RockyLinux 8 ====== ===== Aggiornamento Certificato Macchina ===== E' necessario determinare il nome dell'istanza del DS389 Eseguire: # ls -F /etc/dirsrv/ | grep slapd Esempio # ls -F /etc/dirsrv/ | grep slapd slapd-ds2 L'istanza è: slapd-ds2 Verificare i certificati installati: dsconf "istanza" security certificate list Esempio: dsconf slapd-ds2 security certificate list Certificate Name: Server-Cert Subject DN: CN=ds2,givenName=ff1ceb8a-d71f-46cc-a89d-4327de0c4c3b,O=testing,L=389ds,ST=Queensland,C=AU Issuer DN: CN=ssca.389ds.example.com,O=testing,L=389ds,ST=Queensland,C=AU Expires: 2024-03-16 15:30:09 Trust Flags: u,u,u Certificate Name: server-cert-ansible-managed Subject DN: CN=ds.infn.it,OU=SSNN,O=Istituto Nazionale di Fisica Nucleare,ST=Roma,C=IT Issuer DN: CN=GEANT OV RSA CA 4,O=GEANT Vereniging,C=NL Expires: 2023-03-23 23:59:59 Trust Flags: u,u,u Prendersi nota del "**Certificate Name:**" server che si desidera aggiornare \\ Il profilo ansibile DS389 per RockyLinux8 il Certificate Name è: "**server-cert-ansible-managed**" Cancellare il certificato che si desidera aggiornare: dsconf "istanza" security certificate del "Certificate Name da Aggiornare" Esempio dsconf slapd-ds2 security certificate del server-cert-ansible-managed **Se avete un certificato con rinnovo automatico seguite questa procedura:** dsconf "istanza" security certificate add --name "Certificate Name da Aggiornare" --file "path del certificato nuovo.pem" --primary-cert Esempio dsconf -v slapd-ds2 security certificate add --name server-cert-ansible-managed --file ds2.infn.it-2.pem --primary-cert **Se avete un certificato senza automatico seguite questa procedura:** \\ __Attenzione questa procedura non è ancora stata testata__\\ Convertire il certificato con chiave privata del server in formato pkcs12 in un file temporaneo. **Non impostare una password**. openssl pkcs12 -export -inkey ds_server_key.pem -in ds_server_crt.pem -out /tmp/crt.p12 -nodes -name 'server-cert' Importare il certificato con chiave privata del server nel DB di 389-ds. Verrà richiesto di inserire la password per l'accesso al "NSS Certificate DB" (/etc/dirsrv/slapd-$DSUID/pin.txt). La prima password che viene chiesta è quella del DB di 389-ds, la seconda è invece quella eventualmente impostata nell’export (premere semplicemente invio, se non è stata impostata la password per il p12). cd /etc/dirsrv/slapd-$DSUID pk12util -i /tmp/crt.p12 -d . Infine, comunque fare il restart del servizio directory server systemctl restart dirsrv@ds.service Per avere un output verboso si può usare -v nei comandi: dsconf dsconf -v .... Ricordarsi di aggiornare anche i certificati per cockpit [[https://wiki.infn.it/cn/ccr/aai/howto/how_to/rockylinux8-cockpit|Certificati cockpit]] ===== Verifica Certificato Server ===== Eseguire: openssl s_client -starttls ldap -connect "server":389 2>&1 < /dev/null | sed -n '/-----BEGIN/,/-----END/p' | openssl x509 -noout -dates Esempio: openssl s_client -starttls ldap -connect ds1.infn.it:389 2>&1 < /dev/null | sed -n '/-----BEGIN/,/-----END/p' | openssl x509 -noout -dates ===== Verifica Certificati Master ===== Tramite socket ldapsearch -Q -LLL -o ldif-wrap=no -Y EXTERNAL -H ldapi://%2fvar%2frun%2f"slapd-"server".socket" -b 'cn=config' cn=dsm* infnCertSubjectDN Esempio ldapsearch -Q -LLL -o ldif-wrap=no -Y EXTERNAL -H ldapi://%2fvar%2frun%2fslapd-ds1.socket -b 'cn=config' cn=dsm* infnCertSubjectDN dn: cn=dsm1.infn.it,cn=config infnCertSubjectDN: CN=dsm1.infn.it,OU=INFN-AAI,O=Istituto Nazionale di Fisica Nucleare,L=Frascati,C=IT infnCertSubjectDN: CN=dsm1.infn.it,OU=SSNN,O=Istituto Nazionale di Fisica Nucleare,ST=Roma,C=IT dn: cn=dsm2.infn.it,cn=config infnCertSubjectDN: CN=dsm2.infn.it,OU=INFN-AAI,O=Istituto Nazionale di Fisica Nucleare,L=Frascati,C=IT infnCertSubjectDN: CN=dsm2.infn.it,OU=SSNN,O=Istituto Nazionale di Fisica Nucleare,ST=Roma,C=IT dn: cn=dsm3.infn.it,cn=config infnCertSubjectDN: CN=dsm3.infn.it,OU=INFN-AAI,O=Istituto Nazionale di Fisica Nucleare,L=Frascati,C=IT infnCertSubjectDN: CN=dsm3.infn.it,OU=SSNN,O=Istituto Nazionale di Fisica Nucleare,ST=Roma,C=IT L'ultimo certificato rilasciato (Aprile 2022) ha questi valori: **OU=SSNN,O=Istituto Nazionale di Fisica Nucleare,ST=Roma,C=IT**