Zasady laboratorium

Transkrypt

Zasady laboratorium
Zasady laboratorium
Witaj na laboratorium z systemów SSO pod linuxem. Do Twojej dyspozycji są trzy maszyny
wirtualne pod linuxem (X = numer Twojej grupy).
-
kdc.labX.radkowski.pro (serwer MIT Kerberos v5)
server.labX.radkowski.pro (server uslug kerberosowych)
client.labX.radkowski.pro (klient uslug kerberosowych)
W poniższym tekście znajdziesz polecenia do wykonania oraz wskazówki, jak je wykonać.
Wszystkie komendy wprowadzane są z konsoli. Lab zbudowany jest w oparciu o sieć IPv6
(IPv4 będzie używana tylko na początku w celu zalogowania się do maszyn i ustawienia
poprawnej adresacji IPv6.
1. Zadanie 1: Konfiguracja sieci
W tym zadaniu należy zalogować się na wszystkie trzy maszyny, sprawdzić poprawność
konfiguracji IPv4/IPv6 i (w razie jakichkolwiek problemów) przeprowadzić ponowną,
poprawna konfigurację.
Tabela adresacji znajduje się poniżej:
Grupa
FQDN
IPv4
DNS v4
IPv6
DNS v6
1
kdc.lab1.radkowski.pro
10.0.97.111/24
10.0.97.200
2001:4070:11:3080::111/64
2001:4070:11:3080::cafe
1
server.lab1.radkowski.pro
10.0.97.112/24
10.0.97.200
2001:4070:11:3080::112/64
2001:4070:11:3080::cafe
1
client.lab1.radkowski.pro
10.0.97.113/24
10.0.97.200
2001:4070:11:3080::113/64
2001:4070:11:3080::cafe
2
kdc.lab2.radkowski.pro
10.0.97.121/24
10.0.97.200
2001:4070:11:3080::121/64
2001:4070:11:3080::cafe
2
server.lab2.radkowski.pro
10.0.97.122/24
10.0.97.200
2001:4070:11:3080::122/64
2001:4070:11:3080::cafe
2
client.lab2.radkowski.pro
10.0.97.123/24
10.0.97.200
2001:4070:11:3080::123/64
2001:4070:11:3080::cafe
3
kdc.lab3.radkowski.pro
10.0.97.131/24
10.0.97.200
2001:4070:11:3080::131/64
2001:4070:11:3080::cafe
3
server.lab3.radkowski.pro
10.0.97.132/24
10.0.97.200
2001:4070:11:3080::132/64
2001:4070:11:3080::cafe
3
client.lab3.radkowski.pro
10.0.97.133/24
10.0.97.200
2001:4070:11:3080::133/64
2001:4070:11:3080::cafe
4
kdc.lab4.radkowski.pro
10.0.97.141/24
10.0.97.200
2001:4070:11:3080::141/64
2001:4070:11:3080::cafe
4
server.lab4.radkowski.pro
10.0.97.142/24
10.0.97.200
2001:4070:11:3080::142/64
2001:4070:11:3080::cafe
4
client.lab4.radkowski.pro
10.0.97.143/24
10.0.97.200
2001:4070:11:3080::143/64
2001:4070:11:3080::cafe
5
kdc.lab5.radkowski.pro
10.0.97.151/24
10.0.97.200
2001:4070:11:3080::151/64
2001:4070:11:3080::cafe
5
server.lab5.radkowski.pro
10.0.97.152/24
10.0.97.200
2001:4070:11:3080::152/64
2001:4070:11:3080::cafe
5
client.lab5.radkowski.pro
10.0.97.153/24
10.0.97.200
2001:4070:11:3080::153/64
2001:4070:11:3080::cafe
6
kdc.lab6.radkowski.pro
10.0.97.161/24
10.0.97.200
2001:4070:11:3080::161/64
2001:4070:11:3080::cafe
6
server.lab6.radkowski.pro
10.0.97.162/24
10.0.97.200
2001:4070:11:3080::162/64
2001:4070:11:3080::cafe
6
client.lab6.radkowski.pro
10.0.97.163/24
10.0.97.200
2001:4070:11:3080::163/64
2001:4070:11:3080::cafe
7
kdc.lab7.radkowski.pro
10.0.97.171/24
10.0.97.200
2001:4070:11:3080::171/64
2001:4070:11:3080::cafe
7
server.lab7.radkowski.pro
10.0.97.172/24
10.0.97.200
2001:4070:11:3080::172/64
2001:4070:11:3080::cafe
7
client.lab7.radkowski.pro
10.0.97.173/24
10.0.97.200
2001:4070:11:3080::173/64
2001:4070:11:3080::cafe
8
kdc.lab8.radkowski.pro
10.0.97.181/24
10.0.97.200
2001:4070:11:3080::181/64
2001:4070:11:3080::cafe
8
server.lab8.radkowski.pro
10.0.97.182/24
10.0.97.200
2001:4070:11:3080::182/64
2001:4070:11:3080::cafe
8
client.lab8.radkowski.pro
10.0.97.183/24
10.0.97.200
2001:4070:11:3080::183/64
2001:4070:11:3080::cafe
9
kdc.lab9.radkowski.pro
10.0.97.191/24
10.0.97.200
2001:4070:11:3080::191/64
2001:4070:11:3080::cafe
9
server.lab9.radkowski.pro
10.0.97.192/24
10.0.97.200
2001:4070:11:3080::192/64
2001:4070:11:3080::cafe
9
client.lab9.radkowski.pro
10.0.97.193/24
10.0.97.200
2001:4070:11:3080::193/64
2001:4070:11:3080::cafe
10
kdc.lab10.radkowski.pro
10.0.97.211/24
10.0.97.200
2001:4070:11:3080::211/64
2001:4070:11:3080::cafe
10
server.lab10.radkowski.pr
o
10.0.97.212/24
10.0.97.200
2001:4070:11:3080::212/64
2001:4070:11:3080::cafe
10
client.lab10.radkowski.pro
10.0.97.213/24
10.0.97.200
2001:4070:11:3080::213/64
2001:4070:11:3080::cafe
Sprawdzenie poprawności konfiguracji interfejsu wykonuje się poleceniem:
[student@kdc ~]$ ​sudo ip a
Zmiana nazwy hosta dokonuje się poleceniem:
[student@kdc ~]$ ​sudo hostnamectl set-hostname <nazwa_hosta>
Zmiana konfiguracji interfejsów wykonuje się za pomocą polecenia nmcli:
[student@kdc ~]$ ​sudo nmcli connection modify <nazwa_interfejsu> \
ipv6.method.manual ipv6.address <adres/maska> ipv6.dns <dns_v6>
Aby sprawdzic poprawnosc wykonania zadania, nalezy wykonac ping6 z wszystkich trzech
maszyn wirtualnych na maszyne infra.radkowski.pro:
ping6 infra.radkowski.pro
Zadanie 2 konfiguracja serwera Kerberos
W tym zadaniu nalezy skonfigurowac server MIT Kerberos (wszystkie zadania wykonywane
sa na hoscie kdc.labX.radkowski.pro
a. Zainstaluj serwer MIT Kerberos przy pomocy polecenia yum:
sudo yum install krb5-server
b. wyedytuj/dodaj następujące linie do pliku /etc/krb5.conf Pamiętaj, aby za X
podstawić numer swojej grupy. Wielkość liter ma znaczenie !!!
default_realm = LABX.RADKOWSKI.PRO
[realms]
LABX.RADKOWSKI.PRO = {
kdc = kdc.labX.radkowski.pro
admin_server = kdc.labX.radkowski.pro
}
[domain_realm]
.example.com = EXAMPLE.COM
example.com = EXAMPLE.COM
.labX.radkowski.pro = LABX.RADKOWSKI.PRO
labX.radkowski.pro = LABX.RADKOWSKI.PRO
c. Wyedytuj plik /var/kerberos/krb5kdc/kadm5.acl wprowadzając w nim odpowiednie
ACLe (pamiętaj o poprawnym numerze grupy)
*/[email protected] *
*/[email protected]
*
d. Wyedytuj plik /var/kerberos/krb5kdc/kdc.conf i ustaw w nim poprawny parametr
REALM
(...)
[realms]
​EXAMPLE.COM = {
​LAB1.RADKOWSKI.PRO = {
#master_key_type = aes256-cts
(...)
e. Za pomocą polecenia sudo kdb5_util stworz plik bazy danych Kerberosa i plik stash.
System poprosi o podanie Master Password. Wprowadź: 1
​ 23456
[student@kdc ~]$ ​sudo kdb5_util create -s
Loading random data
Initializing database '/var/kerberos/krb5kdc/principal' for realm 'LAB1.RADKOWSKI.PRO',
master key name 'K/[email protected]'
You will be prompted for the database Master Password.
It is important that you NOT FORGET this password.
Enter KDC database master key:
Re-enter KDC database master key to verify:
[student@kdc ~]$
f.
Jeżeli wszystko zostało skonfigurowane poprawnie, powinieneś być w stanie
uruchomić server Kerberosa oraz server umożliwiający zdalne administrowanie
Kerberosem
[student@kdc ~]$ ​sudo systemctl start krb5kdc
[student@kdc ~]$ ​sudo systemctl start kadmin
g. Ustaw, aby obydwa demony uruchamiały się automatycznie podczas startu systemu
[student@kdc ~]$ ​sudo systemctl enable krb5kdc
[student@kdc ~]$ ​sudo systemctl enable kadmin
h. Za pomocą polecenia systemctl status <usługa> sprawdź, stan usług
[student@kdc ~]$ ​sudo systemctl status krb5kdc
(...)
krb5kdc.service - Kerberos 5 KDC
Loaded: loaded (/usr/lib/systemd/system/krb5kdc.service; ​enabled​; vendor preset:
disabled)
​Active: active (running)​ since Thu 2016-12-29 12:45:58 GMT; 11min ago
(...)
[student@kdc ~]$ ​sudo systemctl status kadmin
i.
Za pomocą polecenia kadmin.local, dodaj uprzywilejowane konto root/admin do
systemu Kerberos. Ustaw dla niego haslo: k
​ erberosadmin
[student@kdc ~]$ ​sudo kadmin.local
Authenticating as principal root/[email protected] with password.
kadmin.local: ​addprinc root/admin
WARNING: no policy specified for root/[email protected]; defaulting to no
policy
Enter password for principal "root/[email protected]":
Re-enter password for principal "root/[email protected]":
Principal "root/[email protected]" created.
kadmin.local: ​quit
[student@kdc ~]$
Zadanie 3: Tworzenie kont użytkowników
Na maszynach server.labX.radkowski.pro oraz client.labX.radkowski.pro zostaly
skonfigurowane dwa konta uzytkownikow: tom i jane (z haslem: ​haslo​). W niniejszym
zadaniu stworzymy dla nich odpowiednie pryncypia w strukturze kerberosa. Do tego celu
wykorzystywać będziemy serwer zdalnego zarządzania kadmin, uruchomiony w poprzednich
zadaniach. Uwaga - zadania to wykonujemy na hoscie client, sprawdzamy z pozycji hosta
server
a. zaloguj się do hosta za pomocą ssh
ssh client.labX.radkowski.pro -l student
b. Za pomocą polecenia yum, zainstaluj niezbędne pakiety:
sudo yum install krb5-workstation pam_krb5
c. Wyedytuj plik klienta /etc/krb5.conf zgodnie z poniższymi wytycznymi.Pamiętaj, aby
za X podstawić numer swojej grupy. Wielkość liter ma znaczenie !!!
default_realm = LABX.RADKOWSKI.PRO
[realms]
LABX.RADKOWSKI.PRO = {
kdc = kdc.labX.radkowski.pro
admin_server = kdc.labX.radkowski.pro
}
[domain_realm]
.example.com = EXAMPLE.COM
example.com = EXAMPLE.COM
.labX.radkowski.pro = LABX.RADKOWSKI.PRO
labX.radkowski.pro = LABX.RADKOWSKI.PRO
d. Za pomocą polecenia kadmin, zaloguj się zdanie do serwera MIT Kerberos (hasło:
kerberosadmin) i dodaj dwóch użytkowników (tom, jane). Dla każdego z
użytkowników podaj hasło: k
​ erberos
[student@client ~]$ ​sudo kadmin
Authenticating as principal root/[email protected] with password.
Password for root/[email protected]:
kadmin: ​addprinc tom
WARNING: no policy specified for [email protected]; defaulting to no policy
Enter password for principal "[email protected]":
Re-enter password for principal "[email protected]":
Principal "[email protected]" created.
kadmin: ​addprinc jane
WARNING: no policy specified for [email protected]; defaulting to no policy
Enter password for principal "[email protected]":
Re-enter password for principal "[email protected]":
Principal "[email protected]" created.
kadmin: ​quit
[student@client ~]$
e. za pomocą polecenia authconfig-tui zmodyfikuj uwierzytelnianie na kliencie zgodnie
z poniższymi screenami:
[student@client ~]$ ​sudo authconfig-tui
Na następnym screenie należy wprowadzić poprawny realm oraz nazwy hosta kdc.
Pamiętaj, że w swojej nazwie zawierają on numer grupy (poniższy screen pokazuje
poprawne ustawienia dla grupy pierwszej):
UWAGA - dalsza czesc cwiczenia wykonywana jest na hoscie
server.labX.radkowski.pro
f.
zaloguj się na server
[student@client ~]$ ​ssh server
student@server's password:
Last login: Thu Dec 29 20:24:41 2016 from client.lab1.radkowski.pro
[student@server ~]$
g. zaloguj się na hosta client, użytkownikiem t​ om​ z haslem h
​ aslo​. Następnie przy
pomocy polecenia ​klist​ wylistuj tickety kerberosowe
[student@server ~]$ ​ssh client -l tom
tom@client's password:
Last login: Thu Dec 29 20:39:18 2016 from server.lab1.radkowski.pro
[tom@client ~]$ ​klist
klist: Credentials cache keyring 'persistent:1001:krb_ccache_D24dBuw' n
​ ot found
[tom@client ~]$ ​exit
logout
Connection to client closed.
[student@server ~]$
h. zaloguj się jeszcze raz na hosta client, tym razem używając hasła ​kerberos
(użytkownik tom). Zaobserwuj różnice w poleceniu ​klist i postaraj ją skomentować.
Na koniec usuń ticket za pomocą polecenia k
​ destroy​ i wyloguj się z hosta
[student@server ~]$ ​ssh client -l tom
tom@client's password:
Last login: Thu Dec 29 20:39:32 2016 from server.lab1.radkowski.pro
[tom@client ~]$ ​klist
Ticket cache: KEYRING:persistent:1001:krb_ccache_Akdx1ra
Default principal: [email protected]
Valid starting
Expires
Service principal
29/12/16 20:41:00 30/12/16 20:41:00
krbtgt/[email protected]
[tom@client ~]$ ​kdestroy
[tom@client ~]$ ​exit
logout
Connection to client closed.
[student@server ~]$
Zadanie 4 Tworzenie host principals
Principals można tworzyć nie tylko dla użytkowników (jak w zadaniu powyższym, ale również
dla hostów i usług. W niniejszym zadaniu zajmiemy się drugim przypadkiem.
a. zaloguj się do hosta server za pomocą ssh
ssh server.labX.radkowski.pro -l student
b. Za pomocą polecenia yum, zainstaluj niezbędne pakiety:
sudo yum install krb5-workstation pam_krb5
c. Wyedytuj plik klienta /etc/krb5.conf zgodnie z poniższymi wytycznymi.Pamiętaj, aby
za X podstawić numer swojej grupy. Wielkość liter ma znaczenie !!!
default_realm = LABX.RADKOWSKI.PRO
[realms]
LABX.RADKOWSKI.PRO = {
kdc = kdc.labX.radkowski.pro
admin_server = kdc.labX.radkowski.pro
}
[domain_realm]
.example.com = EXAMPLE.COM
example.com = EXAMPLE.COM
.labX.radkowski.pro = LABX.RADKOWSKI.PRO
labX.radkowski.pro = LABX.RADKOWSKI.PRO
d. za pomocą polecenia authconfig-tui zmodyfikuj uwierzytelnianie na kliencie zgodnie
z poniższymi screenami:
[student@client ~]$ ​sudo authconfig-tui
Na następnym screenie należy wprowadzić poprawny realm oraz nazwy hosta kdc.
Pamiętaj, że w swojej nazwie zawierają on numer grupy (poniższy screen pokazuje
poprawne ustawienia dla grupy pierwszej):
e. W celu sprawdzenia poprawności kroków a-e należy zalogować się na server z
clienta używając użytkownika jane i hasła kerberos. Polecenie ​klist powinno pokazać
poprawny i ważny ticket
[student@client ~]$ ​ssh server -l jane
jane@server's password:
Last login: Thu Dec 29 20:52:14 2016 from client.lab1.radkowski.pro
[jane@server ~]$ ​klist
Ticket cache: KEYRING:persistent:1002:krb_ccache_Q4YUslD
Default principal: [email protected]
Valid starting
Expires
Service principal
29/12/16 20:57:51 30/12/16 20:57:51
krbtgt/[email protected]
[jane@server ~]$ ​kdestroy
[jane@server ~]$ ​exit
logout
Connection to server closed.
[student@client ~]$
f.
zaloguj sie na server
[student@client ~]$ ​ssh server
g. Za pomoca narzedzia kadmin utworz principal dla hosta server.labX.radkowski.pro a
nastepnie wyeksportuj go do lokalnego pliku keytab
[student@server ~]$ ​sudo kadmin
[sudo] password for student:
Authenticating as principal root/[email protected] with password.
Password for root/[email protected]:
kadmin: ​ addprinc -randkey host/server.lab1.radkowski.pro
WARNING: no policy specified for
host/[email protected]; defaulting to no policy
Principal "host/[email protected]" created.
kadmin: ​ktadd host/server.lab1.radkowski.pro
Entry for principal host/server.lab1.radkowski.pro with kvno 2, encryption type
aes256-cts-hmac-sha1-96 added to keytab FILE:/etc/krb5.keytab.
Entry for principal host/server.lab1.radkowski.pro with kvno 2, encryption type
aes128-cts-hmac-sha1-96 added to keytab FILE:/etc/krb5.keytab.
Entry for principal host/server.lab1.radkowski.pro with kvno 2, encryption type
des3-cbc-sha1 added to keytab FILE:/etc/krb5.keytab.
Entry for principal host/server.lab1.radkowski.pro with kvno 2, encryption type arcfour-hmac
added to keytab FILE:/etc/krb5.keytab.
Entry for principal host/server.lab1.radkowski.pro with kvno 2, encryption type
camellia256-cts-cmac added to keytab FILE:/etc/krb5.keytab.
Entry for principal host/server.lab1.radkowski.pro with kvno 2, encryption type
camellia128-cts-cmac added to keytab FILE:/etc/krb5.keytab.
Entry for principal host/server.lab1.radkowski.pro with kvno 2, encryption type
des-hmac-sha1 added to keytab FILE:/etc/krb5.keytab.
Entry for principal host/server.lab1.radkowski.pro with kvno 2, encryption type des-cbc-md5
added to keytab FILE:/etc/krb5.keytab.
kadmin: ​exit
[student@server ~]$
Zadanie 5 Konfiguracja usług - ssh
a. Na hoscie client, wyedytuj plik klienta ssh /etc/ssh/ssh_config oraz zmodyfikuj dwie
poniższe opcje:
(...)
GSSAPIAuthentication yes
GSSAPIDelegateCredentials yes
(...)
b. Zaloguj się na klienta jako użytkownik ​tom z hasłem ​kerberos​. Po zalogowaniu
sprawdź poleceniem klist czy posiadasz ważny ticket
[student@client ~]$ ​ssh ::1 -l tom
tom@::1's password:
Last login: Thu Dec 29 21:08:17 2016 from localhost
[tom@client ~]$ ​klist
Ticket cache: KEYRING:persistent:1001:krb_ccache_Akdx1ra
Default principal: [email protected]
Valid starting Expires
Service principal
29/12/16 21:08:25 30/12/16 21:08:25
krbtgt/[email protected]
[tom@client ~]$
c. Zaloguj się przez ssh na server jako użytkownik tom posiadając poprawny ticket.
Zauważ, że system nie poprosi o hasło - zadziała mechanizm SSO
[tom@client ~]$ ​ssh server
Last login: Thu Dec 29 21:03:39 2016 from client.lab1.radkowski.pro
[tom@server ~]$
Zadanie 6 Konfiguracja usług - serwer plików nfs
a. Zaloguj się na server i za pomocą polecenia kadmin dodać principal dla usługi nfs.
Następnie wyeksportuj go go lokalnego keytab’a (pamiętaj aby poprawnie podać
numer grupy w nazwie domenowej hosta)
[student@server ~]$ ​sudo kadmin
Authenticating as principal root/[email protected] with password.
Password for root/[email protected]:
kadmin: addprinc -randkey nfs/nfs.lab1.radkowski.pro
WARNING: no policy specified for nfs/[email protected];
defaulting to no policy
Principal "nfs/[email protected]" created.
kadmin: ​ktadd nfs/nfs.lab1.radkowski.pro
Entry for principal nfs/nfs.lab1.radkowski.pro with kvno 2, encryption type
aes256-cts-hmac-sha1-96 added to keytab FILE:/etc/krb5.keytab.
Entry for principal nfs/nfs.lab1.radkowski.pro with kvno 2, encryption type
aes128-cts-hmac-sha1-96 added to keytab FILE:/etc/krb5.keytab.
Entry for principal nfs/nfs.lab1.radkowski.pro with kvno 2, encryption type des3-cbc-sha1
added to keytab FILE:/etc/krb5.keytab.
Entry for principal nfs/nfs.lab1.radkowski.pro with kvno 2, encryption type arcfour-hmac
added to keytab FILE:/etc/krb5.keytab.
Entry for principal nfs/nfs.lab1.radkowski.pro with kvno 2, encryption type
camellia256-cts-cmac added to keytab FILE:/etc/krb5.keytab.
Entry for principal nfs/nfs.lab1.radkowski.pro with kvno 2, encryption type
camellia128-cts-cmac added to keytab FILE:/etc/krb5.keytab.
Entry for principal nfs/nfs.lab1.radkowski.pro with kvno 2, encryption type des-hmac-sha1
added to keytab FILE:/etc/krb5.keytab.
Entry for principal nfs/nfs.lab1.radkowski.pro with kvno 2, encryption type des-cbc-md5
added to keytab FILE:/etc/krb5.keytab.
kadmin: exit
[student@server ~]$
b. Aby udostępnić zasob /exports, dodaj następujące linie w pliku /etc/exports
/exports *(rw,sec=krb5p)
c. zresetuj server nfs za pomocą polecenia s
​ ystemctl restart​. Mozesz rowniez
sprawdzic czy usługa działa poleceniem s
​ ystemctl status​:
[student@server ~]$ ​sudo systemctl restart nfs
[student@server ~]$ ​sudo systemctl status nfs
● nfs-server.service - NFS server and services
Loaded: loaded (/usr/lib/systemd/system/nfs-server.service; disabled; vendor preset:
disabled)
​Active: active (exited) since Thu 2016-12-29 23:35:48 GMT; 5s ago
(...)
d. Zaloguj się do hosta client, uruchom k
​ admin​ i dodaj principal typu host:
[student@client ~]$ ​sudo kadmin
kadmin: addprinc -randkey nfs/client.lab1.radkowski.pro
kadmin: ​ktadd nfs/client.lab1.radkowski.pro
kadmin: ​exit
e. Na kliencie zresetuj usługę n
​ fs-secure
[student@client ~]$ ​sudo systemctl restart nfs-secure
f.
Zamontuj zasob przy pomocy komendy mount
[student@client ~]$ ​sudo mount -o sec=krb5p nfs.lab1.radkowski.pro:/exports /exports/
g. Sprawdź poleceniem mount, czy zasób został poprawnie zamontowany (montowanie
powinno odbyć się z użyciem nfs w wersji 4.0 lub wyzszej z opcja sec=krb5p.
Komunikacja za pomocą IPv6)
[student@client ~]$ ​sudo mount | grep export
nfs.lab1.radkowski.pro:/exports on /exports type n
​ fs4 ​\
(rw,relatime,​vers=4.0​,rsize=262144,wsize=262144,namlen=255,hard,​proto=tcp6​,port=0,\
timeo=600,retrans=2,​sec=krb5p​,clientaddr=​2001:db8::203​,local_lock=none,\
addr=​2001:db8::202​)
h. Zaloguj się do hosta client jako użytkownik ​tom​. Użyj hasła ​haslo aby nie dostać
ticketu. Jeśli posiadasz jakiś, usuń go za pomocą polecenia ​kdestroy​. Próba
dostępu do zasobu /exports powinna zakończyć się niepowodzeniem (Permission
denied). Po niepowodzeniu nie zamykaj sesji - przejdź do kolejnego punktu
[student@client ~]$ ​ssh ::1 -l tom
tom@::1's password:
[tom@client ~]$ ​klist
klist: Credentials cache keyring 'persistent:1002:1002' not found
[tom@client ~]$ ​cd /exports
-bash: cd: /exports: ​Permission denied
[tom@client ~]$
i.
Uruchom polecenie ​kinit aby uzyskać ticket (wprowadź hasło ​kerberos​). Mozesz
rowniez sprawdzic rezultat poprzedniego polecenia za pomocą ​klist​. Następnie
wejdź do katalogu /exports i załóż plik. Tym razem operacja ta powinna zakończyć
się sukcesem
[jane@client ~]$ ​kinit
Password for [email protected]:
[jane@client ~]$ ​klist
Ticket cache: KEYRING:persistent:1002:1002
Default principal: [email protected]
Valid starting Expires
Service principal
29/12/16 23:50:28 30/12/16 23:50:28
krbtgt/[email protected]
[jane@client ~]$ ​cd /exports/
[jane@client exports]$ ​touch plik
[jane@client exports]$ ​ls -l
total 0
-rw-rw-r-- 1 jane
jane 0 Dec 29 23:50 plik
[jane@client exports]$
Zadanie 7 Konfiguracja dostępu do demona kadmin
a. Zaloguj się do hosta client jako tom/kerberos
[student@client ~]$ ​ssh ::1 -l tom
tom@::1's password:
Last login: Mon Jan 2 14:48:04 2017
[tom@client ~]$ ​klist
Ticket cache: KEYRING:persistent:1001:krb_ccache_gu73yEr
Default principal: [email protected]
Valid starting Expires
Service principal
02/01/17 15:04:19 03/01/17 15:04:19
krbtgt/[email protected]
[tom@client ~]$
b. Następnie zaloguj się do demona ​kadmind za pomocą polecenia ​kadmin oraz
użytkownika ​tom​. Wykonaj polecenie ​getprinc jane aby wylistować detale na temat
użytkownika jane. System powinien poinformować o braku wystarczających praw do
tej operacji.
[tom@client ~]$ ​kadmin -p tom
Authenticating as principal tom with password.
Password for [email protected]:
kadmin: ​getprinc jane
get_principal: Operation requires ``get'' privilege while retrieving
"[email protected]".
kadmin:
c. zamknij sesje kadmin, zaloguj się do serwera kdc i dodaj następujące linie do pliku
konfiguracyjnego ACLe demona kadmind (/var/kerberos/krb5kdc/kadm5.acl)
[email protected]
il
d. Zresetuj demona kadmind poleceniem systemctl reload
[student@kdc ~]$ ​sudo systemctl restart kadmin
e. Z hosta client zaloguj się ponownie do kadmin, używając tak jak poprzednio konta
tom. Tym razem polecenie g
​ etprinc​ jane powinno zwrócić informacje na temat jane
[tom@client ~]$ ​kadmin -p tom
Authenticating as principal tom with password.
Password for [email protected]:
kadmin: ​getprinc jane
Principal: [email protected]
Expiration date: [never]
Last password change: Fri Dec 30 21:37:41 GMT 2016
Password expiration date: [none]
Maximum ticket life: 1 day 00:00:00
Maximum renewable life: 0 days 00:00:00
Last modified: Fri Dec 30 21:37:41 GMT 2016 (root/[email protected])
Last successful authentication: [never]
Last failed authentication: [never]
Failed password attempts: 0
Number of keys: 8
Key: vno 1, aes256-cts-hmac-sha1-96
Key: vno 1, aes128-cts-hmac-sha1-96
Key: vno 1, des3-cbc-sha1
Key: vno 1, arcfour-hmac
Key: vno 1, camellia256-cts-cmac
Key: vno 1, camellia128-cts-cmac
Key: vno 1, des-hmac-sha1
Key: vno 1, des-cbc-md5
MKey: vno 1
Attributes:
Policy: [none]
kadmin: ​quit
[tom@client ~]$