GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak nastavit server a klienta Kerberos na Ubuntu 18.04 LTS

Kerberos je síťový ověřovací protokol, který používá kryptografii se symetrickým klíčem a vyžaduje autorizaci od důvěryhodné třetí strany k ověřování aplikací klient-server. Původně jej vyvinul Massachusetts Institute of Technology (MIT) k ochraně síťových služeb poskytovaných projektem Athena.

V moderním světě se Kerberos často používá jako ověřovací služba třetí strany. To znamená, že všichni klienti důvěřují úsudku Kerberos o identitě jiných klientů.

V tomto tutoriálu vám ukážeme, jak nastavit ověřování Kerberos mezi dvěma servery Ubuntu 18.04. Nainstalujeme a nakonfigurujeme server Kerberos na server Ubuntu a poté nainstalujeme klienta Kerberos na druhý. Nakonec otestujeme autentizaci služby SSH se serverem Kerberos.

Předpoklady

  • Server Ubuntu 18.04
    • 10.10.10.15     krb5.ahmad.io   krb5
    • 10.10.10.16     client1.ahmad.io    client1
  • Oprávnění uživatele root

Co uděláme:

  1. Nastavit soubor FQDN
  2. Nainstalujte KDC Kerberos Server
  3. Konfigurace serveru Kerberos KDC
  4. Nainstalujte a nakonfigurujte klienta Kerberos
  5. Testování

Krok 1 – Nastavení FQDN

Nejprve musíme nakonfigurovat FQDN na serveru Kerberos a poté upravit soubor '/etc/hosts' serveru.

Změňte FQDN serveru Kerberos pomocí následujícího příkazu.

hostnamectl set-hostname krb5.ahmad.io

Poté upravte soubor '/etc/hosts' pomocí editoru vim.

vim /etc/hosts

Změňte IP adresu a FQDN za vlastní a vložte do ní.

10.10.10.15     krb5.ahmad.io   krb5

Uložit a zavřít.

Nyní otestujte pomocí příkazu 'ping' níže a ujistěte se, že FQDN je přeloženo na správnou IP adresu.

ping -c 3 $(hostname -f)

Krok 2 – Instalace serveru KDC Kerberos

Nyní nainstalujeme server Kerberos na server 'krb5' s IP adresou '10.10.10.15' a FQDN je 'krb5.ahmad.io'.

Nainstalujte server Kerberos pomocí následujícího příkazu apt.

sudo apt install krb5-kdc krb5-admin-server krb5-config -y

Během instalace budete dotázáni na Kerberos Realm, Kerberos server Realm a Admin server.

Ve výchozím nastavení bude Kerberos používat název domény serveru Kerberos jako REALM, 'AHMAD.IO '.

Server Kerberos je 'krb5.ahmad.io '.

A administrátorský server je stejný jako server Kerberos 'krb5.ahmad.io '.

Po dokončení instalace se zobrazí zpráva, že se nepodařilo spustit službu Kerberos. Je to v pořádku, protože konfiguraci provedeme v další fázi.

Krok 3 – Konfigurace serveru Kerberos KDC

Nyní vygenerujte nové silné hlavní heslo pro Kerberos REALM pomocí následujícího příkazu.

sudo krb5_newrealm

Zadejte své silné heslo a heslo REALM bude vygenerováno v souboru '/etc/krb5kdc/stash'.

Poté potřebujeme vytvořit administrátora (admin principál) pro server Kerberos KDC, přidat název hostitele serveru Kerberos do databáze a poté vytvořit tabulku klíčů pro server Kerberos.

Níže spusťte rozhraní příkazového řádku 'kadmin.local' pro příkaz správy Kerberos.

sudo kadmin.local

Vytvořte nového správce uživatele s názvem 'root'.

addprinc root/admin

Zadejte silné heslo pro „root“ administrátora.

Přidejte server Kerberos KDC do databáze a vytvořte soubor tabulky klíčů pro hostitele KDC.

addprinc -randkey host/krb5.ahmad.io
ktadd host/krb5.ahmad.io

Poté zavřete nástroj 'kadmin.local'.

quit

Dále musíme přidat princip 'root' admin do seznamu řízení přístupu úpravou souboru '/etc/krb5kdc/kadm5.acl'.

vim /etc/krb5kdc/kadm5.acl

Přidejte následující konfiguraci.

root/admin * 

Uložte a zavřete konfiguraci a restartujte službu Kerberos.

sudo systemctl restart krb5-admin-server.service

A konfigurace serveru KDC Kerberos byla dokončena.

Krok 4 – Instalace a konfigurace klienta Kerberos

V tomto kroku nainstalujeme klienta Kerberos na server Ubuntu s IP adresou '10.10.10.16' a názvem hostitele 'client1'.

– Konfigurace FQDN

Nakonfigurujte úplný název domény na klientském počítači pomocí následujícího příkazu.

hostnamectl set-hostname client1.ahmad.io

Poté upravte soubor '/etc/hosts' pomocí editoru vim.

vim /etc/hosts

Vložte server KDC Kerberos i klienta, jak je uvedeno níže.

10.10.10.15     krb5.ahmad.io   krb5
10.10.10.16     client1.ahmad.io    client1

Uložit a zavřít.

– Instalace klienta Kerberos

Nainstalujte klientské balíčky Kerberos spuštěním následujícího příkazu apt.

sudo apt install -y krb5-user libpam-krb5 libpam-ccreds auth-client-config

Během instalace budete dotázáni na Kerberos Realm, Kerberos server Realm a Admin server.

Ve výchozím nastavení bude Kerberos používat název domény serveru Kerberos jako REALM, 'AHMAD.IO '.

Server Kerberos je 'krb5.ahmad.io '.

A administrátorský server je stejný jako server Kerberos 'krb5.ahmad.io '.

A instalace klienta Kerberos je dokončena.

– Konfigurace klienta Kerberos

Z klientského počítače se připojte k serveru KDC Kerberos pomocí příkazu 'kadmin'.

kadmin

A budete požádáni o heslo principu 'root/admin'. Zadejte heslo a budete přihlášeni do administrativního systému KDC Kerberos.

Nyní přidejte FQDN klienta 'client1.ahmad.io' do databáze Kerberos a přidejte soubor keytab pro klienta.

addprinc -randkey host/client1.ahmad.io
ktadd host/client1.ahmad.io

Poté zavřete rozhraní administrace Kerberos kadmin.

quit

A konfigurace klienta Kerberos je dokončena.

Krok 5 – Testování

Pro tento testovací účel nakonfigurujeme autentizaci SSH pomocí Kerberos. Klientský počítač 'client1.ahmad.io' se připojí k serveru 'krb5.ahmad.io' prostřednictvím SSH s ověřováním Kerberos.

- Nastavte server 'krb5.ahmad.io'

Vytvořte nového uživatele systému s názvem 'ammar'.

useradd -m -s /bin/bash ammar

Přihlaste se do administrace KDC Kerberos a přidejte nového hlavního uživatele s názvem 'ammar'.

kadmin.local
addprinc ammar

Zavřete rozhraní správy Kerberos a upravte konfiguraci ssh '/etc/ssh/sshd_config'.

vim /etc/ssh/sshd_config

Odkomentujte 'GSSAPIAuthentication' a povolte ji změnou hodnoty na ''.

GSSAPIAuthentication yes
GSSAPICleanupCredentials yes

Uložte a zavřete konfiguraci a restartujte službu ssh.

systemctl restart sshd

– Nastavení počítače 'client1.ahmad.io'

Přidejte nového systémového uživatele 'ammar' na klientský počítač a přihlaste se do něj.

useradd -m -s /bin/bash ammar
su - ammar

Poté inicializujte uživatelský principál Kerberos 'ammar'.

kinit ammar

Zadejte heslo uživatele a poté zkontrolujte dostupný lístek pomocí následujícího příkazu.

klist

A zobrazí se vám následující výsledek.

Nyní se můžete připojit k serveru 'krb5.ahmad.io' pomocí ověřování SSH Kerberos.

ssh krb5.ahmad.io

A budete připojeni k serveru 'krb5.ahmad.io' prostřednictvím SSH s ověřováním Kerberos.

Níže je protokol SSH po přihlášení na server.

Nakonec byla úspěšně dokončena instalace a konfigurace serveru a klienta Kerberos na Ubuntu 18.04.


Ubuntu
  1. Jak nainstalovat NTP server a klienta na Ubuntu 18.04 LTS

  2. Jak nastavit Rsyslog Server na Ubuntu 18.04 LTS

  3. Jak nastavit server a klienta NFS na Ubuntu 20.04

  1. Jak nastavit a používat FTP server v Ubuntu Linux

  2. Jak nainstalovat a zabezpečit Redis na Ubuntu 18.04 LTS

  3. Jak nainstalovat a nastavit Plex Media Server Ubuntu 16.04

  1. Jak nastavit Jenkins Master and Slave na Ubuntu 18.04 LTS

  2. Jak nastavit IRedMail Server na Ubuntu 18.04 LTS

  3. Jak nainstalovat UrBackup Server a klienta na Ubuntu 20.04