cn:ccr:aai:howto:how_to:rockylinux8-ansible-ds389
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
cn:ccr:aai:howto:how_to:rockylinux8-ansible-ds389 [2024/01/12 13:17] – [Creare un 389ds tramite Ansible - Rocky/Alma Linux 8.x o 9.x] anzel@infn.it | cn:ccr:aai:howto:how_to:rockylinux8-ansible-ds389 [2024/06/24 17:59] (current) – enrico@infn.it | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Creare un 389ds tramite Ansible - Rocky Linux 8.x o 9.x ====== | ||
+ | |||
+ | \\ | ||
+ | |||
+ | ===== Sulla macchina su cui verrà installato 389ds (nodo gestito) ===== | ||
+ | |||
+ | * Installare una distribuzione a scelta tra RockyLinux e AlmaLinux 8 o 9 (selezione pacchetti: **minimal**) | ||
+ | * Assegnare IP e nome DNS coerente (**__esempio__: | ||
+ | * Eseguire gli update del sistema operativo (**dnf -y update**) | ||
+ | * In caso di update del kernel eseguire anche un **reboot** | ||
+ | |||
+ | \\ | ||
+ | ===== Sul nodo da cui si intende eseguire il playbook ansible (nodo di controllo) ===== | ||
+ | |||
+ | * Installare ansible. La versione minima di ansible installata deve essere **2.10**. | ||
+ | |||
+ | < | ||
+ | |||
+ | * Installare git | ||
+ | |||
+ | < | ||
+ | |||
+ | * Installare la collection: **community.general**: | ||
+ | < | ||
+ | ansible-galaxy collection install community.general | ||
+ | </ | ||
+ | |||
+ | * Installare la collection: **ansible.posix**: | ||
+ | < | ||
+ | ansible-galaxy collection install ansible.posix | ||
+ | </ | ||
+ | |||
+ | * Installare il ruolo ansible: **lvps.389ds_server**: | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | |||
+ | **ATTENZIONE**: | ||
+ | Fino a che il repository non sara' stato aggiornato, pertanto, NON si deve installare la versione disponibile nel repository standard, ma e' necessario scaricare il ruolo direttamente da github: | ||
+ | |||
+ | < | ||
+ | cd ~/ | ||
+ | git clone https:// | ||
+ | |||
+ | </ | ||
+ | |||
+ | * Scaricare il ruolo ansible: **389-ds-setup**: | ||
+ | < | ||
+ | cd ~/ | ||
+ | git clone https:// | ||
+ | </ | ||
+ | |||
+ | (Il link a baltig con le note di installazione e configurazione del playbook ansible è: https:// | ||
+ | |||
+ | |||
+ | * Creare una directory di lavoro che dovrà contenere i seguenti file: | ||
+ | |||
+ | < | ||
+ | * host.pem: < | ||
+ | * host.key: <chiave privata del certificato> | ||
+ | * host.keytab: | ||
+ | * playbook.yml: | ||
+ | * inventory: <file di inventory ansible in cui specificare l' | ||
+ | </ | ||
+ | |||
+ | |||
+ | Esempio del file **playbook.yml**: | ||
+ | |||
+ | < | ||
+ | - name: Configure 389 DS on xxx | ||
+ | hosts: xxx | ||
+ | roles: | ||
+ | - role: 389-ds-setup | ||
+ | dirsrv_rootdn_password: | ||
+ | dirsrv_tls_cert_file: | ||
+ | dirsrv_tls_key_file: | ||
+ | dirsrv_keytab_file: | ||
+ | </ | ||
+ | |||
+ | * Esempio del file **inventory**: | ||
+ | |||
+ | < | ||
+ | [xxx] | ||
+ | xxx.< | ||
+ | </ | ||
+ | |||
+ | * Eseguire il playbook ansible: | ||
+ | |||
+ | E' consigliabile configurare preventivamente lo scambio di chiavi tra la macchina che lancia il playbook e la macchina da configurare. | ||
+ | Posizionarsi nella directory di lavoro contenente il playbook, l' | ||
+ | < | ||
+ | ansible-playbook -u root -i inventory playbook.yml | ||
+ | </ | ||
+ | |||
+ | \\ | ||
+ | |||
+ | |||
+ | ===== Accesso a 389ds ===== | ||
+ | Collegarsi sulla macchina tramite cockpit sulla porta 9090 con l' | ||
+ | http:// | ||
+ | e selezionare | ||
+ | 389Directory Server | ||
+ | |||
+ | ===== Comunicare il nuovo DS al gruppo AAI ===== | ||
+ | Affinchè l'LDAP appena installato venga popolato con i dati di AAI è necessario inviare un mail a: | ||
+ | aai-support@infn.it | ||
+ | Il mail dovrà contenere: | ||
+ | - il nome del nuovo server | ||
+ | - il ramo locale o i rami locali che volete vengano copiati e sincronizzati sul vostro server | ||
+ | - la password del Directory Manager (ovviamente dopo la sicronizzazione dovrete cambiarla) | ||
+ | |||
+ | |||
+ | ===== Reset password Directory Manager ===== | ||
+ | |||
+ | E' necessario determinare il nome dell' | ||
+ | |||
+ | Eseguire: | ||
+ | # ls -F / | ||
+ | |||
+ | Esempio | ||
+ | # ls -F / | ||
+ | slapd-ds2 | ||
+ | |||
+ | L' | ||
+ | slapd-ds2 | ||
+ | |||
+ | Per effettuare il reset della password del Directory Manager eseguire: | ||
+ | dsconf " | ||
+ | |||
+ | ===== " | ||
+ | |||
+ | Se durante l' | ||
+ | |||
+ | cd ~ | ||
+ | systemctl stop dirsrv@${DSUID}.service | ||
+ | systemctl disable dirsrv@${DSUID}.service | ||
+ | systemctl daemon-reload | ||
+ | dnf -y remove " | ||
+ | rm -rf /etc/dirsrv / | ||