Ricerca nel sito web

Installa e configura FreeIPA Server su Ubuntu 20.04|18.04|16.04


Benvenuti nella nostra guida su come installare FreeIPA Server sul sistema Linux Ubuntu 20.04|18.04|16.04. FreeIPA è un sistema di gestione delle identità gratuito e open source per la gestione centralizzata di utenti e computer nella rete. In questo articolo tratteremo sia l'installazione che la configurazione di FreeIPA Server su Ubuntu 20.04|18.04|16.04 Linux.

Ci sono alcuni prerequisiti per l'installazione di FreeIPA Server sul server Linux Ubuntu 20.04|18.04|16.04.

Prerequisiti di installazione

Prima di poter installare il server FreeIPA, assicurati che siano soddisfatti i seguenti requisiti minimi;

  • Un nome di dominio completo, ad esempio ipa.computingforgeeks.com.
  • Il nome host deve essere risolvibile. Se non disponi di un server DNS, puoi definire il tuo nome host nel file host.
  • 4GB di RAM
  • Spazio su disco 10 GB
  • 2 vCPU

Se utilizzi su Ubuntu 20.04 utilizza Esegui FreeIPA Server in contenitori Docker/Podman

Installa FreeIPA Server su Ubuntu 20.04|18.04|16.04

Bene, prima di iniziare l'installazione di FreeIPA Server su Ubuntu 20.04|18.04|16.04, facciamo un po' di preparazione interna.

Per gli utenti di Ubuntu 20.04 consigliamo di eseguire FreeIPA Server in Docker o Podman come spiegato nella guida di seguito :

  • Esegui il server FreeIPA nei contenitori Docker/Podman

Passaggio 1: imposta il nome host e il nome di dominio completo corretti

Imposta il nome host corretto per il tuo server

$ hostname -f
ipa

Questo non sembra bello. Rendiamolo pienamente qualificato.

sudo hostnamectl set-hostname ipa.example.com

Conferma il tuo nuovo nome host.

$ hostname -f
ipa.example.com

Aggiungi il tuo FQDN nel file /etc/hosts per renderlo risolvibile da qualsiasi luogo:

$ sudo vim /etc/hosts
192.168.58.121 ipa.example.com ipa

Passaggio 2: aggiorna il tuo server Ubuntu

Assicurati che il tuo sistema sia aggiornato.

sudo apt -y update
sudo apt -y upgrade

Si consiglia sempre di eseguire un riavvio dopo l'aggiornamento del server.

sudo reboot

Passaggio 3: installa rng-tools

Il server FreeIPA esegue molte operazioni crittografiche durante l'esecuzione e quindi la tua VM deve avere abbastanza entropia per garantire che le operazioni crittografiche FreeIPA non si blocchino. Per ottenere un'entropia elevata, installa e configura rng-tools.

sudo apt -y install rng-tools

Una volta completata l'installazione, modifica il file, /etc/default/rng-tools e imposta la sorgente di input per i dati casuali comes /dev/urandom aggiungendo la riga , HRNGDEVICE=/dev/urandom come mostrato;

$ sudo vim /etc/default/rng-tools
# This is a POSIX shell fragment
# Set to the input source for random data, leave undefined
# for the initscript to attempt auto-detection.  Set to /dev/null
# for the viapadlock and tpm drivers.

#HRNGDEVICE=/dev/hwrng
#HRNGDEVICE=/dev/null
HRNGDEVICE=/dev/urandom

Abilita e avvia gli strumenti rng:

sudo systemctl enable rng-tools
sudo systemctl start rng-tools

Ora che il nostro server è conforme ai prerequisiti, procediamo all'installazione effettiva di FreeIPA Server su Ubuntu 18.04/16.04 Linux.

Passaggio 4: installa FreeIPA Server su Ubuntu

Esegui il comando seguente per installare i pacchetti FreeIPA sul tuo server Ubuntu.

sudo apt -y install freeipa-server

A metà dell'installazione, ti verrà richiesto di inserire il realm Kerberos, i nomi host dei server Kerberos e il nome host del server amministrativo per il realm Kerberos.

Esempio :

  • Regno Kerberos: COMPUTINGFORGEEKS.COM
  • Nome host del server Kerberos: ipa.computingforgeeks.com
  • Nome host del server amministrativo: ipa.computingforgeeks.com

Se riscontri errori relativi a Kerberos e Tomcat, puoi tranquillamente ignorarli.

Al termine dell'installazione, esegui il comando di installazione di FreeIPA.

sudo ipa-server-install

Questo ti chiederà una serie di opzioni di configurazione e installerà FreeIPA. La prima richiesta riguarderà il DNS integrato di FreeIPA e poiché non abbiamo bisogno di questo servizio in questa configurazione, non possiamo configurarlo.

To accept the default options shown in square brackets, just press Enter key.…

Do you want to configure integrated DNS (BIND)? [no]: Enter

Enter the fully qualified domain name of the computer

on which you're setting up server software. Using the form

<hostname>.<domainname>

Example: master.example.com.

Server host name [ipa.computingforgeeks.com]: Enter
The domain name has been determined based on the host name.
Please confirm the domain name [computingforgeeks.com]: Enter
The kerberos protocol requires a Realm name to be defined.
This is typically the domain name converted to uppercase.
Please provide a realm name [COMPUTINGFORGEEKS.COM]: Enter
Certain directory server operations require an administrative user.
This user is referred to as the Directory Manager and has full access
to the Directory for system management tasks and will be added to the
instance of directory server created for IPA.
The password must be at least 8 characters long
Directory Manager password: <secure password>
Password (confirm): <secure password>
The IPA server requires an administrative user, named 'admin'.
This user is a regular system account used for IPA server administration.

IPA admin password: <secure password>
Password (confirm): <secure password>

The IPA Master Server will be configured with:

Hostname:    ipa.computingforgeeks.com
IP address(es): 192.168.58.121
Domain name: computingforgeeks.com
Realm name:  COMPUTINGFORGEEKS.COM

The CA will be configured with:

Subject DN:   CN=Certificate Authority,O=COMPUTINGFORGEEKS.COM
Subject base: O=COMPUTINGFORGEEKS.COM
Chaining:  self-signed


Continue to configure the system with these values? [no]: yes

...output cut…
Client configuration complete.

The ipa-client-install command was successful
==============================================================================

Setup complete

Next steps:

1.You must make sure these network ports are open: TCP Ports: * 80, 443: HTTP/HTTPS * 389, 636: LDAP/LDAPS * 88, 464: kerberos UDP Ports: * 88, 464: kerberos * 123: ntp 2 You can now obtain a kerberos ticket using the command: 'kinit admin' This ticket will allow you to use the IPA tools (e.g., ipa user-add) and the web user interface.

Ora che la configurazione del server FreeIPA è completa, apri le porte richieste per i vari servizi del server FreeIPA attraverso il firewall.

Se ufw non è in esecuzione, puoi abilitarlo e consentire tutte le connessioni in entrata a quanto sopra porti.

Passaggio 5: configura il firewall per FreeIPA

Abilita ufw se lo hai installato.

sudo ufw enable

Apri tutte le porte TCP richieste

for i in 80 443 389 636 88 464; do sudo ufw allow proto tcp from any to any port $i; done

Fai lo stesso per le porte UDP.

for i in 88 464 123; do sudo ufw allow proto udp from any to any port $i; done

Ricarica ufw dopo aver apportato le modifiche.

sudo ufw reload

Ora che le porte sono state aperte attraverso il firewall, verifichiamo il nostro server FreeIPA inizializzando un token Kerberos per l'utente amministratore.

Per la normale attività amministrativa è stato creato un account amministrativo admin. Quando viene richiesta la password, utilizzare quella specificata durante la fase di configurazione per l'utente amministratore.

$ sudo kinit admin
Password for [email :

Controlla i ticket Kerberos:

$ sudo klist 
Ticket cache: KEYRING:persistent:0:0
Default principal: [email 

Valid starting     Expires            Service principal
06/29/18 22:52:40  06/30/18 22:52:36  krbtgt/[email 

Se l'operazione ha esito positivo, prova a scoprire se l'amministratore dell'utente esiste sul server FreeIPA.

$ sudo ipa user-find admin

--------------
1 user matched
--------------

  User login: admin
  Last name: Administrator
  Home directory: /home/admin
  Login shell: /bin/bash
  Principal alias: [email 
  UID: 1506000000
  GID: 1506000000
  Account disabled: False
  ----------------------------
  Number of entries returned 1
  ----------------------------

Bene, sembra che vada tutto bene. Ora puoi eseguire qualsiasi attività IPA dal dashboard Web e dalla riga di comando. Per accedere alla dashboard web, utilizza l'indirizzo https://ipa.example.com

Il nome utente di accesso web è admin e la password è quella fornita durante la fase di configurazione per utente amministratore.

La vista successiva sarà simile alla seguente.

Informazioni sul server IPA:

Sei riuscito a installare FreeIPA Server su Ubuntu 20.04/18.04/16.04, la prossima configurazione è FreeIPA Client.

  • Configura il client FreeIPA su Ubuntu

Leggi anche:

  • Come reimpostare la password amministratore di FreeIPA come utente root

Articoli correlati: