FreeIPA Server installeren op CentOS 7

FreeIPA is een vrije en open-source Identity, Policy, and Audit (IPA) suite, gesponsord door RedHat. Het is een combinatie van een IPA oplossing voor Linux (Fedora), 389 Directory Server, MIT Kerberos, NTP, DNS Bind, Dogtag, Apache webserver, en Python.

FreeIPA wordt geleverd met het command-line beheerprogramma en een mooie web-UI interface die draait op Python en de Apache webserver. Momenteel bereik je de laatste stabiele versie 4.7.0.

In deze handleiding laten we je zien hoe je FreeIPA op CentOS 7 Server installeert en configureert. We gaan de nieuwste CentOS 7 server gebruiken met 2GB geheugen, en installeren de nieuwste stabiele versie van de FreeIPA pakketten.

Basis systeemeisen:

  • Aanbevolen geheugen RAM 2GB of meer
  • RHEL of CentOS 7 of Fedora met root rechten

Wat we zullen doen:

  1. Hosts opzetten
  2. FreeIPA pakketten installeren
  3. Instellen FreeIPA Server
  4. Admin verifiëren
  5. Nieuwe gebruiker toevoegen
  6. Test Inloggen

Stap 1 – Hosts instellen

Eerst gaan we de hostnaam van de server veranderen, en dan het bestand ‘/etc/hosts’ bewerken en de FQDN instellen.

Voer het volgende commando uit om de hostnaam van de server te veranderen.

hostnamectl set-hostname ipa.hakase-labs.io

Bewerk daarna het ‘/etc/hosts’ bestand van het systeem.

vim /etc/hosts

Voeg de volgende configuratie toe.

10.9.9.15   ipa.hakase-labs.io   ipa

Bewaar en sluit.

Log nu uit van de server en log weer in, controleer dan de hostname en FQDN met de volgende commando’s.

hostname
hostname -f

Controleer de hostnaam

Zo hebben we de CentOS 7 server met een hostnaam ‘ipa’ en de FQDN ‘ipa.hakase-labs.io’.

Stap 2 – Installeer FreeIPA pakketten

Na het instellen van de hostname en FQDN van de server, gaan we FreeIPA pakketten installeren uit de officiële CentOS repository.

Voer het volgende yum commando uit als root.

sudo yum install ipa-server bind-dyndb-ldap ipa-server-dns -y

Na de installatie van de pakketten gaan we nieuwe diensten aan de firewall toevoegen. Het belangrijkste is om http, https, ldap, Kerberos, en kpasswd diensten aan de firewall configuratie toe te voegen.

Voer het volgende bash commando uit en herlaad dan de firewalld dienst.

for SERVICES in ntp http https ldap ldaps kerberos kpasswd dns; do firewall-cmd --permanent --add-service=$SERVICES; done
firewall-cmd --reload

Het resultaat is dat FreeIPA pakketten geïnstalleerd zijn en dat alle FreeIPA diensten aan de firewall configuratie zijn toegevoegd.

Installeer FreeIPA

Stap 3 – FreeIPA server instellen

In deze stap gaan we de FreeIPA server en de DNS instellen. Daartoe biedt FreeIPA een interactieve command-line. Zo kunnen we de FreeIPA configuratie gemakkelijk beheren.

Voer het volgende commando uit om de FreeIPA server in te stellen.

ipa-server-install --setup-dns

Eerst moeten we de hostnaam van de server instellen, de domeinnaam, en de REALM naam. Typ je eigen domeinnaam en servernaam zoals hieronder, ga dan verder.

Server host name [ipa.hakase-labs.io]: ipa.hakase-labs.io
Please confirm the domain name [hakase-labs.io]: hakase-labs.io

Please provide a realm name [HAKASE-LABS.IO]: HAKASE-LABS.IO

Daarna moet je de directory manager en de FreeIPA admin wachtwoorden instellen. Typ je eigen inloggegevens en ga verder.

Directory Manager password: hakasemanager123
Password (confirm): hakasemanager123

IPA admin password: hakaseadmin123
Password (confirm): hakaseadmin123

FreeIPA server instellen

Typ vervolgens ‘Yes’ voor de DNS forwarder configuratie. Typ dan aanvullende resolver IP adressen en ga verder.

Do you want to configure DNS forwarders? [yes]: yes
Do you want to configure these servers as DNS forwarders? [yes]: yes

Enter an IP address for a DNS forwarder, or press Enter to skip: 1.1.1.1
Enter an IP address for a DNS forwarder, or press Enter to skip: 8.8.8.8
Enter an IP address for a DNS forwarder, or press Enter to skip: Press Enter

Typ ‘yes’ en ga verder om de ontbrekende reverse zone te zoeken en aan te maken.

Do you want to search for missing reverse zones? [yes]: yes

Nu wordt je gevraagd om de reverse zone van het FreeIPA server IP adres aan te maken. Typ ‘yes’ en ga verder.

Do you want to create reverse zone for IP 10.9.9.15 [yes]: yes
Please specify the reverse zone name [9.9.10.in-addr.arpa.]: Press Enter

En als laatste wordt je gevraagd om alle bovenstaande configuraties op het systeem toe te passen. Typ ‘yes’ en wacht op de FreeIPA configuratie.

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

Configuratie toepassen

En als de FreeIPA configuratie voltooid is, krijg je het volgende resultaat.

FreeIPA configuratie is voltooid

Stap 4 – Admin verifiëren

In dit stadium hebben we FreeIPA al ingesteld op de CentOS 7 server. Nu gaan we onze configuratie verifiëren.

Verifieer het Kerberos admin wachtwoord met het kinit commando.

kinit admin

Typ je admin wachtwoord en controleer of je geen foutmelding krijgt.

Controleer daarna of de admin gebruiker beschikbaar is op de FreeIPA database met het volgende commando.

ipa user-find admin

Verifieer Admin

Nu gaan we de FreeIPA admin web-UI verifiëren.

Open de web browser, typ je FreeIPA domeinnaam in de adresbalk. De mijne is:

https://ipa.hakase-labs.io/

En je krijgt de FreeIPA web-UI inlogpagina.

Inloggen op FreeIPA

Log in met de gebruiker ‘admin’ en het wachtwoord dat je bij stap 3 koos.

En je krijgt het FreeIPA admin dashboard. Met andere woorden, de FreeIPA installatie en configuratie op CentOS 7 is correct.

FreeIPA Dashboard

Stap 5 – Nieuwe gebruiker toevoegen

Voor dit voorbeeld maken we een nieuwe FreeIPA gebruiker aan met de naam ‘hiroyuki’. En natuurlijk kun je die vervangen door je eigen gebruiker. Probeer dan met die nieuwe gebruiker via SSH toegang te krijgen tot de server.

Bewerk voordat je begint de LDAP client configuratie om ‘create home directory’ in te schakelen. Voer het volgende commando hieronder uit.

sudo authconfig --enablemkhomedir --update

Maak nu de ‘hiroyuki’ aan door het onderstaande ipa commando uit te voeren.

ipa user-add hiroyuki  --first=Sawano --last=Hiroyuki [email protected]  --shell=/bin/bash --password

Typ je sterke wachtwoord.

Controleer daarna je gebruiker op het FreeIPA systeem. Verzeker je ervan dat je gebruiker op de server komt.

ipa user-find hiroyuki

Zoek een gebruiker

De nieuwe FreeIPA gebruiker is aangemaakt en we zijn klaar om te testen.

Stap 6 – Test inloggen

We doen een test om vanaf de lokale computer via SSH verbinding te maken met de FreeIPA server, en gebruiken daarvoor de gebruiker die we net bij stap 5 hebben aangemaakt, voor dit voorbeeld is dat ‘hiroyuki’.

Voer vanaf je lokale systeem het onderstaande ssh commando uit.

ssh [email protected]

Typ nu je wachtwoord. Als het klaar is, krijg je de melding password expired te zien, typ je huidige wachtwoord in om het te veranderen met het nieuwe wachtwoord.

Als resultaat ben je nu op je thuismap en log je met succes in op de server met het FreeIPA gebruik dat we zojuist gemaakt hebben.

Test Inloggen

Tenslotte is de FreeIPA installatie en configuratie op de CentOS 7 server met succes voltooid.

Links