User Tools

Site Tools


cn:ccr:aai:howto:how_to:rockylinux8-certificati

Certificati DS389 - RockyLinux 8

Tipologia Certificato

Il certificato deve essere di tipo RSA

Se si usa ACME (rinnovo automatico dei certificati) ricordasi, nella richiesta, di specificare:

–key-type rsa 

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

Definire la variabile $DSUID, se non è già definita:

# export DSUID=ds2

L'istanza sarà quindi ora:

# echo slapd-$DSUID

Verificare i certificati installati:

dsconf slapd-$DSUID 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 slapd-$DSUID security certificate del "Certificate Name da Aggiornare"

Esempio

dsconf slapd-$DSUID security certificate del server-cert-ansible-managed

Se avete un certificato con rinnovo automatico seguite questa procedura:

Dopo aver cancellato il certificato "vecchio"

Eseguire:

dsconf slapd-$DSUID 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:

Dopo aver cancellato il certificato "vecchio"

Convertire il certificato con chiave privata del server in formato pkcs12 in un file temporaneo

openssl pkcs12 -export -inkey ds_server_key.pem -in ds_server_crt.pem -out /tmp/crt.p12 -nodes -name 'server-cert'

Prendere nota della password del DB dei Certificati:

# cat /etc/dirsrv/slapd-$DSUID/pin.txt

Importare il certificato con chiave privata del server nel DB di 389-ds.

cd /etc/dirsrv/slapd-$DSUID
pk12util -i /tmp/crt.p12 -d .

Esempio

pk12util -i /root/ldapm.p12  -d .
Enter Password or Pin for "NSS Certificate DB": "inserire la password"
Enter password for PKCS12 file: "Password impostata durante la generazione del certificato in formato pk12"
pk12util: PKCS12 IMPORT SUCCESSFUL

Verrà richiesto di inserire la password per:

  • l'accesso al "NSS Certificate DB" (/etc/dirsrv/slapd-$DSUID/pin.txt).
  • il certificato pk12 (quella impostata durante la creazione del certificato pk12)

Procedere ora a definire l'uso del nuovo certificato nel DS:

  • aprire un browser e collegarsi via cockpit al server LDAP
  • andare in "389 Directory Server" –> "Security" e nel TAB "Security Configuration" selezionare il del nuovo certificato
  • in basso "Save Settings

Infine, fare il restart del servizio directory server

systemctl restart dirsrv@$DSUID.service

Per avere un output verboso si può usare -v nei comandi: dsconf

dsconf -v ....

Ricordarsi di aggiornare anche i certificati per 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

cn/ccr/aai/howto/how_to/rockylinux8-certificati.txt · Last modified: 2024/12/17 17:49 by anzel@infn.it

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki