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:
- Hosts opzetten
- FreeIPA pakketten installeren
- Instellen FreeIPA Server
- Admin verifiëren
- Nieuwe gebruiker toevoegen
- 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
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.
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
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
En als de FreeIPA configuratie voltooid is, krijg je het volgende resultaat.
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
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.
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.
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
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.
Tenslotte is de FreeIPA installatie en configuratie op de CentOS 7 server met succes voltooid.