Una replica è un clone di un server FreeIPA specifico. Il server e la replica condividono le stesse informazioni interne su utenti, macchine, certificati e criteri configurati. Questi dati vengono copiati dal server alla replica in un processo chiamato replica . Le due istanze Directory Server utilizzate da un server FreeIPA — l'istanza Directory Server utilizzata dal server FreeIPA come archivio dati e l'istanza Directory Server utilizzata dal Dogtag Certificate System per memorizzare le informazioni sui certificati — vengono replicate sulle corrispondenti istanze Directory Server consumer utilizzate dalla replica di FreeIPA.
La replica di FreeIPA elimina il singolo punto di errore. Quando si dispone della configurazione della replica FreeIPA, i client FreeIPA possono continuare ad autenticarsi anche se un server è inattivo.
Dovresti avere FreeIPA Server già installato e perfettamente funzionante, con account di prova. Per l'installazione di FreeIPA Server, dai un'occhiata a questa guida:Come installare e configurare FreeIPA su Rocky Linux/Centos 8
Dopo aver installato e configurato il server FreeIPA, puoi avviare la replica di FreeIPA.
Contenuti correlati
- Come gestire utenti e gruppi in FreeIPA Server
- Come installare il client FreeIPA su Fedora 35
- Come installare il client FreeIPA su Rocky Linux/Alma Linux/CentOS 8
- Come installare e configurare FreeIPA su Rocky Linux/Centos
- Come installare e configurare il client FreeIPA su Ubuntu 20.04
Prerequisiti
Per seguire, assicurati di avere:
- Un server FreeIPA da replicare. Consulta la guida su come configurare qui.
- Un server Rocky Linux/Alma Linux/Centos 8 aggiornato
- Sudo accesso al server
La mia configurazione
Ho un server FreeIPA primario con nome host ipa.citizix.com
e IP 10.2.40.149
e la replica verrà configurata su ipa-replica.citizix.com
con IP 10.2.40.72
.
Master IPA:
Hostname: ipa.citizix.com
IP: 10.2.40.149
Replica IPA
Hostname: ipa-replica.citizix.com
IP: 10.2.40.72
Indice dei contenuti
- Aggiorna il sistema
- Configura il file degli host locali DNS
- Imposta nome host replica
- Imposta il fuso orario corretto del server di replica
- Disabilita SELinux
- Installa e configura il client FreeIPA
- Configura il server FreeIPA
- Configura sull'host del server di replica
1. Aggiorna il sistema
Usa questo comando per assicurarti che i pacchetti host siano aggiornati:
sudo dnf -y update
2. Configura il file degli host locali DNS
Su entrambi i server, assicurati di avere i nomi host per ogni server configurato. Questo è importante se non hai un servizio DNS attivo nella tua infrastruttura.
Apri il file hosts con il tuo editor di testo, sto usando vim:
sudo vim /etc/hosts
Aggiungi l'IP e i nomi host sia per i server FreeIPA che per i server di replica FreeIPA. Aggiorna per riflettere i tuoi nomi host:
10.2.40.149 ipa.citizix.com ipa
10.2.40.72 ipa-replica.citizix.com ipa-replica
3. Imposta il nome host della replica
Se non hai configurato il nome host sulla tua replica, usa questo comando:
sudo hostnamectl set-hostname ipa-replica.citizix.com
Conferma con questo:
$ hostnamectl
Static hostname: ipa-replica.citizix.com
Icon name: computer-vm
Chassis: vm
Machine ID: ee3563997878469ebfcc3f721aec3c66
Boot ID: 09df51e3153943698ccd5b902b5aa89e
Virtualization: kvm
Operating System: Rocky Linux 8.4 (Green Obsidian)
CPE OS Name: cpe:/o:rocky:rocky:8.4:GA
Kernel: Linux 4.18.0-305.3.1.el8_4.x86_64
Architecture: x86-64
4. Imposta il fuso orario corretto del server di replica
devi anche avere il fuso orario corretto. Il server FreeIPA eseguirà anche il servizio NTP e il fuso orario corretto ti assicurerà di avere l'ora corretta sul server.
Utilizzare questo comando per impostare il fuso orario. Aggiorna al tuo fuso orario:
sudo timedatectl set-timezone Africa/Nairobi
Conferma che è configurato bene:
$ timedatectl
Local time: Fri 2021-11-12 20:24:33 EAT
Universal time: Fri 2021-11-12 17:24:33 UTC
RTC time: Fri 2021-11-12 17:24:31
Time zone: Africa/Nairobi (EAT, +0300)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
5. Disabilita SELinux
Se non vuoi configurare SELinux, possiamo metterlo in modalità permissiva.
Apri il file di configurazione di SELinux usando il tuo editor di testo preferito
sudo vim /etc/selinux/config
Individua la seguente riga:
SELINUX=enforcing
Modifica il valore in permisive
:
SELINUX=permisive
Esegui anche il comando seguente per impostare la modalità permissiva senza riavvio:
sudo setenforce 0
6. Installa e configura il client FreeIPA
Installa i pacchetti del client FreeIPA usando questo comando.
sudo dnf module -y install idm:DL1/client
configurare il client con la specifica del server FreeIPA e del nome di dominio
sudo ipa-client-install --server=ipa.citizix.com --domain ipa.citizix.com
Per ulteriori informazioni su come configurare il client, consulta questa guida qui.
7. Configura il server FreeIPA
Su FreeIPA Master Host, aggiungi un host di replica al gruppo:ipaservers
. L'host paster deve risolvere la risoluzione dell'indirizzo nell'host di replica.
Conferma la raggiungibilità
$ ping ipa-replica.citizix.com
PING ipa-replica.citizix.com (10.2.40.72) 56(84) bytes of data.
64 bytes from ipa-replica.citizix.com (10.2.40.72): icmp_seq=1 ttl=64 time=1.42 ms
64 bytes from ipa-replica.citizix.com (10.2.40.72): icmp_seq=2 ttl=64 time=0.279 ms
^C
--- ipa-replica.citizix.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1002ms
rtt min/avg/max/mdev = 0.279/0.849/1.419/0.570 ms
Questa operazione richiede l'accesso come amministratore. Innanzitutto, ottieni un ticket Kerberos.
kinit admin
Quindi ora puoi aggiungere l'host agli ipaservers
gruppo ospitante:
ipa hostgroup-add-member ipaservers --hosts ipa-replica.citizix.com
Questo è l'output sul mio server
$ ipa hostgroup-add-member ipaservers --hosts ipa-replica.citizix.com
Host-group: ipaservers
Description: IPA server hosts
Member hosts: ipa.citizix.com, ipa-replica.citizix.com
-------------------------
Number of members added 1
-------------------------
Puoi confermare che la replica è stata aggiunta nell'interfaccia utente Web di FreeIPA.
Se hai il firewall installato e abilitato, aggiungi il servizio di replica:
firewall-cmd --add-service=freeipa-replication
firewall-cmd --runtime-to-permanent
8. Configura sull'host del server di replica
Con tutto impostato, non possiamo configurare la replica. Per prima cosa installa il pacchetto FreeIPA Server.
sudo dnf module install -y idm:DL1/server
Se hai firewalld installato e firewalld in esecuzione, consenti i servizi:
firewall-cmd --add-service={freeipa-ldap,freeipa-ldaps,dns,ntp,freeipa-replication}
firewall-cmd --runtime-to-permanent
Ora imposta la replica usando questo comando:
sudo ipa-replica-install
Questo è l'output sul mio server
$ sudo ipa-replica-install
Run connection check to master
Connection check OK
Disabled p11-kit-proxy
Configuring directory server (dirsrv). Estimated time: 30 seconds
[1/38]: creating directory server instance
[2/38]: tune ldbm plugin
[3/38]: adding default schema
[4/38]: enabling memberof plugin
[5/38]: enabling winsync plugin
[6/38]: configure password logging
[7/38]: configuring replication version plugin
[8/38]: enabling IPA enrollment plugin
[9/38]: configuring uniqueness plugin
[10/38]: configuring uuid plugin
[11/38]: configuring modrdn plugin
[12/38]: configuring DNS plugin
[13/38]: enabling entryUSN plugin
[14/38]: configuring lockout plugin
[15/38]: configuring topology plugin
[16/38]: creating indices
[17/38]: enabling referential integrity plugin
[18/38]: configuring certmap.conf
[19/38]: configure new location for managed entries
[20/38]: configure dirsrv ccache and keytab
[21/38]: enabling SASL mapping fallback
[22/38]: restarting directory server
[23/38]: creating DS keytab
[24/38]: ignore time skew for initial replication
[25/38]: setting up initial replication
Starting replication, please wait until this has completed.
Update in progress, 3 seconds elapsed
Update succeeded
[26/38]: prevent time skew after initial replication
[27/38]: adding sasl mappings to the directory
[28/38]: updating schema
[29/38]: setting Auto Member configuration
[30/38]: enabling S4U2Proxy delegation
[31/38]: initializing group membership
[32/38]: adding master entry
[33/38]: initializing domain level
[34/38]: configuring Posix uid/gid generation
[35/38]: adding replication acis
[36/38]: activating sidgen plugin
[37/38]: activating extdom plugin
[38/38]: configuring directory to start on boot
Done configuring directory server (dirsrv).
Configuring Kerberos KDC (krb5kdc)
[1/5]: configuring KDC
[2/5]: adding the password extension to the directory
[3/5]: creating anonymous principal
[4/5]: starting the KDC
[5/5]: configuring KDC to start on boot
Done configuring Kerberos KDC (krb5kdc).
Configuring kadmin
[1/2]: starting kadmin
[2/2]: configuring kadmin to start on boot
Done configuring kadmin.
Configuring directory server (dirsrv)
[1/3]: configuring TLS for DS instance
[2/3]: importing CA certificates from LDAP
[3/3]: restarting directory server
Done configuring directory server (dirsrv).
Configuring the web interface (httpd)
[1/21]: stopping httpd
[2/21]: backing up ssl.conf
[3/21]: disabling nss.conf
[4/21]: configuring mod_ssl certificate paths
[5/21]: setting mod_ssl protocol list
[6/21]: configuring mod_ssl log directory
[7/21]: disabling mod_ssl OCSP
[8/21]: adding URL rewriting rules
[9/21]: configuring httpd
Nothing to do for configure_httpd_wsgi_conf
[10/21]: setting up httpd keytab
[11/21]: configuring Gssproxy
[12/21]: setting up ssl
[13/21]: configure certmonger for renewals
[14/21]: publish CA cert
[15/21]: clean up any existing httpd ccaches
[16/21]: configuring SELinux for httpd
[17/21]: create KDC proxy config
[18/21]: enable KDC proxy
[19/21]: starting httpd
[20/21]: configuring httpd to start on boot
[21/21]: enabling oddjobd
Done configuring the web interface (httpd).
Configuring ipa-otpd
[1/2]: starting ipa-otpd
[2/2]: configuring ipa-otpd to start on boot
Done configuring ipa-otpd.
Custodia uses 'ipa.citizix.com' as master peer.
Configuring ipa-custodia
[1/4]: Generating ipa-custodia config file
[2/4]: Generating ipa-custodia keys
[3/4]: starting ipa-custodia
[4/4]: configuring ipa-custodia to start on boot
Done configuring ipa-custodia.
Configuring certificate server (pki-tomcatd)
[1/2]: configure certmonger for renewals
[2/2]: Importing RA key
Done configuring certificate server (pki-tomcatd).
Configuring Kerberos KDC (krb5kdc)
[1/1]: installing X509 Certificate for PKINIT
Done configuring Kerberos KDC (krb5kdc).
Applying LDAP updates
Upgrading IPA:. Estimated time: 1 minute 30 seconds
[1/10]: stopping directory server
[2/10]: saving configuration
[3/10]: disabling listeners
[4/10]: enabling DS global lock
[5/10]: disabling Schema Compat
[6/10]: starting directory server
[7/10]: upgrading server
[8/10]: stopping directory server
[9/10]: restoring configuration
[10/10]: starting directory server
Done.
Finalize replication settings
Restarting the KDC
WARNING: The CA service is only installed on one server (ipa.citizix.com).
It is strongly recommended to install it on another server.
Run ipa-ca-install(1) on another master to accomplish this.
The ipa-replica-install command was successful
Dopo aver terminato di configurare la replica normalmente, è possibile trovare account utente esistenti o aggiungere nuovi account su Replication Host.
Per prima cosa, ottieni il biglietto kerberos:
$ kinit admin
Password for [email protected]:
Quindi trova gli utenti:
$ ipa user-find
---------------
3 users matched
---------------
User login: admin
Last name: Administrator
Home directory: /home/admin
Login shell: /bin/bash
Principal alias: [email protected], [email protected]
UID: 1063800000
GID: 1063800000
Account disabled: False
User login: etowett
First name: Eutychus
Last name: Towett
Home directory: /home/etowett
Login shell: /bin/bash
Principal name: [email protected]
Principal alias: [email protected]
Email address: [email protected]
UID: 1063800001
GID: 1063800001
Account disabled: False
User login: kip
First name: Kipkoech
Last name: Towett
Home directory: /home/kip
Login shell: /bin/bash
Principal name: [email protected]
Principal alias: [email protected]
Email address: [email protected]
UID: 1063800003
GID: 1063800003
Account disabled: False
----------------------------
Number of entries returned 3
----------------------------
9. Rimozione della replica di FreeIPA
Per rimuovere FreeIPA, prima disinstallarlo sul server utilizzando:
# ipa-server-install --uninstall
Quindi elimina il server dal gruppo ipaservers:
# ipa-replica-manage del ipa-replica.citizix.com --force
# ipa hostgroup-remove-member ipaservers --hosts ipa-replica.citizix.com
Abbiamo gestito con successo una replica di FreeIPA in questa guida.