Adresářový server LDAP
Součástí IAM appliance je od verze 0.6
adresářový server OpenLDAP. Ten je používán jak samotnou appliance, tak ho lze využívat pro poskytování dat jiným infrastrukturním aplikacím - např. autentizačním serverům (RADIUS, …), linuxovým operačním systémům, externím access managerům, apod.
Ovládání adresářového serveru
Z pohledu IAM appliance jde o službu iam-directory-server.service
, ta se ovládá stejně jako ostatní služby appliance příkazem systemctl
. Služba adresářového serveru musí vždy běžet, jinak se uživatelé nejsou schopni autentizovat ani do jednotlivých částí appliance.
LDAP má svou vlastní databázi, která se v pravidelných intervalech zálohuje.
-
iam-directory-server-backup.service
- Služba provádějící zálohu, součástí služby je i retence záloh. Vytváří se dva soubory se zálohou, záloha konfigurace a záloha dat. -
iam-directory-server-backup.timer
- Konfigurace naplánované úlohy; v jakých intervalech se má spouštětiam-directory-server-backup.service
.
Stav zálohování
Zálohy se provádějí do adresáře /data/volumes/directory-server/backup/
ve formě gzipovaných LDIF souborů. Stav pravidelné úlohy je možné zjistit pomocí příkazů:
[root@localhost ~]# systemctl status iam-directory-server-backup.service [root@localhost ~]# systemctl status iam-directory-server-backup.timer [root@localhost ~]# systemctl list-timers --all
Aktivace pravidelných záloh
Pro aktivaci pravidelných záloh spusťte timer a aktivujte jeho automatické spouštění po startu operačního systému.
Deaktivaci proveďte stejným způsobem, ale použijte stop
, respektive disable
.
[root@localhost ~]# systemctl start iam-directory-server-backup.timer [root@localhost ~]# systemctl enable iam-directory-server-backup.timer
Zálohu je možné provést i ad-hoc ručním spuštěním služby iam-directory-server-backup.service
. Služba provede retenci záloh, pak vytvoří novou zálohu a opět se vypne.
Obnova ze zálohy
Obnovu je v této verzi nutné provádět ručně. Po dobu obnovy je nedostupná autentizace uživatelů a případně data o jejich profilech. Již přihlášení uživatelé mohou v appliance stále pracovat. Některé aplikace (např. CzechIdM) budou hlásit, že je adresářový server nedostupný.
Proces obnovy trvá zpravidla jednotky minut.
-
Přepněte se do kontejneru s adresářovým serverem.
[root@localhost ~]# docker exec -it directory-server bash
-
Ověřte, že jsou uvnitř kontejneru vidět zálohy a vyberty zálohy, které chcete obnovit.
root@directory-server:/# ls -l /data/backup/ total 28 -rw-------. 1 root root 23052 Mar 2 11:46 20210302T114658-config.gz -rw-------. 1 root root 742 Mar 2 11:46 20210302T114659-data.gz
-
Obnovte zálohu konfigurace LDAPu. Restore skriptu se zadává název zálohy bez určení cesty k souboru.
root@directory-server:/# rm -r /etc/ldap/slapd.d/cn* root@directory-server:/# /sbin/slapd-restore-config 20210204T090611-config.gz
-
Obnovte data LDAPu. Restore skriptu se zadává název zálohy bez určení cesty k souboru.
root@directory-server:/# rm /var/lib/ldap/* root@directory-server:/# /sbin/slapd-restore-data 20210204T090615-data.gz
Šifrování záloh
Tato funkce je dostupná od iam-app-directory-server
verze 0.2-0
a pouze pokud se používá kontejnerový image bcv-openldap:1.4.0-r2
nebo novější. Verzi image lze zjistit z konfigurace služby (soubor /data/registry/node-active-config/docker-compose-directory-server.yml
).
Při instalaci updatu je automaticky vygenerován nový šifrovací klíč pro zálohy. Tento šifrovací klíč je unikátní a lze ho rovnou používat. Pokud přesto chcete klíč změnit, lze to provést následujícím příkazem.
[root@localhost ~]# openssl rand -base64 32 > /data/volumes/directory-server/secrets-enc/ldap-backup-symkey.pwfile
Šifrování záloh je nutné aktivovat na úrovni kontejneru.
-
Editujte soubor
/data/registry/node-active-config/docker-compose-directory-server.yml
.-
Nastavte proměnnou
LDAP_ENCRYPT_BACKUP
na hodnotutrue
.
-
-
Zastavte službu CAS pomocí
systemctl stop iam-cas
. -
Restartujte LDAP službu příkazem
systemctl restart iam-directory-server
. -
Spusťte službu CAS pomocí
systemctl start iam-cas
. -
Další vytvořená záloha už bude zašifrovaná.
Šifrovanou zálohu lze rozpoznat podle koncovky souboru. Nešifrované zálohy mají suffix .gz
, šifrované zálohy mají suffix .gz.e
. Obnova šifrované zálohy se provádí stejně jako obnova zálohy nešifrované. Obnovovací skripty samy rozpoznají šifrovanou zálohu a pokusí se ji dešifrovat pomocí dostupného klíče.