instrukcja cw06


Instytut Elektroniki
Wydział Automatyki, Elektroniki i Informatyki
Politechniki ÅšlÄ…skiej
SIECI KOMPUTEROWE
LABORATORIUM
Instrukcja do ćwiczenia nr 6
Gliwice 2011
Ćwiczenie 6
Administrowanie serwerem
FreeBSD
6.1 Wstęp
Po zainstalowaniu oraz skonfigurowaniu serwera FreeBSD głównym za-
daniem administratora systemu jest zarządzanie jego zasobami. W ćwicze-
niu omówione zostaną wybrane aspekty administrowania serwerem FreeBSD.
Najważniejszym z nich jest przydzielanie zasobów serwera jego użytkowni-
kom.
6.1.1 Zarządzanie uprawnieniami użytkowników
O dostępie do zasobów serwera (np.plików, kartotek, itp.) decydują upraw-
nienia danego użytkownika. Uprawnienia użytkownika ustalane są po raz
pierwszy przez administratora systemu podczas zakładania konta użytkow-
nika. Podczas tego procesu ustalane są dla każdego użytkownika następujące
parametry:
" User name - nazwa konta dostępowego, inaczej unikalna nazwa użyt-
kownika pod którą będzie on identyfikowany na serwerze,
" Password - hasło dostępowe użytkownika, które będzie wymagane przy
logowaniu siÄ™ do systemu.
" User ID (UID) - liczba z zakresu 0-65535 będąca identyfikatorem użyt-
kownika. Użytkownik w systemie UNIX oraz jego uprawnienia iden-
tyfikowane są poprzez wartość UID. Zwykle UID z zakresu 0-1000 są
zarezerwowane na użytek dla systemu operacyjnego i nie zaleca się sto-
sowania UID z tego zakresu.
Ćwiczenie 6 - Wstęp 3
" Group ID (GID) - liczba z zakresu 0-65535 będąca identyfikatorem
grupy do której należy użytkownik. Grupa użytkowników w systemie
UNIX oraz jej uprawnienia identyfikowane są poprzez wartość GID.
" Login class - klasa do której należy użytkownik, jest mechanizmem któ-
ry umożliwia ustalenie dodatkowych (szczegółowych) uprawnień użyt-
kownika lub grupy użytkowników,
" Password change time - czas po którym użytkownik zmuszony jest do
zmiany hasła dostępowego,
" Account expiry time - czas ważności konta użytkownika, po przekrocze-
niu którego zalogowanie się do systemu nie będzie możliwe,
" User s full name - pełna nazwa użytkownika,
" Home directory - kartoteka domowa, w której będą znajdować się pliki
których użytkownik będzie właścicielem,
" User shell - nazwa interpretera poleceń, z którego będzie korzystał użyt-
kownik. Interpreter poleceń musi znajdować się na liście dozwolonych
interpreterów w danym systemie (plik /etc/shells). W przeciwnym
przypadku zalogowanie się do systemu nie będzie możliwe.
Podstawowe informacje o danych użytkownika przechowywane są w pliku
/etc/passwd . Oto przykładowa zawartość tego pliku:
root:*:0:0:Charlie &:/root:/bin/csh
toor:*:0:0:Bourne-again Superuser:/root:
daemon:*:1:1:Owner of many system processes:/root:/sbin/nologin
operator:*:2:5:System &:/:/sbin/nologin
bin:*:3:7:Binaries Commands and Source,,,:/:/sbin/nologin
tty:*:4:65533:Tty Sandbox:/:/sbin/nologin
kmem:*:5:65533:KMem Sandbox:/:/sbin/nologin
games:*:7:13:Games pseudo-user:/usr/games:/sbin/nologin
news:*:8:8:News Subsystem:/:/sbin/nologin
man:*:9:9:Mister Man Pages:/usr/share/man:/sbin/nologin
smmsp:*:25:25:Sendmail Submission User:/var/spool/clientmqueue:/sbin/nologin
mailnull:*:26:26:Sendmail Default User:/var/spool/mqueue:/sbin/nologin
bind:*:53:53:Bind Sandbox:/:/sbin/nologin
uucp:*:66:66:UUCP pseudo-user:/var/spool/uucppublic:/usr/libexec/uucp/uucico
xten:*:67:67:X-10 daemon:/usr/local/xten:/sbin/nologin
pop:*:68:6:Post Office Owner:/nonexistent:/sbin/nologin
nobody:*:65534:65534:Unprivileged user:/nonexistent:/sbin/nologin
kowalski:*:1000:1000:Jan Kowalski:/home/kowalski:/bin/sh
Generalnie w systemie FreeBSD istnieją trzy kategorie użytkowników:
Ćwiczenie 6 - Wstęp 4
" Super Users - użytkownicy najbardziej uprzywilejowani, do tej grupy
należy zazwyczaj tylko jeden użytkownik na nazwie root . Administra-
tor systemu, musi zwykle posiadać uprawnienia użytkownika root, aby
zarządzać zasobami systemu.
" System Users - kategoria wykorzystywana przez procesy i usługi syste-
mowe.
" Normal Users - grupa użytkowników o standardowych uprawnieniach.
Poniżej zestawiono podstawowe polecenia systemowe służące do zarządzania
kontami użytkowników oraz ich uprawnieniami:
" adduser - polecenie służące do zakładanie kont użytkowników,
" rmuser - polecenie służące do usuwania kont użytkowników,
" chpass - polecenie służące do zmiany poszczególnych parametrów opi-
sujących konto użytkownika ,
" passwd - polecenie umożliwiające zmianę hasła dostępowego użytkow-
nika,
" pw - polecenie umożliwiające zmianę szczególnych parametrów konta
użytkownika.
Zakładanie konta użytkownika
Do zakładanie konta użytkownika służy polecenie adduser. Po wykonaniu
polecenia, przed założeniem konta użytkownika wymagane jest podanie kilku
parametrów określających parametry tego procesu. Przykładowy przebieg
wykonania polecenia verb adduser przedstawiono poniżej:
# adduser
Use option   -silent  if you don t want to see all warnings and questions.
Check /etc/shells
Check /etc/master.passwd
Check /etc/group
Enter your default shell: csh date no sh tcsh zsh [sh]: zsh
Your default shell is: zsh -> /usr/local/bin/zsh
Enter your default HOME partition: [/home]:
Copy dotfiles from: /usr/share/skel no [/usr/share/skel]:
Send message from file: /etc/adduser.message no
[/etc/adduser.message]: no
Do not send message
Use passwords (y/n) [y]: y
Ćwiczenie 6 - Wstęp 5
Write your changes to /etc/adduser.conf? (y/n) [n]: y
Ok, let s go.
Don t worry about mistakes. I~will give you the chance later to correct any input.
Enter username [a-z0-9_-]: jru
Enter full name []: J. Random User
Enter shell csh date no sh tcsh zsh [zsh]:
Enter home directory (full path) [/home/jru]:
Uid [1001]:
Enter login class: default []:
Login group jru [jru]:
Login group is   jru  . Invite jru into other groups: guest no
[no]: wheel
Enter password []:
Enter password again []:
Name: jru
Password: ****
Fullname: J. Random User
Uid: 1001
Gid: 1001 (jru)
Class:
Groups: jru wheel
HOME: /home/jru
Shell: /usr/local/bin/zsh
OK? (y/n) [y]: y
Added user   jru 
Copy files from /usr/share/skel to /home/jru
Add another user? (y/n) [y]: n
Goodbye!
#
Czasowe zablokowanie konta użytkownika
Często zdarza się, że administrator zmuszony jest do czasowej blokady
konta użytkownika, aby uniemożliwić użytkownikowi zalogowanie się do ser-
wera. Najczęściej czasową blokadę konta realizuje się na dwa sposoby.
Pierwszy z nich polega na zmianie standardowego interpretera poleceń
na inny. Interpreter poleceń jest pierwszym programem uruchomionym auto-
matycznie po zalogowaniu się do systemu, pełni on także funkcję pośrednika
w dostępie do poleceń systemowych. W przypadku gdy interpreter poleceń
przyporządkowany danemu użytkownikowi zostanie zmieniony na inny, nie
widniejący na liście dozwolonych w systemie, zalogowanie się użytkownika
nie będzie możliwe, a przekona się on o tym dopiero po podaniu popraw-
nej nazwy użytkownika i hasła dostępowego. Zmiana interpretera poleceń
Ćwiczenie 6 - Wstęp 6
na program o nazwie nologin spowoduje zablokowanie konta użytkownika
i wyświetlenie stosownego komunikatu, który może informować użytkownika
o konieczności zgłoszenia się do administratora systemu. Zmianę interpretera
poleceń przyporządkowanego użytkownikowi można wykonać najwygodniej
za pomocÄ… polecenia chsh.
Drugi sposób polega na czasowej modyfikacji hasła użytkownika, w ta-
ki sposób aby możliwy był powrót do jego poprzedniej wersji, dzięki czemu
będzie możliwe łatwe odblokowanie konta dostępowego. Podobnie jak w po-
przednim przypadku można to tego celu użyć polecenia chsh. Modyfikacji
hasła możemy dokonać dodając jakikolwiek znak do ciągu znaków będącego
zakodowanym hasłem, np. znak * na początku zakodowanego hasła. Jednak
w najnowszych wersjach systemu FreeBSD nie jest dozwolone ręczne modyfi-
kowanie zakodowanego hasła dostępowego, a do blokowania konta zaleca się
użycie polecenia:
# pw lock
Ze względów bezpieczeństwa zaleca się blokowanie lub nawet usuwanie
kont dostępowych, w przypadkach gdy nie były one przez dłuższy czas uży-
wane.
Usuwanie konta użytkownika
Usuwanie konta dostępowego użytkownika polega na usunięciu z serwera
wszystkich danych dotyczących konta dostępowego oraz wszystkich obiek-
tów (plików, kartotek) których był właścicielem. Najprościej użyć w tym celu
polecenia rmuser. Po wykonaniu tego polecenia administrator musi podjąć
decyzję czy podczas usuwania konta dostępowego ma zostać usunięta karto-
teka domowa użytkownika wraz jej zawartością, czyli plikami i kartotekami,
których był właścicielem użytkownik. Na uwagę zasługuje takt, iż usunięte
w ten sposób pliki użytkownika zwykle nie da się już odzyskać.
Dostęp do obiektów
W systemie UNIX każdemu plikowi i katalogowi są przypisane następu-
jące atrybuty: nazwa konta właściciela, nazwa grupy i prawa dostępu. W
systemie UNIX są następujące prawa dostępu :
" r (ang. read) (22 = 4)- odczyt - plik może być czytany lub kopiowany.
Jeśli atrybut dotyczy kartoteki pozwala on na wyświetlenie zawartości
katalogu.
Ćwiczenie 6 - Wstęp 7
" w (ang. write) - zapis - plik może być modyfikowany. Jeśli atrybut
dotyczy kartoteki pozwala on na tworzenie w kartotece nowych plików,
usuwanie już istniejących.
" x (ang. execute) - wykonanie - plik może być wykonywany jako program.
albo jako ciąg poleceń systemowych (shell script). Jeśli atrybut dotyczy
kartoteki pozwala on na wejście do danej kartoteki, czyli na ustawienie
danej kartoteki jako kartoteki bieżącej.
Podobnie są rozróżniane trzy klasy użytkowników, którym możemy przy-
porządkować prawa dostępu.
" właściciel (ang. owner),
" grupa (ang. group),
" pozostali (ang. other).
Każdej z klas właściciel może przypisać dowolną kombinację praw do-
stępu. System operacyjny UNIX wykorzystuje prawa dostępu w następujący
sposób :
" Jeśli użytkownik żądający dostępu do pliku jest jego właścicielem, to
są analizowane wyłącznie prawa dostępu właściciela pliku.
" Jeśli użytkownik żądający dostępu nie jest właścicielem, ale jest człon-
kiem grupy, do której należy plik, to są sprawdzane wyłącznie prawa
dostępu tej grupy użytkowników.
" Jeśli użytkownik nie jest ani właścicielem, ani nie należy do grupy której
właścicielem jest dany plik, to są sprawdzane wyłącznie prawa dostępu
dla pozostałych użytkowników.
Poniżej przedstawiono przykładowe atrybuty uprawnień przypisane przykła-
dowym plikom.
-rw------- 1 user group 246 Jun 25 18:55 plik1.txt
-rw------x 1 user group 726 Jun 25 19:25 plik2.txt
-rwxrwxrwx 1 user group 0 Jul 11 09:27 plik3
-rw------- 1 user group 1665 May 28 07:34 plik4.txt
-rw------- 1 user group 24439 Jul 09 07:05 mbox
----r--r-- 1 user group 6028 May 20 06:27 mbox0
-rw------- 1 user group 4849 Jul 11 09:04 nohup.out
drw------- 1 user group 512 Jul 11 09:04 kartoteka
Ćwiczenie 6 - Wstęp 8
W każdym wierszu znaki od 2 do 10 mówią o rodzaju dostępu do plików,
kolumna trzecia informuje kto jest właścicielem plików, a kolumna czwarta
jaka grupa użytkowników posiada plik. Kolumna pierwsza zawiera:
" prawa dostępu właściciela - znaki 2 - 4,
" prawa dostępu grupy posiadającej - znaki 5 - 7,
" prawa dostępu pozostałych użytkowników - znaki 8 - 10.
Prawa dostępu mogą być zmieniane przy użyciu instrukcji chmod. Instruk-
cja ta umożliwia dodanie (+) zdjęcie (-) i ustawienie (=) prawa dostępu dla
danej klasy użytkowników, tzn. właściciela (u-user), grupy posiadającej (g-
group), innych (o-others) lub dla wszystkich naraz (a-all). Poszczególne klasy
sÄ… oddzielane przecinkami. Np. instrukcja:
chmod u=x,g+rw,o+x mbox
spowoduje ustawienie praw dostępu właściciela dokładnie jako prawo wyko-
nania pliku mbox przez właściciela jako program (ale w konsekwencji zdjęcie
praw zapisu i odczytu), dodanie prawa zapisu i odczytu dla grupy posiada-
jÄ…cej plik mbox (w tym przypadku group) i dodanie prawa wykonania mbox
jako programu dla pozostałych użytkowników.
Możliwe jest także alternatywne wywołanie polecenie chmod za pomo-
cą wartości numerycznych. Wtedy to odpowiednim artybutom odpowiadają
okreśkole wartości numeryczne podawane jako parametr wywołania polecenia
chmod.
" r (ang. read) - wartość numeryczna 22 = 4
" w (ang. write) - wartość numeryczna 21 = 2
" x (ang. execute) - wartość numeryczna 20 = 1
W takim przypadku wywołaniu polecenia:
chmod u=rw,g=rw,o=r mbox
będzie odpowiadało wywołanie alternatywne (numeryczne):
chmod 664 mbox
Do zmiany właściciela pliku służy polecenie chown. Np.:
chown user.group mbox
Ćwiczenie 6 - Wstęp 9
Prawa dostępu do katalogów są nieco inaczej interpretowane niż w przy-
padku plików. Prawo do odczytu zezwala na odczytanie zawartości katalogu.
Prawo do zapisu Å‚Ä…cznie z prawem do wykonania zezwala na zmianÄ™, utwo-
rzenie, usunięcie plików w katalogu. Prawo do wykonania zezwala na wejście
w głąb katalogu.
Trzy czynniki wpływają na prawa dostępu do nowoutworzonych plików.
Pierwszy czynnik, to prawa dostępu ustawiane przez różne procesy systemu
operacyjnego, tzn. edytory tekstów, kompilatory itp. Na ogół użytkownik nie
ma wpływu na ich ustawianie. Drugi to maska praw dostępu wszystkich użyt-
kowników ustawiana instrukcją umask przez administratora systemu. Trzeci
to taka sama maska ustawiana przez poszczególnych użytkowników dla sie-
bie. Użytkownik ma wpływ wyłącznie na trzeci czynnik, z tym, że system
ogranicza  wolną wolę użytkownika do wartości ustawionej przez admini-
stratora systemu. W sumie nowy plik dostaje maksymalne prawa dostępu
dopuszczane przez wszystkie trzy czynniki jednocześnie.
Ograniczenie dostępnej przestrzeni dyskowej (quota)
Ograniczenie przestrzeni dyskowej udostępnionej użytkownikom serwera
jest możliwe dzięki technice zwanej disc quota. Pozwala ona ograniczyć w spo-
sób skuteczny ograniczyć przestrzeń dyskową zajętą przez pliki użytkownika.
Rozróżnia się dwa rodzaje ograniczeń dostępnej przestrzeni dyskowej:
" hard quota - ograniczenie dostępnej przestrzeni dyskowej zajmowanej
przez pliki należące do użytkownika, które bezwzględnie nie może być
przekroczone,
" soft quota - ograniczenie dostępnej przestrzeni dyskowej zajmowanej
przez pliki należące do użytkownika, które czasowo może być przekro-
czone np. na 5 dni.
Ograniczenia mogą być nadawane grupie użytkowników lub indywidual-
nym użytkownikom. Proszę pamiętać, że ograniczenia nadawane są
oddzielnie na poszczególne wolumeny dostępne w systemie plików
danego serwera, a nie na poszczególne kartoteki systemu plików.
Do przydzielania i modywikacji ograniczeń dostępnej przestrzeni dyskowej
można użyć polecenia edquota.
Aby na serwerze FreeBSD można było wprowadzić ograniczenia o których
mowa, niezbędne jest uaktywnienie tej usługi. Aby usługa ta była aktywna
muszą być spełnione co najmniej dwa warunki:
" Jądro systemowe musi być skompilowane odpowiednią opcją :
options quota.
Ćwiczenie 6 - Wstęp 10
" W pliku /etc/fstab musi się znajdować informacja których wolume-
nów mają dotyczyć ograniczenia. Przykładową zawartość tego pliku
przedstawiono poniżej.
# Device Mountpoint FStype Options Dump Pass#
/dev/ad0s1b none swap sw 0 0
/dev/ad0s1a / ufs rw,userquota 1 1
/dev/ad0s2e /mnt1 ufs rw,userquota 2 2
/dev/acd0c /cdrom cd9660 ro,noauto 0 0
proc /proc procfs rw 0 0
/dev/ad3s1 /mnt2 ufs rw 2 2
/dev/ad6s1 /mnt3 ufs rw 2 2
Wymagane zmiany w konfiguracji systemu operacyjnego umoż-
liwiającego korzystanie z funkcji disc quota zostały już wykonane
przez prowadzącego ćwiczenie w ramach przygotowania laborato-
rium do zajęć. Zatem zmiany w konfiguracji serwera nie będą już
konieczne.
Ograniczenie pozostałych zasobów
Każdy użytkownik w systemie Unix należy do określonej grupy użytkow-
ników. W systemie FreeBSD użytkownik dodatkowo przynależy do określonej
klasy użytkowników (login class). Istnieje możliwość ograniczenia pozosta-
łych zasobów serwera pozostających do dyspozycji użytkowników przypisu-
jąc określone zasoby do określonej klasy. Zasoby te określone są w odrębnym
pliku /etc/login.conf. Przykładową zawartość tego pliku przedstawiono
poniżej:
# defaults
# These settings are used by login(1) by default for classless users
# Note that entries like "cputime" set both "cputime-cur" and "cputime-max"
default:\
:passwd_format=md5:\
:copyright=/etc/COPYRIGHT:\
:welcome=/etc/motd:\
:setenv=MAIL=/var/mail/$,BLOCKSIZE=K,FTP_PASSIVE_MODE=YES:\
:path=/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin:\
:nologin=/var/run/nologin:\
:cputime=unlimited:\
:datasize=unlimited:\
:stacksize=unlimited:\
:memorylocked=unlimited:\
:memoryuse=unlimited:\
:filesize=unlimited:\
Ćwiczenie 6 - Wstęp 11
:coredumpsize=unlimited:\
:openfiles=unlimited:\
:maxproc=unlimited:\
:sbsize=unlimited:\
:priority=0:\
:ignoretime@:\
:umask=022:
Poszczególne zmienne systemowe w pliku /etc/login.conf odpowiadają
za odpowiednie ograniczenia. Oto niektóre z nich:
" passwd_format - system kodowania hasła użytkownika,
" welcome - komunikat dzienny wyświetlany po zalogowaniu się użytkow-
nika,
" setenv - aktywne zmienne systemowe,
" path - domyślna ścieżka komend,
" cputime - maksymalny czas wykorzystania procesora,
" datasize - maksymalny obszar pamięci wykorzystany dla danych,
" stacksize - maksymalny dozwolony rozmiar stosu,
" memorylocked - maksymalny rozmiar zarezerwowanej pamięci,
" memoryuse - maksymalny rozmiar używanej pamięci,
" filesize - maksymalny dozwolony rozmiar plików użytkownika,
" openfiles - maksymalna liczba otwartych plików użytkownika,
" maxproc - maksymalna dozwolona liczba aktywnych procesów użyt-
kownika,
" priority - domyślny priorytet procesów użytkownika,
" umask - domyślna maska uprawnień dla plików zakładanych przez użyt-
kownika.
Ćwiczenie 6 - Wstęp 12
Strona domowa użytkownika
Serwer HTTP może być skonfigurowany tak, aby każdy z użytkowników
systemu UNIX miał możliwość założenia sobie własnej strony domowej. Do-
stęp do takiej strony będzie możliwy za pomocą adresu typu:
http:\\/~
Adres ten wskazuje bezpośrednio na podkartotekę znajdującą się w karto-
tece domowej użytkownika o nazwie public_html. W katalogu tym powin-
ny się znalezć pliki stanowiące stronę domową użytkownika. Przy tworzeniu
kartoteki public_html należy zwrócić uwagę na atrybuty i uprawnienia do
zamieszczonych tak plików jak i samego katalogu. Zbyt małe uprawnienia
nadane do tych plików uniemożliwi do nich dostęp, uprawnienia zbyt duże
mogą być niebezpiecznie w punktu widzenia bezpieczeństwa.
Możliwe jest także zabezpieczenie swojej strony domowej w taki sposób,
aby dostęp do niej wymagał autoryzacji, czyli podania nazwy użytkownika
oraz hasła. Możliwe jest to dzięki użyciu plików konfiguracyjnych zapisanych
w kartotece, której dotyczy zabezpieczenie:
" .htaccess - domyślna nazwa pliku konfiguracyjnego serwera Apache,
który umożliwia zmianę konfiguracji dla konkretnego katalogu. Plik
może zostać utworzony w każdym katalogu, umożliwiając dodanie no-
wych lub zmianę istniejących dyrektyw ustawionych w głównym pliku
konfiguracyjnym. Zmienione ustawienia obowiÄ…zujÄ… dla danego katalo-
gu jak i dla wszystkich podkatalogów, jeśli tylko dany podkatalog nie
jest skonfigurowany jako osobny podserwer - należy zapamiętać, że w
takim przypadku dziedziczenie ustawień zawartych w .htaccess nie
zadziała.
" .htpasswd - nazwa pliku konfiguracyjnego przechowującego nazwy użyt-
kowników i hasła wykorzystywane przez Apache do autoryzacji. Działa
on w połączeniu z plikiem .htaccess, lub bez niego o ile wykonany zo-
stał odpowiedni wpis w pliku konfiguracyjnym Apache. Hasła szyfrowa-
ne sÄ… md5, sha lub systemowym crypt(). W jednym pliku .htpasswd
mogą znajdować się hasła zaszyfrowane różnymi sposobami.
Poniższy fragment pliku .htaccess pozwala chronić pliki za pomocą pro-
stej autoryzacji.
AuthType Basic
AuthName "Proszę podać nazwę użytkownika oraz hasło."
AuthUserFile /sciezka/do/pliku/z/uzytkownikami
Require user username
Ćwiczenie 6 - Problemy do rozwiązania przed ćwiczeniem 13
Do utworzenia pliku .htpasswd używa się programu htpasswd który do-
stępny jest wraz z Apache:
htpasswd -c .htpasswd username
Literatura
1. FreeBSD Handbook , The FreeBSD Documentation Project - Copyright
© by The FreeBSD Documentation Project
(http://www.freebsd.org/handbook).
2. FreeBSD Hypertext Man Pages
(http://www.freebsd.org/cgi/man.cgi?manpath=FreeBSD+6.0-STABLE).
3. Tanenbaum A.S Operating Systems - Design and Implementation, Pren-
tice Hall, New Jersey 1997.
6.2 Problemy do rozwiązania przed ćwicze-
niem
a) Uzupełnić swoją wiedzę dotyczącą podstaw obsługi systemu operacyj-
nego FreeBSD, korzystając z dostępnej literatury oraz z dokumentacji
dostępnej w sieci Internet [1].
b) Korzystając ze zródeł dostępnych w Internecie zapoznać się szczegóło-
wo z użyciem poleceń adduser, rmuser, chpass, chsh, passwd, chmod,
chown oraz pw [2].
c) Zapoznać się z zasadami edycji dokumentów w systemie FreeBSD oraz
z obsługą edytora vi.
d) Korzystając z dokumentacji systemu FreeBSD, publikacji ogólnodo-
stępnych oraz udostępnionych na Platformie Zdalnej Edukacji pod ad-
resem http://platforma.polsl.pl/rau3 uzupełnić swoją wiedzę z
zakresu tematyki niniejszego ćwiczenia w stopniu umożliwiającym jego
realizacjÄ™.
6.3 Program ćwiczenia
Uwaga: Większość działań w tym ćwiczeniu laboratoryjnym wykonuje się z
uprawnieniami użytkownika o największych uprawnieniach. W związku
Ćwiczenie 6 - Program ćwiczenia 14
z tym proszę zachować szczególną ostrożność wykonując jakiekolwiek
operacje na serwerze. W przeciwnym wypadku może dojść do uszko-
dzenia serwera. W szczególności proszę pamiętać aby:
1. nie modyfikować żadnych plików konfiguracyjnych serwera bez wy-
raznej zgody prowadzÄ…cego,
2. nie usuwać i nie modyfikować żadnych plików serwera chyba, że
znajdują się one w kartotece domowej użytkownika,
3. nie zakłócać pracy innym użytkownikom. Proszę pamiętać, że ser-
wer jest systemem wielozadaniowy i wielodostępnym oraz, że pra-
cują na nim także inni użytkownicy.
6.3.1 Narzędzia do administrowania serwerem
Przetestować wskazane przez prowadzącego narzędzia do administrowania
serwerem FreeBSD np:
" Webmin (http://www.webmin.com),
" Usermin (http://www.webmin.com/usermin.html).
6.3.2 Uruchomienie własnej strony domowej użytkow-
nika
a) Uruchomić stronę domową dla swojego użytkownika domowego założo-
nego na pierwszych zajęciach.
" Strona ma wyświetlać : Imię, Nazwisko, grupę dziekańską z uwzględ-
nieniem polskich znaków diakrytycznych,
" Strona domowa ma działać w oparciu o serwer HTTP Apache,
" Wszystkie działania przy realizacji ćwiczenia są wykonywane z po-
ziomu użytkownika prywatnego (zwykłego użytkownika, bez do-
datkowych uprawnień),
" Każdy członek sekcji wykonuje zadanie samodzielnie i jest z niego
indywidualnie rozliczany,
b) Zabezpieczyć swoją stronę domową w taki sposób, aby dostęp do niej
był możliwy tylko po podaniu poprawnej nazwy użytkownika oraz ha-
sła.
" nazwa użytkownika = imię osoby realizującej ćwiczenie,
Ćwiczenie 6 - Program ćwiczenia 15
" hasło = nazwisko osoby realizującej ćwiczenie.
c) Sprawdzić działanie strony domowej.
6.3.3 Ograniczanie uprawnień użytkownika serwera Fre-
eBSD
W oparciu o swoje konto osobiste założone samodzielnie na serwerze
bsd.aei.polsl.pl na poprzednich zajęciach wykonać następujące zadania
mające na celu ograniczenie uprawnień użytkownika.
a) Do założonego konta przyporządkować dodatkowe informacje dotyczące
użytkownika:
" Full Name: ImiÄ™ i Nazwisko studenta
" Office Location: nazwa grupy dziekańskiej studenta
" Office Prone: numer katalogu/inteksu studenta
" Home Phone: kontaktowy numer telefonu studenta
" Other information: pozostałe informacje dotyczące studenta
b) Sprawdz zawartość plików /etc/passwd oraz /etc/master.passwd. Co
one zawierają oraz jakie mają prawa dostępu. Po żadnym pozorem
nigdy nie zmieniaj zawartości tych plików.
c) Zalogować się jako użytkownik i sprawdzić poprawność działania konta.
d) Zablokować konto użytkownika w taki sposób, aby każda próba auto-
ryzacji kończyła się niepowodzeniem.
e) Zablokować konto użytkownika w taki sposób, aby próba autoryzacji
kończyła sukcesem,a na ekranie pojawił się komunikat informujący o
zablokowaniu konta. Po wyświetleniu komunikatu ma nastąpić auto-
matyczne wylogowanie użytkownika. Zanotuj i zapamiętaj komunikat
informujący o zablokowaniu konta użytkownika. Zaprezentować działa-
nie tego typu blokady prowadzÄ…cemu.
f) Uaktywnić funkcję wygaśnięcia hasła i sprawdzić jej działanie. Po do-
kładnym sprawdzeniu zdjąć to ograniczenie.
g) Uaktywnić funkcję wygaśnięcia konta i sprawdzić jej działanie. Po do-
kładnym sprawdzeniu zdjąć to ograniczenie.
h) Ograniczyć przestrzeń dyskową dostępną dla użytkownika:
Ćwiczenie 6 - Program ćwiczenia 16
" kartoteka domowa /home/username (20MB,50MB),
" skrzynka pocztowa /var/mail (20MB,50MB),
" kartoteka /tmp (50MB,100MB).
Sprawdzić działanie nałożonych ograniczeń przestrzeni dyskowej, naj-
lepiej przez skopiowanie większej ilości plików do danego wolumenu. Za-
prezentować prowadzącemu działanie wprowadzonych ograniczeń. Ogra-
niczenie przestrzeni dyskowej pozostawić aktywne dla użytkownika.
i) Sprawdzić wykorzystanie przestrzeni dyskowej przez użytkownika po-
leceniem repquota.
j) Sprawdzić zawartość pliku /etc/login.conf.
k) Założyć klasę username (username=nazwa użytkownika) do której bę-
dzie należał użytkownik i wprowadzić poniższe ograniczania. Sprawdzić
działanie ograniczeń.
" ograniczyć maksymalny czas procesora,
" ograniczyć dostępną pamięć,
" ograniczyć liczbę procesów,
" ograniczyć priorytet.
Sprawdzić działanie nałożonych ograniczeń, po uprzednim przyporząd-
kowaniu użytkownika do odpowiedniej klasy.
l) Po zakończeniu zadania przypisać użytkownika do klasy do-
myślnej. Pozostałe ograniczenia do przestrzeni dyskowej po-
zostawić jako aktywne.
6.3.4 Zarządzanie grupą użytkowników
a) Załóż grupę o nazwie grupa_xy, gdzie xy oznaczają inicjały stu-
denta realizującego ćwiczenie.
b) Przygotuj kartotekÄ™ dla grupy /home/grupa_xy.
c) Załóż użytkowników jan_xy, ela_xy, oraz ania_xy i przypisz i
do grupy.
d) Stwórz strukturę kartotek i plików oraz nadaj im odpowiednie
atrybuty oraz określ właścicieli zgodnie z zestawieniem zamiesz-
czonym w tabelce 6.1.
Ćwiczenie 6 - Program ćwiczenia 17
Tabela 6.1: Kartoteki, pliki oraz ich właściciele i atrybuty
Kartoteka Plik Właściciel Atrybuty
/home/grupa_xy jan_xy.grupa_xy -rwxrwx---
/home/grupa_xy/jan_xy jan_xy.grupa_xy -rwx------
/home/grupa_xy/jan_xy/sekrety ania_xy.txt jan_xy.grupa_xy -rw-r-----
/home/grupa_xy/jan_xy/sekrety ela_xy.txt jan_xy.grupa_xy -rw-r-----
/home/grupa_xy/ela_xy ela_xy.grupa_xy -rwxrwx---
/home/grupa_xy/ela_xy/sekrety jacek_xy.txt ela_xy.grupa_xy -rw-r-----
/home/grupa_xy/ela_xy/sekrety wacek_xy.txt ela_xy.grupa_xy -rw-r-----
/home/grupa_xy/ania_xy ania_xy.grupa_xy -rwxrwx---
/home/grupa_xy/ania_xy/sekrety marek_xy.txt ania_xy.grupa_xy -rw-r-----
/home/grupa_xy/ania_xy/sekrety jarek_xy.txt ania_xy.grupa_xy -rw-r-----
/home/grupa_xy/zasoby jan_xy.grupa_xy -rwxr-x---
/home/grupa_xy/zasoby/programy jan_xy.grupa_xy -rwxr-x---
/home/grupa_xy/zasoby/programy mc jan_xy.grupa_xy -r-xr-x---
/home/grupa_xy/zasoby/tmp jan_xy.grupa_xy trwxrwxtwx
e) Sprawdz i opisz własnymi słowami uprawnienia poszczególnych
użytkowników.
f) Sprawdz i opisz własnymi słowami uprawnienia poszczególnych
użytkowników w kartotece tmp. Czy coś szczególnego dało się za-
uważyć ?
g) Po sprawdzeniu przez prowadzącego usuń użytkowników i założo-
ną strukturę katalogów.
6.3.5 Zakładanie nadawanie uprawnień administratora
wybranym użytkownikom
a) Założyć konto o nazwie superadmin należące do grupy przeznaczonej
dla administratorów i nadać mu uprawnienia administratora systemu.
b) Zalogować się jako superadmin i sprawdzić czy możliwe jest uzyskanie
uprawnień administratora. Zastanowić się jaka wiedza jest niezbędna
do uzyskania uprawnień administratora systemu.
c) Zainstalować oprogramowanie o nazwie su2 pozwalające wybranym
użytkownikom na uzyskanie uprawnień administratora na podstawie
własnego hasła dostępowego, bez potrzeby znajomości hasła użytkow-
nika root.
Ćwiczenie 6 - Program ćwiczenia 18
d) Skonfigurować zainstalowane oprogramowanie tak, aby użytkownik admin
mógł przejąć prawa administratora systemu za pomocą swojego hasła
dostępowego. Jakie warunki muszą być spełnione aby było to możliwe ?
e) Zalogować się jako superadmin i podjąć próbę uzyskania uprawnień
administratora za pomocą narzędzia su2.


Wyszukiwarka

Podobne podstrony:
instrukcja prezentacja2
instrukcja bhp przy obsludze euro grilla
DS1000PL Instrukcja
Blaupunkt CR5WH Alarm Clock Radio instrukcja EN i PL
Instrukcja do cwiczenia 4 Pomiary oscyloskopowe
Instrukcja F (2010)
Instrukcja Programowania Zelio Logic 2 wersja polska
Instrukcja kociol MODERATOR 75 200kW pl
Instrukcje 2
Instrukcja
12 Wykonywanie sterylizacji instrumentów, materiałów

więcej podobnych podstron