Jak skonfigurować serwer i klienta Kerberos na Ubuntu 18.04 LTS

Kerberos to protokół uwierzytelniania sieciowego, który wykorzystuje symetryczną kryptografię klucza i wymaga autoryzacji od zaufanej strony trzeciej w celu uwierzytelnienia aplikacji klient-serwer. Pierwotnie został opracowany przez Massachusetts Institute of Technology (MIT) w celu ochrony usług sieciowych świadczonych w ramach projektu Athena.

we współczesnym świecie Kerberos jest często używany jako usługa uwierzytelniania stron trzecich. Oznacza to, że wszyscy klienci ufają osądowi Kerberosa na temat tożsamości innych klientów.

w tym samouczku pokażemy, jak skonfigurować uwierzytelnianie Kerberos między dwoma serwerami Ubuntu 18.04. Zainstalujemy i skonfigurujemy Serwer Kerberos na serwerze Ubuntu, a następnie zainstalujemy klienta Kerberos na drugim. Na koniec przetestujemy uwierzytelnianie usługi SSH z serwerem Kerberos.

  • Ubuntu server 18.04
    • 10.10.10.15 krb5.ahmad.io krb5
    • 10.10.10.16 client1.ahmad.io KLIENT1
  • uprawnienia roota

co zrobimy:

  1. Ustaw plik FQDN
  2. Zainstaluj serwer KDC Kerberos
  3. Skonfiguruj serwer KDC Kerberos
  4. Zainstaluj i skonfiguruj klienta Kerberos
  5. testowanie

Krok 1 – Skonfiguruj FQDN

przede wszystkim musimy skonfigurować FQDN na serwerze Kerberos, a następnie edytować plik '/etc/hosts’ serwera.

Zmień FQDN serwera Kerberos za pomocą następującego polecenia.

hostnamectl set-hostname krb5.ahmad.io

następnie Edytuj plik '/etc/hosts’ za pomocą edytora vim.

vim /etc/hosts

Zmień swój adres IP i FQDN i wklej do niego.

10.10.10.15 krb5.ahmad.io krb5

Zapisz i zamknij.

teraz Przetestuj za pomocą polecenia’ ping ’ poniżej i upewnij się, że FQDN jest rozwiązany pod właściwym adresem IP.

ping -c 3 $(hostname -f)

Krok 2-Zainstaluj serwer KDC Kerberos

teraz zainstalujemy Serwer Kerberos na serwerze 'krb5′ o adresie IP '10.10.10.15′ i FQDN jest 'krb5.ahmad.io’.

Zainstaluj serwer Kerberos używając następującego polecenia apt.

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

podczas instalacji zostaniesz zapytany o Serwer Kerberos Realm, Serwer Kerberos Realm I Serwer administracyjny.

domyślnie Kerberos użyje nazwy domeny serwera Kerberos jako domeny, „AHMAD.IO’.

Serwer Kerberos jest „krb5.ahmad.io’.

a serwer admina taki sam jak serwer Kerberos 'krb5.ahmad.io’.

po zakończeniu instalacji pojawi się komunikat, że usługa Kerberos nie została uruchomiona. Jest dobrze, ponieważ skonfigurujemy na następnym etapie.

Krok 3-Skonfiguruj serwer KDC Kerberos

teraz Wygeneruj nowe silne hasło główne dla serwera Kerberos za pomocą następującego polecenia.

sudo krb5_newrealm

Wpisz swoje silne hasło, a hasło REALM zostanie wygenerowane w pliku’/etc/krb5kdc / stash’.

następnie musimy utworzyć użytkownika administratora (Admin principal) dla serwera KDC Kerberos, dodać nazwę hosta serwera Kerberos do bazy danych, a następnie utworzyć tablicę kluczy dla serwera Kerberos.

Uruchom ” kadmin.local ’ interfejs wiersza poleceń dla polecenia administracyjnego Kerberos poniżej.

sudo kadmin.local

Utwórz nowego administratora użytkownika o nazwie 'root’.

addprinc root/admin

wpisz silne hasło dla głównego administratora 'root’ .

Dodaj serwer KDC Kerberos do bazy danych i utwórz plik keytab dla hosta KDC.

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

następnie zamknij 'kadmin.lokalna ” użyteczność.

quit

następnie musimy dodać zasadę administratora ’ root 'do listy kontroli dostępu, edytując’ /etc/krb5kdc/kadm5.plik acl.

vim /etc/krb5kdc/kadm5.acl

dodaj następującą konfigurację.

root/admin * 

Zapisz i zamknij konfigurację, a następnie uruchom ponownie usługę Kerberos.

sudo systemctl restart krb5-admin-server.service

i konfiguracja serwera KDC Kerberos została zakończona.

Krok 4-Zainstaluj i skonfiguruj klienta Kerberos

w tym kroku zainstalujemy klienta Kerberos na serwerze Ubuntu z adresem IP '10.10.10.16′ i nazwą hosta 'client1′.

– Skonfiguruj FQDN

Skonfiguruj FQDN na komputerze klienckim za pomocą następującego polecenia.

hostnamectl set-hostname client1.ahmad.io

następnie Edytuj plik '/etc/hosts’ za pomocą edytora vim.

vim /etc/hosts

Wklej zarówno serwer KDC Kerberos, jak i klienta, jak poniżej.

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

Zapisz i zamknij.

– zainstaluj klienta Kerberos

zainstaluj pakiety klienta Kerberos, uruchamiając następujące polecenie apt.

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

podczas instalacji zostaniesz zapytany o Serwer Kerberos Realm, Serwer Kerberos Realm I Serwer administracyjny.

domyślnie Kerberos będzie używał nazwy domeny serwera Kerberos jako domeny, „AHMAD.IO’.

Serwer Kerberos jest „krb5.ahmad.io’.

a serwer admina taki sam jak serwer Kerberos 'krb5.ahmad.io”.

i instalacja dla klienta Kerberos jest zakończona.

– Skonfiguruj klienta Kerberos

z maszyny klienckiej, połącz się z serwerem KDC Kerberos za pomocą polecenia 'kadmin’.

kadmin

i zostaniesz poproszony o hasło Zasady 'root / admin’. Wpisz hasło, a zostaniesz zalogowany do systemu administracyjnego KDC Kerberos.

teraz dodaj klienta FQDN 'client1.ahmad.io’ do bazy danych Kerberos i dodać plik keytab dla klienta.

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

następnie zamknij interfejs administracyjny kadmin Kerberos.

quit

i konfiguracja klienta Kerberos jest zakończona.

Krok 5-testowanie

w tym celu skonfigurujemy uwierzytelnianie SSH za pomocą Kerberosa. Maszyna klienta „client1.ahmad.io’ połączy się z serwerem 'krb5.ahmad.io przez SSH z uwierzytelnieniem Kerberos.

– Konfiguracja „krb5.ahmad.io’ Serwer

tworzy nowego użytkownika systemowego o nazwie 'ammar’.

useradd -m -s /bin/bash ammar

Zaloguj się do administracji KDC Kerberos i dodaj nowego głównego użytkownika o nazwie 'ammar’.

kadmin.local
addprinc ammar

Zamknij interfejs administracyjny Kerberos i Edytuj konfigurację ssh '/etc/ssh/sshd_config’.

vim /etc/ssh/sshd_config

odkomentuj „GSSAPIAuthentication” i włącz ją, zmieniając wartość na””.

GSSAPIAuthentication yes
GSSAPICleanupCredentials yes

Zapisz i zamknij konfigurację, a następnie uruchom ponownie usługę ssh.

systemctl restart sshd

– Setup „client1.ahmad.io’ Maszyna

Dodaj nowego użytkownika systemowego 'ammar’ na maszynie klienta i zaloguj się do niego.

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

następnie zainicjuj polecenie użytkownika Kerberos „ammar”.

kinit ammar

wpisz hasło użytkownika, a następnie sprawdź dostępne zgłoszenie za pomocą następującego polecenia.

klist

i pojawi się następujący wynik.

teraz możesz podłączyć „krb5.ahmad.io” serwer wykorzystujący uwierzytelnianie SSH Kerberos.

ssh krb5.ahmad.io

i zostaniesz połączony z „krb5.ahmad.io’ serwer przez SSH z uwierzytelnianiem Kerberos.

Poniżej znajduje się Log SSH po zalogowaniu się na serwer.

wreszcie instalacja i konfiguracja serwera i klienta Kerberos na Ubuntu 18.04 została zakończona pomyślnie.

Write a Comment

Twój adres e-mail nie zostanie opublikowany.