background image

Administrowanie systemami komputerowymi 

11

Temat: Systemy autoryzacji

Zadania:

Data:

Autor:

Piotr Gębala

1 2 3 4 5 6 7 8 9 10 27 XI 2013

Autor:

Mateusz Macięga

E E M M M M M M M -

10:00-12:15

Przygotowanie ćwiczenia.

Uruchamiamy system ASK i logujemy się na konto administratora.

Zadanie 1.  PAM flagi kontrolne cz.1 (moduł: pam_nologin.so).

Sprawdzamy czy w pliku /etc/pam.d/login znajduje się reguła pozwalająca na zablokowanie

możliwości logowania zwykłym użytkownikom. Okazuje się, że taka istnieje i korzysta z flagi
kontrolnej requisite (niepowodzenie powoduje natychmiastowe przerwanie autentykacji).

Blokujemy   możliwość   logowania   tworząc   plik  /etc/nologin,  co   prowadzi   to   braku

możliwości   zalogowania   się   zwykłego   użytkownika.  Aby   proces   login   pytał   o   hasło,   należy
przenieść regułę auth na koniec pliku.

Zadanie 2. PAM flagi kontrolne cz.2 (moduł: pam_rootok.so).

Aby użytkownik root był zmuszony do podawania hasła w momencie wykonania polecenia 

su, należy z pliku /etc/pam.d/su usunąć regułę:

auth sufficient pam_rootok.so

Zadanie 3. PAM przykład autoryzacji – plik użytkowników (moduł: pam_listfile.so).

Tworzymy plik /etc/pam.d/ssh_users, w którym zapisujemy nazwy użytkowników (każda w

nowej   linii).   Następnie   otwieramy   plik  /etc/pam.d/sshd  i   dodajemy   w   nim   regułę   autentykacji
wykorzystującą moduł  pam_listfile.so. Wynikiem tych działań jest brak możliwości (sense=deny)
lub zezwolenie (sense=allow) na zalogowanie się przez ssh użytkownikom wymienionym w pliku
ssh_users.

Zadanie 4. PAM przykład autoryzacji – baza użytkowników (moduł: pam_pgsql.so).

Jako użytkownik postgres tworzymy tabelę konta (id, nazwa, hasło) i dodajemy do niej dane

użytkownika lab1 (1, lab1, lab1). Sprawdzamy czy dane zostały dodane poprawnie.

Modyfikujemy plik konfiguracyjny PAM dodając regułę wykorzystująca moduł  pam_pgsql.so, a
następnie dodajemy konto użytkownika lab3 do bazy danych i testujemy logowanie przez ssh.

Kolejnym   krokiem   jest   dodanie   szyfrowania   haseł   w   bazie   (zamiana   w   pliku

konfiguracyjnym pw_type=clear na pw_type=crypt, oraz dodanie wygenerowanego hasła do bazy
danych).

Zadanie 5. Kerberos – konfiguracja serwera KDC (Key Distribution Center).

Konfigurujemy pliki /etc/krb5.conf oraz /etc/krb5kdc/kdc.conf wg tego co zamieszczone jest 

w instrukcji. Następnie  tworzymy plik kadm5.acl z linią */admin@ITILAB *.

background image

Tworzymy początkową bazę danych Kerberos czego wynikiem jest:

Dodajemy   konto   administratora   programem   kadmin.local.   Aby
system zadziałał  uruchamiamy dwa demony  obsługujące  żądania  jego klientów (krb5-kdc  oraz
krb-admin-server).

Zadanie 6. Kerberos – pobieranie i niszczenie ticket'ów.

Analogicznie jak w poprzednim ćwiczeniu, przy pomocy programu kadmin, dodajemy konto

zwykłego   użytkownika   do   bazy   Kerberosa.   Logujemy   się   na   nowo   dodane   konto   i   używamy
programu  klist  do wyświetlenia listy ticket'ów (jest pusta). Następnie pobieramy tickety (kinit) i
znowu wyświetlamy (klist). Na końcu niszczymy wszystkie tickety poleceniem kdestroy.

Zadanie 7. Hasła jednorazowe.

Ustawiamy wartość opcji  ChallengeResponseAuthentication  w pliku  sshd_config  na  yes  i

uruchamiamy   serwer   ponownie,   a   pliku   konfiguracyjnym   PAM   dodajemy   wpis  auth   sufficient
pam_opie.so.  
Po   zalogowaniu   się   jako   użytkownik   lab1   tworzymy   mu   hasło   jednorazowe
poleceniem opiepasswd:

Następnie generujemy listę dziesięciu haseł i logujemy się dzięki nim
na konto użytkownika lab1 przez ssh.

Zadanie 8. Konfiguracja serwera OpenLDAP.

Sprawdzamy, czy serwer LDAP jest uruchomiony
oraz czy nasłuchuje na odpowiednim porcie.
Następnie sprawdzamy, czy możemy się połączyć
z serwerem LDAP:

Tworzymy   jednostki  People  i  Group  modyfikując   plik  ou.ldif
wg instrukcji   laboratoryjnej.   Do   umieszczenia   plików   na
serwerze   używamy   polecenia  slapadd,   natomiast   do
sprawdzenia,   czy   wpisy   zostały   utworzone,   korzystamy   z
polecenia ldapsearch.

Zadanie 9. Tworzenie kont użytkowników w Open LDAP.

Tworzymy   plik  /var/tmp/uzytkownik1.ldif  i   wypełniamy   go
wg instrukcji   laboratoryjnej.   Umieszczamy   go   na   serwerze,
ustalamy hasło nowego użytkownika (polecenie  ldappasswd) i
sprawdzamy, czy wpis został utworzony.

Wnioski.

Laboratorium udało się zrealizować. Były problemy z wykonaniem niektórych skryptów

jednak w końcu udało nam się je przeskoczyć. Wykonane zadania pozwoliły nam zgłębić naszą
wiedzę na temat systemów autoryzacji.