You are on page 1of 36

IDZ DO

PRZYKADOWY ROZDZIA
SPIS TRECI

KATALOG KSIEK
KATALOG ONLINE
ZAMW DRUKOWANY KATALOG

TWJ KOSZYK
DODAJ DO KOSZYKA

CENNIK I INFORMACJE
ZAMW INFORMACJE
O NOWOCIACH
ZAMW CENNIK

CZYTELNIA
FRAGMENTY KSIEK ONLINE

Wydawnictwo Helion
ul. Chopina 6
44-100 Gliwice
tel. (32)230-98-63
e-mail: helion@helion.pl

Debian GNU/Linux 3.1.


Biblia
Autorzy: Benjamin Mako Hill, David B. Harris, Jaldhar Vyas
Tumaczenie: Magorzata Czart, Grzegorz Kowalczyk,
Leszek Sagalara
ISBN: 83-246-0287-9
Tytu oryginau: Debian GNU/Linux 3.1 Bible
Format: B5, stron: 704
Kompendium wiedzy o systemie Debian GNU/Linux
System Debian GNU/Linux 3.1 i dodatkowe pakiety oprogramowania
Zasady korzystania z powoki tekstowej oraz rodowisk graficznych KDE i GNOME
Linux w pracy i w domu
Debian jako baza dla wydajnego i stabilnego serwera internetowego
Debian GNU/Linux to jedyna dystrybucja Linuksa niepowizana w aden sposb
z jakkolwiek firm tworzy j rzesza ochotnikw. Rewelacyjny system zarzdzania
pakietami oprogramowania oraz stabilno i uniwersalno to gwne rda znakomitej
reputacji Debiana. T wanie dystrybucj coraz czciej wybieraj administratorzy
serwerw poszukujcy wydajnego systemu operacyjnego. Z kolei twrcy innych
dystrybucji Linuksa wykorzystuj j jako baz dla nowych produktw.
Ksika Debian GNU/Linux 3.1. Biblia to kompleksowe rdo wiedzy o Debianie
i oryginalnych zasadach korzystania z niego. Dziki zamieszczonym tu informacjom
dowiesz si, jak zainstalowa i skonfigurowa system i jak nim zarzdza.
Nauczysz si pracowa w trybie tekstowym oraz wykorzystywa rodowiska graficzne
KDE i GNOME. Poznasz doczone do tej dystrybucji Linuksa oprogramowanie,
skonfigurujesz poczenia sieciowe i zbudujesz serwer internetowy.
Instalacja Debiana
Praca z systemem plikw
Korzystanie z powoki tekstowej
Instalowanie i usuwanie pakietw oprogramowania
Zarzdzanie kontami uytkownikw
Tworzenie kopii bezpieczestwa
Praca w rodowisku graficznym
Korzystanie z internetu i poczty elektronicznej
Tworzenie i publikowanie dokumentw
Obrbka cyfrowych fotografii
Konfigurowanie usug sieciowych
Serwery WWW, FTP, pocztowy oraz DNS
Bazy danych
Kady uytkownik Debiana, niezalenie od dowiadczenia,
moe nauczy si z tej ksiki czego nowego

O autorach ....................................................................................................... 15
Podzikowania ................................................................................................. 11
Przedmowa ...................................................................................................... 19

Cz I PodsCz .......................................................................... 25
Rozdzia 1. Projekt Debian .............................................................................. 21
Skadniki dystrybucji systemu Linux ...................................................................................................28
Pakiety ............................................................................................................................................28
Jdro systemu .................................................................................................................................30
Inne skadniki jdra ........................................................................................................................31
Architektura ....................................................................................................................................32
Dystrybucje i wydania ..........................................................................................................................34
Co potrafi Debian? ................................................................................................................................36
System Linux i jego pochodzenie .........................................................................................................38
Projekt Debian oraz spoeczno Debiana ............................................................................................40
Spoeczno Free Software/Open Source ......................................................................................41
Cele projektu Debian ......................................................................................................................42
Debian na zamwienie ...................................................................................................................44
Powody, dla ktrych warto wybra system Debian .............................................................................45
Rozmach oprogramowania .............................................................................................................46
atwo zarzdzania ......................................................................................................................47
Twoja niezaleno ........................................................................................................................48
Podsumowanie ......................................................................................................................................49
Rozdzia 2. Instalacja systemu Debian ............................................................ 51
Kilka sw o programie instalacyjnym systemu Debian ......................................................................52
Wstpna konfiguracja systemu Debian ................................................................................................59
Instalacja dodatkowych pakietw oprogramowania .............................................................................60
Podsumowanie ......................................................................................................................................62
Rozdzia 3. Korzystanie z powoki oraz systemu plikw ............................... 63
Struktura systemu plikw .....................................................................................................................64
Przestrzenie nazw oraz drzewa katalogw .....................................................................................64
Paska przestrze nazw kontra drzewo ...........................................................................................65
Drzewo katalogw w systemach plikw GNU/Linux ....................................................................66
Rodzaje obiektw w systemie plikw, prawa dostpu oraz prawa wasnoci ...............................68
Uytkownicy, grupy uytkownikw oraz prawa wasnoci ...........................................................68

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\!!SPIS.doc

(06-03-31) 5

Debian GNU/Dinua 3.1. Liblia


Rozpoczynamy prac z powok systemu ............................................................................................73
Uruchamianie polece ....................................................................................................................73
Wykorzystanie mechanizmu automatycznego dopeniania wpisywanych polece .......................75
Korzystanie z dokumentacji polece powoki podrcznik man ................................................76
cieki i poruszanie si w systemie plikw ..........................................................................................79
Biecy katalog roboczy ................................................................................................................79
cieki wzgldne ............................................................................................................................80
Katalogi wirtualne ..........................................................................................................................81
Przegldanie zasobw systemu plikw ................................................................................................82
Wywietlanie plikw i katalogw ..................................................................................................82
Wydobywanie dodatkowych informacji przy uyciu polecenia stat ..............................................84
Cytowanie znakw oraz znaki ucieczki ................................................................................................85
Cytowanie znakw .........................................................................................................................85
Zastosowanie znakw ucieczki ......................................................................................................86
Zastosowanie symboli wieloznacznych oraz wzorcw dopasowania ..................................................87
Gwiazdki i znaki zapytania ............................................................................................................87
Sekwencje .......................................................................................................................................89
Zakresy znakw oraz listy ..............................................................................................................90
Operacje na systemie plikw ................................................................................................................91
Tworzenie katalogw .....................................................................................................................91
Usuwanie plikw i katalogw ........................................................................................................91
Przenoszenie plikw i zmiana ich nazw .........................................................................................92
Praca z powok dla rednio zaawansowanych ....................................................................................96
Zmienne i podstawianie zmiennych ...............................................................................................96
Aliasy polece ................................................................................................................................99
Podstawianie polece ...................................................................................................................100
Przekierowania strumienia danych ...............................................................................................101
Personalizacja powoki systemu .........................................................................................................103
Podsumowanie ....................................................................................................................................105
Rozdzia 4. Zarzdzanie pakietami oprorramowania ................................. 101
Anatomia pakietu oprogramowania ....................................................................................................108
Wsplne cechy pakietw ..............................................................................................................108
Pakiety Debiana ............................................................................................................................110
Repozytoria pakietw ...................................................................................................................112
Narzdzia do zarzdzania pakietami ..................................................................................................113
Wyszukiwanie oraz sprawdzanie pakietw ........................................................................................114
Wywietlanie listy zainstalowanych pakietw .............................................................................114
Wywietlanie szczegowych informacji o pakietach ..................................................................118
Wyszukiwanie informacji o pakietach za pomoc polecenia apt-cache ......................................120
Wyszukiwanie informacji o pakietach za pomoc polecenia aptitude .........................................120
Wyszukiwanie pakietw przy uyciu witryny internetowej Debiana ..........................................121
Instalacja pakietw .............................................................................................................................121
Instalowanie pakietw za pomoc polecenia apt-get ...................................................................122
Instalowanie pakietw przy uyciu polecenia aptitude ................................................................124
Usuwanie oraz czyszczenie pakietw .................................................................................................126
Usuwanie i czyszczenie pakietw za pomoc polecenia apt-get .................................................126
Usuwanie i czyszczenie pakietw za pomoc polecenia aptitude ................................................127
Konfiguracja pakietw oraz ich pliki konfiguracyjne ........................................................................128
Konfiguracja pakietw z uyciem debconf ..................................................................................129
Obsuga plikw konfiguracyjnych ...............................................................................................129

6 (06-03-31)

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\!!SPIS.doc

Spis treci

Aktualizacja pakietw oprogramowania ............................................................................................131


Aktualizacja pakietw oprogramowania przy uyciu polecenia apt-get ......................................132
Aktualizacja pakietw oprogramowania przy uyciu polecenia aptitude ....................................132
Sprawdzanie spjnoci pakietw ........................................................................................................133
Repozytoria pakietw a plik /etc/apt/sources.list ...............................................................................134
Jak apt wybiera pakiety ......................................................................................................................135
Zastosowanie wybranych pakietw z innych wyda ...................................................................135
/etc/apt/sources.list .......................................................................................................................135
Priorytety apt-cache ......................................................................................................................136
/etc/apt/preferences .......................................................................................................................136
Instalacja pakietw z wielu dystrybucji .......................................................................................138
Instalacja pakietw z wybranego rda ......................................................................................139
Instalacja (lub zachowywanie) wybranych wersji pakietw ........................................................139
Podsumowanie ....................................................................................................................................140
Rozdzia 5. Podstawy zarzdzania systemem Debian GNU/Dinua ............... 141
Uytkownik, grupa i zarzdzanie z poziomu konta uytkownika root ...............................................142
Konto uytkownika root ...............................................................................................................143
Dodawanie nowych kont uytkownikw oraz grup .....................................................................150
Usuwanie kont uytkownikw i grup ...........................................................................................151
Zarzdzanie grupami uytkownikw ...........................................................................................154
Podstawowe informacje o poczeniach sieciowych ..........................................................................156
IP Internet Protocol .................................................................................................................157
Przypisywanie nazwy komputera do jego adresu ........................................................................159
Interfejsy sieciowe ........................................................................................................................162
Podsumowanie ....................................................................................................................................165
Rozdzia 6. Tworzenie kopii bezpieczeestwa danych ................................. 161
Analiza potrzeb w zakresie tworzenia kopii bezpieczestwa .............................................................169
Projektowanie strategii tworzenia kopii bezpieczestwa ...................................................................170
Jakie dane chcesz kopiowa .........................................................................................................170
Gdzie przechowywa kopie bezpieczestwa danych ...................................................................173
Kiedy naley wykonywa kopi bezpieczestwa danych ............................................................186
Testowanie kopii bezpieczestwa ................................................................................................186
Podstawowe zasady tworzenia kopii bezpieczestwa ........................................................................188
Kompresja danych ........................................................................................................................188
Przyrostowe kopie bezpieczestwa ..............................................................................................189
Tworzenie kopii bezpieczestwa na dyskach sieciowych ............................................................190
Tworzenie kopii bezpieczestwa plikw, ktre s w uyciu .......................................................190
Oprogramowanie do tworzenia kopii bezpieczestwa danych ...........................................................191
Zastosowanie polecenia tar ..........................................................................................................191
Tworzenie kopii bezpieczestwa na dysku twardym przy uyciu polecenia rsync .....................195
Zastosowanie pakietu rdiff-backup ..............................................................................................196
Zastosowanie pakietu Amanda .....................................................................................................200
Tworzenie kopii bezpieczestwa przy uyciu pakietu rsnapshot .................................................203
Tworzenie kopii bezpieczestwa danych przy uyciu polecenia backuppc .................................208
Synchronizacja plikw midzy rnymi komputerami przy uyciu pakietu Unison ...................214
Inne pakiety oprogramowania do tworzenia kopii bezpieczestwa danych ................................216
Podsumowanie ....................................................................................................................................216

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\!!SPIS.doc

(06-03-31) 7

Debian GNU/Dinua 3.1. Liblia

Cz II II Li

z noI LIILIn ............................................... 219

Rozdzia 1. KonKiruracja karty rraKicznej i karty dwikowej ................... 221


Przedstawiamy XFree86 .....................................................................................................................222
Przygotowania do instalacji XFree86 ..........................................................................................223
Instalacja i konfiguracja XFree86 ................................................................................................226
Testowanie XFree86 i usuwanie problemw z jego funkcjonowaniem .......................................230
Instalacja i konfiguracja sterownikw karty dwikowej ..................................................................232
Instalacja i konfiguracja sterownikw ALSA ..............................................................................232
Ustawianie poziomu natenia dwiku ......................................................................................233
Testowanie karty dwikowej i usuwanie problemw zwizanych z jej funkcjonowaniem .......234
Podsumowanie ....................................................................................................................................235
Rozdzia 8. rodowiska rraKiczne GNOa oraz KD ..................................... 231
rodowisko graficzne GNOME ..........................................................................................................238
Instalacja rodowiska graficznego GNOME ................................................................................239
Korzystanie ze rodowiska graficznego GNOME .......................................................................244
Dopasowywanie rodowiska graficznego GNOME do indywidualnych wymaga uytkownika ....252
rodowisko graficzne KDE ................................................................................................................258
Instalacja rodowiska graficznego KDE ......................................................................................259
Korzystanie ze rodowiska graficznego KDE ..............................................................................260
Dopasowywanie rodowiska graficznego KDE do indywidualnych wymaga uytkownika .....266
Podsumowanie ....................................................................................................................................271
Rozdzia 9. iplikacje przeznaczone do wsppracy z sieci Internet ........ 213
Przegldanie zasobw sieci WWW ....................................................................................................274
Instalacja i korzystanie z przegldarki Epiphany .........................................................................275
Instalacja i korzystanie z przegldarki Firefox .............................................................................280
Instalacja i korzystanie z przegldarki Konqueror .......................................................................283
Wysyanie i odbieranie poczty elektronicznej ....................................................................................285
Instalacja i konfiguracja programu Evolution ..............................................................................286
Instalacja i konfiguracja programu KMail ...................................................................................288
Instalacja i konfiguracja programu Thunderbird ..........................................................................290
Komunikator internetowy Gaim .........................................................................................................291
Instalacja programu Gaim ............................................................................................................292
Konfiguracja programu Gaim ......................................................................................................292
Korzystanie z programu Gaim .....................................................................................................293
Podsumowanie ....................................................................................................................................293
Rozdzia 10. Tworzenie i publikowanie dokumentw ................................. 295
Zastosowanie jzykw znacznikowych ..............................................................................................295
groff ..............................................................................................................................................296
TeX oraz LaTeX ...........................................................................................................................297
HTML, SGML oraz XML ............................................................................................................298
Edycja tekstw przy uyciu pakietu OpenOffice.org .........................................................................298
Instalacja pakietu OpenOffice.org ................................................................................................299
Korzystamy z edytora OpenOffice.org Writer .............................................................................300
Wymiana dokumentw pakietu OpenOffice.org z innymi pakietami ..........................................303

8 (06-03-31)

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\!!SPIS.doc

Spis treci

Skadanie dokumentw przy uyciu pakietu Scribus .........................................................................304


Tworzenie stron HTML przy uyciu pakietu Quanta+ ......................................................................305
Skanowanie dokumentw i rozpoznawanie pisma .............................................................................307
Instalowanie pakietu SANE .........................................................................................................307
Wybrane interfejsy uytkownika pakietu SANE .........................................................................308
Podsumowanie ....................................................................................................................................309
Rozdzia 11. FotorraKia cyKrowa i multimedia ............................................ 311
Uywanie cyfrowych aparatw fotograficznych z gPhoto2 ...............................................................312
Powoka gPhoto2 ..........................................................................................................................313
Nakadki graficzne na gPhoto2 ....................................................................................................313
Uywanie aplikacji graficznych w Debianie ......................................................................................315
GIMP ............................................................................................................................................315
Grafika wektorowa w Inkscape ....................................................................................................316
Uywanie Debiana do edycji dwiku ...............................................................................................317
Aplikacje wymagajce bezporedniego dostpu do karty dwikowej .......................................318
Rozwizywanie problemw .........................................................................................................319
Odtwarzacz XMMS ......................................................................................................................319
MIDI .............................................................................................................................................321
Uywanie Debiana do obsugi wideo .................................................................................................321
Odtwarzacz wideo xine ................................................................................................................322
Ogldanie telewizji .......................................................................................................................323
Wypalanie pyt CD i DVD ...........................................................................................................323
Tworzenie wasnych filmw ........................................................................................................324
Podsumowanie ....................................................................................................................................324
Rozdzia 12. Gry ............................................................................................. 325
Klasyczne gry uniksowe .....................................................................................................................325
Gry typu rogue .............................................................................................................................326
Gry przygodowe i interaktywne opowiadania .............................................................................327
Emulatory ...........................................................................................................................................329
Sinclair Spectrum .........................................................................................................................330
Atari 2600 .....................................................................................................................................330
Nintendo Entertainment System ...................................................................................................330
Komputery Commodore ...............................................................................................................331
Gry DOS .......................................................................................................................................331
Gry Windows ...............................................................................................................................331
Gry przeznaczone dla Linuksa ...........................................................................................................335
Gry dla dzieci ...............................................................................................................................335
Ukadanki i gry logiczne ..............................................................................................................337
Gry planszowe ..............................................................................................................................338
Gry strategiczne ............................................................................................................................339
Pydance ........................................................................................................................................339
Strzelanki ......................................................................................................................................340
Kilka dodatkowych gier ...............................................................................................................341
Komercyjne gry w Linuksie ...............................................................................................................341
Podsumowanie ....................................................................................................................................342

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\!!SPIS.doc

(06-03-31) 9

10

Debian GNU/Dinua 3.1. Liblia

Cz III Snrnr I Cnr nCo ..................................................... 343


Rozdzia 13. Lezpieczeestwo sieci ................................................................ 345
Przegld teorii .....................................................................................................................................346
Udzielanie dostpu: identyfikacja, uwierzytelnienie, autoryzacja i kontrola ...............................346
Upewnianie si, e nie zdarzy si najgorsze ................................................................................349
Upewnianie si, e najgorsze nie jest takie ze ............................................................................352
Upewnianie si, e mona odzyska dane ....................................................................................352
Zabezpieczenia brzegw a zabezpieczenia oglne ......................................................................353
Rodzaje atakw ...................................................................................................................................353
Strategie zabezpieczania .....................................................................................................................357
Odizolowanie ...............................................................................................................................357
Odporno na bdy ......................................................................................................................358
Otrzymywanie pomocy ................................................................................................................359
Przykadowe procedury zabezpiecze ................................................................................................362
Pierwsza linia obrony: podstawowe oprogramowanie systemowe
oraz przykadowe praktyki planowania ....................................................................................362
Druga linia obrony: zapora ogniowa ............................................................................................363
Trzecia linia obrony: demony ......................................................................................................368
Podsumowanie ....................................................................................................................................371
Rozdzia 14. Serwery pocztowe .................................................................... 313
Podstawy poczty elektronicznej .........................................................................................................374
Standardowa struktura wiadomoci poczty elektronicznej ..........................................................374
Wysyanie i odbieranie poczty elektronicznej ..............................................................................378
Demon MTA Exim .............................................................................................................................384
Konfigurowanie demona Exim ....................................................................................................385
Plik konfiguracyjny demona Exim ...............................................................................................388
Dostarczanie poczty przy uyciu demona Exim ..........................................................................397
Uywanie serwerw wirtualnych z demonem Exim ....................................................................401
Inne demony MTA .............................................................................................................................402
Sendmail .......................................................................................................................................402
Postfix ...........................................................................................................................................403
ssmtp .............................................................................................................................................403
Podsumowanie ....................................................................................................................................403
Rozdzia 15. Serwowanie stron aaa .......................................................... 405
Apache ................................................................................................................................................405
Instalowanie i konfigurowanie Apache 1.3 ........................................................................................407
Instalowanie Apache 1.3 ..............................................................................................................407
Konfigurowanie Apache 1.3 ........................................................................................................408
Instalowanie i konfigurowanie Apache 2.0 ........................................................................................415
Instalowanie Apache 2.0 ..............................................................................................................416
Konfigurowanie Apache 2.0 ........................................................................................................417
Apache a Perl, Python i PHP ..............................................................................................................421
Wykorzystywanie Perla na serwerze Apache ..............................................................................421
Wykorzystywanie Python na serwerze Apache ...........................................................................424
Wykorzystywanie PHP na serwerze Apache ...............................................................................426
Obsugiwanie zawartoci statycznej za pomoc serwera Boa ............................................................429
Instalowanie Boa ..........................................................................................................................429
Konfigurowanie Boa ....................................................................................................................430
Podsumowanie ....................................................................................................................................432

10 (06-03-31)

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\!!SPIS.doc

Spis treci

11

Rozdzia 16. Usuri transKeru plikw ............................................................ 433


Dziaanie serwera FTP ........................................................................................................................433
Dostarczanie usug FTP poprzez vsftpd .............................................................................................435
Instalowanie vsftpd ......................................................................................................................436
Konfigurowanie vsftpd .................................................................................................................437
Serwer FTP z uyciem ProFTPD .......................................................................................................442
Instalowanie ProFTPD .................................................................................................................443
Konfigurowanie ProFTPD ...........................................................................................................445
Testowanie konfiguracji domylnej .............................................................................................446
Zaawansowana konfiguracja ProFTPD ........................................................................................450
Uywanie bezpiecznego FTP .............................................................................................................455
Uywanie serwera SSH sftp .........................................................................................................455
Podsumowanie ....................................................................................................................................456
Rozdzia 11. System nazw domeny ............................................................... 451
DNS i BIND .......................................................................................................................................458
Podstawowy i pomocnicze serwery DNS ....................................................................................459
Przegldanie sieci .........................................................................................................................460
Instalowanie BIND .............................................................................................................................461
Tworzenie plikw strefy ...............................................................................................................461
Serwer pomocniczy DNS .............................................................................................................466
Modyfikowanie pliku resolv.conf ................................................................................................469
Testowanie konfiguracji ...............................................................................................................469
Utrzymywanie ..............................................................................................................................470
Podsumowanie ....................................................................................................................................470
Rozdzia 18. Dostp zdalny ........................................................................... 411
Dostp zdalny w przeszoci ...............................................................................................................472
SSH bezpieczna powoka ..............................................................................................................473
Uruchamianie ...............................................................................................................................474
Uwierzytelnienie ..........................................................................................................................475
Przesyanie plikw .......................................................................................................................477
Ekscytujcy wiat przekierowania portw ...................................................................................478
Przekierowanie pocze X-owych ....................................................................................................482
Oglne przekierowanie pocze X-owych .................................................................................483
Bezpieczne przekierowanie pocze X-owych z uyciem SSH .................................................484
Graficzny dostp zdalny VNC ............................................................................................................484
Podsumowanie ....................................................................................................................................486

Cz IV Snrnr sInLIo ........................................................... 484


Rozdzia 19. Stacje robocze w sieci i dostp do Internetu ......................... 489
Przydzielanie adresw za pomoc DHCP ..........................................................................................489
Instalacja DHCP ...........................................................................................................................490
Przydzielanie statycznych adresw IP .........................................................................................491
Przydzielanie dynamicznych adresw IP .....................................................................................491
Przydzielanie adresw za pomoc radvd ............................................................................................492
Serwery proxy .....................................................................................................................................492
Wirtualne sieci prywatne (VPN) ........................................................................................................494
Zastosowanie PPTP ......................................................................................................................494
Zastosowanie IPsec ......................................................................................................................495
Podsumowanie ....................................................................................................................................495

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\!!SPIS.doc

(06-03-31) 11

12

Debian GNU/Dinua 3.1. Liblia


Rozdzia 20. Udostpnianie i wspdzielenie plikw ................................... 491
Rozproszone systemy plikw .............................................................................................................497
Sieci Windows i Samba ......................................................................................................................499
Instalacja Samby ..........................................................................................................................499
Konfiguracja Samby .....................................................................................................................499
Udostpnianie katalogw w Sambie ............................................................................................503
Repozytoria plikw w NFS ................................................................................................................506
Poznajemy NFS ............................................................................................................................506
Konfiguracja serwera NFS ...........................................................................................................509
Konfiguracja klienta NFS .............................................................................................................515
Przykadowy klient NFS ..............................................................................................................517
Podsumowanie ....................................................................................................................................518
Rozdzia 21. OpenDDiP .................................................................................. 519
Czym jest OpenLDAP? ......................................................................................................................520
Model danych OpenLDAP .................................................................................................................521
Serwer OpenLDAP .............................................................................................................................522
Testowanie instalacji ....................................................................................................................525
Dodawanie wpisw do bazy danych ............................................................................................525
Podczanie si do serwera katalogowego z systemw linuksowych ................................................528
Korzystanie z globalnej ksiki adresowej .........................................................................................529
Podsumowanie ....................................................................................................................................531
Rozdzia 22. Serwery pocztowe .................................................................... 533
Dostarczanie usug pocztowych .........................................................................................................533
Serwer pocztowy IMAP .....................................................................................................................536
Instalacja serwera IMAP4 ............................................................................................................536
Konfiguracja serwera IMAP4 ......................................................................................................537
Konfiguracja Exima do wsppracy z katalogiem poczty ............................................................538
Testowanie serwera IMAP ...........................................................................................................540
Konfiguracja serwera pocztowego POP3 ...........................................................................................541
Instalacja serwera POP3 ...............................................................................................................542
Testowanie serwera POP3 ............................................................................................................544
Podsumowanie ....................................................................................................................................545
Rozdzia 23. Usuri drukowania .................................................................... 541
Czym s usugi drukowania? ..............................................................................................................547
Wybr systemu druku ..................................................................................................................548
Kolejkowanie zada wydruku ......................................................................................................548
Lpd i lpr ..............................................................................................................................................550
Konfiguracja lpd i lpr ...................................................................................................................550
Testowanie drukarki .....................................................................................................................551
Instalacja i konfiguracja CUPS ...........................................................................................................551
Korzystanie z CUPS za pomoc interfejsu WWW ......................................................................552
Dodawanie drukarki za pomoc interfejsu WWW .......................................................................553
Korzystanie z CUPS z wiersza polece .......................................................................................556
Wci nie dziaa? .........................................................................................................................558
Zarzdzanie procesem drukowania ....................................................................................................558
Uruchamianie i zatrzymywanie kolejek druku .............................................................................558
Przyznawanie i ograniczanie dostpu do drukarki .......................................................................559

12 (06-03-31)

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\!!SPIS.doc

Spis treci

13

Przyjmowanie i odrzucanie zada druku .....................................................................................560


Wyznaczenie drukarki domylnej ................................................................................................560
Ustawianie limitw drukarki ........................................................................................................560
Klasy drukarek ....................................................................................................................................561
Konfiguracja klienta ...........................................................................................................................562
Konfiguracja automatyczna ..........................................................................................................562
Konfiguracja rczna .....................................................................................................................563
Drukowanie jednoserwerowe .......................................................................................................563
Drukowanie wieloserwerowe .......................................................................................................564
Drukowanie przekazujce ............................................................................................................564
Dodatkowa konfiguracja CUPS ..........................................................................................................565
Zmiana instrukcji ..........................................................................................................................565
Zmiana konfiguracji klienta .........................................................................................................565
Podsumowanie ....................................................................................................................................567
Rozdzia 24. Serwery baz danych ................................................................. 569
Wybr serwera ....................................................................................................................................570
PostgreSQL .........................................................................................................................................570
Instalacja PostgreSQL ..................................................................................................................571
Tworzenie baz danych i uytkownikw .......................................................................................571
Konfiguracja zasad dostpu .........................................................................................................572
Testowanie dostpu ......................................................................................................................574
Usuwanie baz danych i uytkownikw ........................................................................................575
Aktualizacja PostgreSQL .............................................................................................................576
Tworzenie kopii zapasowych PostgreSQL ..................................................................................576
MySQL ...............................................................................................................................................577
Instalacja MySQL ........................................................................................................................577
Konfiguracja MySQL ...................................................................................................................577
Tworzenie baz danych ..................................................................................................................578
Zapytania interaktywne ................................................................................................................578
Konfiguracja uytkownikw ........................................................................................................579
Usuwanie baz danych ...................................................................................................................581
Archiwizacja baz danych .............................................................................................................581
Narzdzia klienta ................................................................................................................................582
Podsumowanie ....................................................................................................................................582

Cz V Rozz nVIz z ............................................................. 583


Rozdzia 25. Spoeczno Debiana ................................................................ 585
Krtka historia Debiana ......................................................................................................................585
Organizacja projektu Debian ..............................................................................................................590
Lider projektu, delegaci i inni przedstawiciele ............................................................................591
Oprogramowanie w Interesie Publicznym ...................................................................................591
Katedra i bazar .............................................................................................................................591
Debian jako platforma biznesowa ................................................................................................592
Polityka Debiana ..........................................................................................................................593
Deweloperzy Debiana ..................................................................................................................593
Zgaszanie bdw ..............................................................................................................................595
Podsumowanie ....................................................................................................................................598

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\!!SPIS.doc

(06-03-31) 13

14

Debian GNU/Dinua 3.1. Liblia


Rozdzia 26. Ludowanie pakietw ................................................................ 599
Niezbdne narzdzia ...........................................................................................................................599
Inne formaty pakietw ........................................................................................................................601
Pakietowanie jdra ..............................................................................................................................602
Przebudowa istniejcego pakietu ........................................................................................................606
Budowanie pakietu od podstaw ..........................................................................................................608
Niektre dodatkowe pakiety .........................................................................................................608
Tworzenie infrastruktury pakietu .................................................................................................609
Katalog Debian ...................................................................................................................................610
Plik control ...................................................................................................................................610
Plik rules .......................................................................................................................................612
Plik changelog ..............................................................................................................................622
Plik copyright ...............................................................................................................................623
Plik compat ...................................................................................................................................624
Skrypty pakietu ............................................................................................................................625
Plik README.Debian .................................................................................................................625
Plik dirs ........................................................................................................................................625
Plik docs .......................................................................................................................................626
Plik menu ......................................................................................................................................626
Plik watch .....................................................................................................................................627
Strony podrcznika .......................................................................................................................627
doc-base ........................................................................................................................................627
conffiles ........................................................................................................................................628
Pozostae pliki ..............................................................................................................................628
Budowanie pakietu .............................................................................................................................628
Podpisywanie pakietu ...................................................................................................................630
Kontrola jakoci ...........................................................................................................................631
Budowanie caoci ........................................................................................................................632
Tworzenie pakietw fikcyjnych .........................................................................................................632
Podsumowanie ....................................................................................................................................633
Rozdzia 21. irchiwa Debiana ....................................................................... 635
Udostpnianie pakietw w projektach Open Source ..........................................................................635
SourceForge .................................................................................................................................636
Alioth ............................................................................................................................................637
Mentors.debian.net .......................................................................................................................638
Savannah ......................................................................................................................................638
BerliOS .........................................................................................................................................638
Wasne archiwum pakietw ................................................................................................................638
Proste archiwum ...........................................................................................................................639
Archiwum zoone .......................................................................................................................640
Archiwum w stylu Debiana ..........................................................................................................641
Plik Release ..................................................................................................................................641
Ogaszanie pakietw ...........................................................................................................................643
Podsumowanie ....................................................................................................................................644

odzCkI ........................................................................................ 645


Dodatek i Zawarto pyt CD ....................................................................... 641
Dodatek L Statut Debiana ............................................................................. 651
Skorowidz ...................................................................................................... 665

14 (06-03-31)

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\!!SPIS.doc

W rozdziale m.in.:
t

Korzystanie z konta uytkownika root

Dodawanie nowych kont uytkownikw oraz grup

Usuwanie kont uytkownikw oraz grup

Podstawowe informacje o poczeniach sieciowych

Zarzdzanie wspczesnymi systemami operacyjnymi jest bardzo zoonym zagadnieniem, mimo e idea leca u jego podstaw jest trywialnie prosta i spotykana rwnie w wielu
innych rodowiskach: po pierwsze, nie szkodzi a diabe jak zwykle tkwi w szczegach.
W niniejszym rozdziale omwimy szereg zagadnie zwizanych z zarzdzaniem nowoczesnym systemem operacyjnym, ze szczeglnym uwzgldnieniem systemw Debian.
Zasady, ktre tutaj poznasz, powinny mie zastosowanie w kadym innym systemie
GNU/Linux, nawet jeeli bd si rni pewnymi szczegami. Jeeli nie jeste administratorem swojego systemu ani nie zajmujesz si adnym innym systemem (np. zdalnym),
to w zasadzie moesz spokojnie pomin ten rozdzia, cho i tak serdecznie zachcamy
Ci do jego lektury posiadajc wiedz przedstawion w tym rozdziale, bdziesz
w stanie lepiej zrozumie niektre decyzje, jakie podejmowa bd podejmuje administrator Twojego systemu, a by moe nawet bdziesz w stanie zasugerowa mu kilka
ciekawych rozwiza.
Podobnie jak ma to miejsce w przypadku lekarza, administrator systemu komputerowego
jest w zasadzie odpowiedzialny za dobre samopoczucie innych jego uytkownikw. Jeeli dany administrator pracuje w danej firmie, to zapewne jednym z jego najwaniejszych zada bdzie zapewnienie spjnoci, bezpieczestwa oraz prywatnoci poufnych
danych swojej firmy, a take (a moe przede wszystkim) danych klienta. Nietrudno si
domyli, e niewaciwie funkcjonujca infrastruktura elektronicznych systemw przetwarzania danych, niezbdnych do prawidowego przebiegu procesw biznesowych danej

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

(06-03-31)

141

142

Cz I t Podstawy

firmy, moe kosztowa pracownikw utrat miejsc pracy, poniewa z pewnoci firma
taka nie bdzie w stanie utrzyma poprawnych kontaktw ze swoimi klientami. Nie
trzeba tutaj chyba specjalnie wyjania, dlaczego bdy administratora systemw komputerowych pracujcych w rodowiskach krytycznych (np. systemy komputerowe szpitali czy te systemy militarne) mog kosztowa czyje ycie, a z kolei jego prawidowe
decyzje mog czyje ycie uratowa.
Zdecydowana wikszo administratorw systemw komputerowych na szczcie nie
musi pracowa w takich warunkach wysokiego stresu, co jednak w niczym nie zmienia
faktu, e kady administrator powinien profesjonalnie traktowa swoje obowizki, nawet jeeli podejmowane przez niego kroki na pierwszy rzut oka mogyby si wydawa
nieco przesadzone. Sabe i nieudolne zarzdzanie systemem komputerowym moe w rezultacie doprowadzi do jego przejcia przez potencjalnych wamywaczy i hakerw (w zym
tego sowa znaczeniu) i wykorzystania go do rnych niecnych celw; taka moliwo
cichego przejcia kontroli nad danym systemem wymaga od administratorw czujnoci
i dowiadczenia.

Fundamentalnym zaoeniem systemw wielouytkownikowych, takich jak Debian


GNU/Linux, jest zasada separacji uprawnie (ang. privilege separation). Poniewa jednak
kady proces dziaajcy w danym systemie moe mie dostp do innych czci systemu
i prawa do ich modyfikacji, to model separacji uprawnie napotyka tutaj na coraz to
nowe, pitrzce si problemy. W takim modelu bd wystpujcy w nawet najmniejszej,
najbardziej niewinnej aplikacji moe teoretycznie spowodowa usunicie wszystkich
danych przechowywanych w danym systemie czy te umoliwi danemu uytkownikowi
nieautoryzowany, peny dostp do wszystkich danych innych uytkownikw. Domylnie
system kontroli dostpu w systemie Debian GNU/Linux jest oparty na kontach uytkownikw i grupach. Dostp do poszczeglnych zasobw jest determinowany przez konto
uytkownika oraz grupy uytkownikw, ktrych dany uytkownik jest czonkiem. Kady
proces uruchomiony przez danego uytkownika posiada dokadnie takie same prawa jak
dany uytkownik. Z wyjtkiem kilku specjalnych sytuacji dany uytkownik nie ma moliwoci uruchamiania aplikacji na prawach innego uytkownika.
System Linux potrafi obsugiwa rne modele separacji uprawnie; jednym
z najbardziej ostatnimi czasy popularnych jest SELinux, czyli w penej nazwie Security
Enhanced Linux opracowany w Stanach Zjednoczonych przez tamtejsz Narodow
Agencj Bezpieczestwa (ang. National Security Agency). SELinux mocno wykracza
nawet poza standardowy model separacji uprawnie oprcz tradycyjnego
mechanizmu kont uytkownikw oraz grup uytkownikw pozwala administratorowi
na szczegowe zdefiniowanie rodzaju operacji, jakie dana aplikacja moe wykonywa
na okrelonych zasobach systemowych. Wicej szczegowych informacji na temat
dystrybucji SELinux znajdziesz na stronie http://www.nsa.gov/selinux/, z kolei
na stronie http://www.lurking-grue.org/gettingstarted_newselinuxHOWTO.html
znajdziesz sporo ciekawych informacji na temat sposobu instalacji oraz
wykorzystywania systemu SELinux opartego na dystrybucji Debian.

142 (06-03-31)

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

Rozdzia 5. t Podstawy zarzdzania systemem Pedian y zarindz

143

Separacja uprawnie jest widoczna w kadej czci systemu Debian; procesy dziaajce
nieprzerwanie, takie jak np. serwery WWW, zazwyczaj posiadaj swoje wasne konto
uytkownika oraz grup w podobny sposb funkcjonuje wiele innych procesw. Innym przykadem moe by dostp do poszczeglnych urzdze sprztowych (takich jak
np. karta dwikowa czy karta graficzna), ktry rwnie jest kontrolowany poprzez odpowiednie grupy, dziki czemu Ty oraz wybrani uytkownicy macie bezporedni dostp
do takich urzdze, podczas gdy aplikacje niezwizane z danym zadaniem mog by
takiego dostpu pozbawione.

Konto uytkownikK noot


Konto uytkownika root, czy te inaczej mwic konto superuytkownika, jest tradycyjnym
kontem administratora systemu od samego pocztku istnienia systemw GNU/Linux.
Uytkownik zalogowany na tym koncie ma pene prawa do sprawdzenia i modyfikacji
dowolnie wybranej czci systemu. Za takimi uprawnieniami idzie jednak dua odpowiedzialno: kiedy pracujesz na koncie root, znaczco ronie prawdopodobiestwo, e
system zostanie przypadkowo uszkodzony bd nawet cakowicie zniszczony, wczajc w to potencjalne usunicie danych, ktrych ju nigdy nie bdziesz w stanie odzyska.
W przypadku pracy na komputerze domowym zazwyczaj Ty sam jeste administratorem
swojego systemu i tym samym to wanie Ty korzystasz z konta root; z kolei jeeli pracujesz w jakiej firmie, to taka rola niekoniecznie musi przypa Tobie.
Oglnie mwic, konto uytkownika root powinno by uywane tylko w sytuacjach, gdy
jest to absolutnie konieczne. Redukcja zapotrzebowania na uywanie konta root w codziennej pracy jest przedmiotem wielu obecnie dziaajcych projektw GNU/Linux. Nie
zmienia to jednak w niczym faktu, e uywanie konta root do normalnych, codziennych
zada jest praktyk niemale powszechn. Bezpieczestwo pracy jest oczywicie niezmiernie istotnym czynnikiem, ale z drugiej strony wygoda i atwo pracy z systemem
jest rwnie czynnikiem nie bez znaczenia. Za kadym razem, kiedy podczas pracy pojawia si na ekranie komunikat, e nie masz odpowiednich uprawnie do wykonania
danej operacji, ronie prawdopodobiestwo, e bdziesz chcia skorzysta z uprawnie
konta uytkownika root.
Jeli ju musisz uy konta root, to zalecanym sposobem postpowania jest jednoczesne
prowadzenie gdzie w pliku szczegowych notatek na temat przeprowadzanych operacji, tak aby w momencie, kiedy popenisz jaki bd, mia moliwo sprawdzenia, jakie operacje wykonywae ostatnio i w jaki sposb przywrci funkcjonalno systemu.
Jeeli w danym systemie pracuje wicej ni jeden administrator, to prowadzenie takiego
dziennika operacji na koncie root staje si tym bardziej istotne pozwala innym administratorom na sprawdzenie, jakie operacje zostay wykonane przez Ciebie i odwrotnie,
pozwala Tobie na zorientowanie si, czego dokonali Twoi zmiennicy.

Szybki doSzyb do obtpSiyb koSz opyzkopSik tooz


W zasadzie istniej dwie gwne metody uzyskania uprawnie zwizanych z kontem
uytkownika root: pena sesja zwizana z zalogowaniem si na koncie uytkownika root
(o ktrej opowiemy bardziej szczegowo w podrozdziale Pena sesja uytkownika root
w dalszej czci rozdziau) lub te chwilowe podniesienie uprawnie na czas wykonania

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

(06-03-31)

143

144

Cz I t Podstawy

pojedynczych polece, o czym powiemy za chwil. Ta ostatnia metoda podnoszenia


uprawnie jest bardzo elastyczna i ma liczne bardzo przydatne funkcje, takie jak umoliwienie ledzenia wykonywanych operacji, pliki konfiguracyjne dostosowane do indywidualnych wymaga poszczeglnych administratorw, wspdzielenie sesji X11 i wiele
innych.
Instalacja i konfiguracja pakietu sudo
Pakiet sudo pozwala administratorowi na zapewnienie sobie (podczas codziennej pracy
na normalnym, regularnym koncie) i innym, uprawnionym uytkownikom moliwoci
uruchamiania poszczeglnych polece i aplikacji na prawach konta uytkownika root.
Pakiet ten rejestruje rwnie wszystkie polecenia, ktre zostay wykonane via polecenie
sudo, tworzc w ten sposb znakomity dziennik wykonywanych operacji. Wreszcie, korzystanie z polecenia sudo jest bardzo proste. Dziki temu, e sudo domylnie zachowuje zmienne rodowiskowe takie jak $HOME czy $XAUTHORITY, pakiet sudo jest obecnie
jednym z najlepszych i najwygodniejszych sposobw uruchamiania poszczeglnych
polece i aplikacji z poziomu uprawnie uytkownika root.
Aby zainstalowa pakiet sudo, powiniene wykona polecenie apt-get install sudo.
Instalacja tego pakietu nie wymaga adnej interakcji ze strony uytkownika, std nie
zamieszczalimy tutaj adnych komunikatw, jakie mog pojawia si w czasie instalacji.
Jedynym komunikatem, o ktrym warto jednak tutaj wspomnie, jest komunikat informujcy, e wanie tworzony jest domylny plik /etc/sudoers. Plik ten jest tak naprawd
plikiem konfiguracyjnym polecenia sudo i odpowiada za to, kto moe korzysta z polecenia sudo oraz jakie polecenia moe uruchamia. Poniewa nawet przypadkowy bd
w tym pliku stanowi powany problem z punktu widzenia bezpieczestwa systemu, to
plik konfiguracyjny polecenia sudo nie moe by normalnie edytowany.
W wikszoci przypadkw bdziesz jednak chcia dokona odpowiedniej modyfikacji
domylnej zawartoci pliku /etc/sudoers, tak aby mg korzysta z polecenia sudo podczas pracy na normalnym, regularnym koncie uytkownika oczywicie po zainstalowaniu system nie bdzie automatycznie tak skonfigurowany. Aby mie moliwo
zmiany zawartoci pliku /etc/sudoers, powiniene z poziomu uprawnie uytkownika
root wykona polecenie visudo. Polecenie to na podstawie zmiennych rodowiskowych
$VISUAL oraz $EDITOR wybiera domylny edytor i otwiera w nim tymczasow kopi pliku /etc/sudoers do edycji. Jeeli chcesz zmieni domylny edytor tekstu, to powiniene
przykadowo wykona polecenie export EDITOR=nano. Po zakoczeniu edycji pliku
i wyjciu z edytora polecenie visudo sprawdzi skadni poszczeglnych wpisw, aby
bya pewno, e nie zosta popeniony aden bd. Jeeli skadnia wpisw jest poprawna, to zostaj one przeniesione do waciwego pliku /etc/sudoers i proces zostaje zakoczony; jeeli skadnia nie jest poprawna, to zostaniesz poproszony o anulowanie wprowadzonych zmian bd poprawienie bdnych wpisw w pliku tymczasowym.
Domylna zawarto pliku /etc/sudoers powinna by identyczna bd te bardzo zbliona
do tej przedstawionej poniej:
# sudoers file.
#
# This file MUST be edited with the "visudo" command as root.
#

144 (06-03-31)

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

Rozdzia 5. t Podstawy zarzdzania systemem Pedian y zarindz

145

# See the man page for details on how to write a sudoers file.
#
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root
ALL=(ALL) ALL

Jak wida, w zdecydowanej wikszoci zawarto tego pliku stanowi komentarze i puste wiersze. Podobnie jak to ma miejsce w wielu innych plikach konfiguracyjnych systemu Debian, wszystkie wiersze, ktre rozpoczynaj si od znaku #, bd te cigi znakw, ktre wystpuj w dowolnym wierszu po znaku #, s traktowane jako komentarz
i ignorowane przez powok. Pierwsze trzy wiersze komentarzy powinny by oczywiste1.
Kolejne trzy wiersze, czyli specyfikacja hosta (ang. Host), uytkownika (ang. User)
oraz polecenia (ang. Command) wskazuj na sugerowan struktur wpisw w tym pliku. Najbardziej interesujcy jest ostatni wiersz, stanowicy ca, efektywn, domyln
konfiguracj pliku sudoers. Wpis ten umoliwia uytkownikowi root uruchamianie dowolnych polece, na dowolnych hostach i na prawach dowolnych uytkownikw. Taki
rodzaj wiersza definiuje uprawnienia danego uytkownika, czyli inaczej mwic okrela,
ktry uytkownik ma jakie uprawnienia oraz na jakich hostach. Na rysunku 5.1 przedstawiono krtki opis poszczeglnych elementw wpisw, jakie moesz znale w pliku sudoers.
Rysdnek 5.1.
Specyfikacja
przywilejw
dla polecenia sudo

Jak zapewne zauwaye, skadniki wiersza przedstawionego na rysunku 5.1 ujawniaj


kilka ciekawych sekretw. Pierwszy element, alias uytkownika (ang. User_Alias), sam
w sobie nie jest zbyt ciekawy, ale za to nie mona tego powiedzie o jego pozostaych
trzech towarzyszach. Drugi element, alias hosta (ang. Host_Alias), wskazuje, e jeden
plik /etc/sudoers moe by wykorzystywany przez wiele rnych komputerw. Nazwy
tych komputerw s nastpnie sprawdzane przez polecenie sudo i dziki takiemu rozwizaniu moesz w bardzo elastyczny i wygodny sposb ogranicza dostp na jednych
maszynach i jednoczenie odpowiednio poszerza dostp na innych maszynach. Trzeci
element (ang. Runas_Alias) pozwala na zdefiniowanie nazwy konta uytkownika, na
ktrego prawach bd uruchamiane polecenia zdefiniowane w kolejnej czci wpisu.
Zapis taki wskazuje, e polecenie sudo moe by wykorzystywane do uruchamiania
1

# sudoers file plik sudoers; # This file MUST be edited with ten plik MUSI by edytowany
przy uyciu polecenia visudo wywoywanego przez uytkownika root; # See the man page for details
wicej informacji na temat tworzenia pliku sudoers znajdziesz na stronach podrcznika man przyp. tum.

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

(06-03-31)

145

146

Cz I t Podstawy

wybranych polece przez uytkownikw innych ni root. Jest to szczeglnie uyteczne


podczas rozwizywania problemw zwizanych z prawami dostpu innych uytkownikw. Czwarty skadnik, lista polece (ang. Cmnd_Alias), pozwala na ograniczenie rozszerzonych praw dostpu tylko do wybranych polece. Jest to bardzo bezpieczny sposb na nadanie uytkownikowi dodatkowych, zwikszonych uprawnie; przykadowo,
moesz z tego skorzysta w sytuacji, kiedy jedyny komputer dysponujcy poczeniem
typu dial-up z sieci Internet ma kilku uytkownikw i kady z nich musi mie moliwo nawizania odpowiedniego poczenia modemowego. Krtko mwic, skadnia
wpisw w pliku sudoers jest nastpujca:
Alias_uytkownika

Alias_hosta=(Alias_konta_uruchamiajcego_polecenia) Lista_polece

Poszczeglne elementy skadowe s nazywane aliasami, poniewa mog si odnosi


bezporednio do uytkownikw, hostw i polece, ale rwnie dobrze mog by zastpione specjalnymi sowami kluczowymi, jak np. ALL2, bd mog odwoywa si do list.
Do list mog zosta rwnie przypisane odpowiednie sowa kluczowe. Przykadowo,
wykonanie polecenia przedstawionego poniej spowoduje, e uytkownik franek otrzyma
prawa do uruchamiania polece /bin/ls oraz /bin/cp na prawach uytkownikw root lub
daemon na komputerach (hostach) o nazwach helios i antares:
franek

helios, antares = (root, daemon) /bin/ls, /bin/cp

Pokaemy Ci teraz, w jaki sposb moesz nada dla swojego normalnego, nieuprzywilejowanego konta uytkownika moliwo uruchamiania poprzez polecenie sudo dowolnych innych polece na prawach uytkownika root. Poniewa i tak masz moliwo
zalogowania si bezporednio na konto uytkownika root, to nie ma adnego sensu, aby
z poziomu Twojego normalnego konta uytkownika ogranicza Ci w jakikolwiek sposb dostp do konta root. Aby tego dokona, powiniene do pliku /etc/sudoers doda
przedstawiony poniej wiersz, z tym e cig znakw nazwakonta powiniene zastpi
prawdziw nazw swojego konta uytkownika. Pamitaj, e jeeli chcesz zmodyfikowa zawarto pliku /etc/sudoers, to musisz najpierw na prawach uytkownika root wykona polecenie visudo:
nazwakonta

ALL=(ALL) ALL

Zapisz zmodyfikowany plik; od tego momentu powiniene mie moliwo wykonywania poprzez polecenie sudo dowolnych polece na prawach uytkownika root z poziomu swojego normalnego, nieuprzywilejowanego konta uytkownika. Jeeli chcesz si
dowiedzie, jak utworzy nieco bardziej zaawansowan zawarto pliku /etc/sudoers,
na przykad aby da niektrym wybranym uytkownikom ograniczone prawa uytkownika root, powiniene zapozna si z treci podrcznika man dla polecenia sudo. Moesz j wywietli na ekranie, wykonujc polecenie man 5 sudoers.
Zastosowanie polecenia sudo
Teraz, kiedy polecenie sudo jest ju zainstalowane i w peni skonfigurowane na Twoim
komputerze, moesz (a w zasadzie nawet powiniene) korzysta z niego do wykonywania codziennych zada zwizanych z zarzdzaniem systemem. Wyloguj si z konta root,
a nastpnie zaloguj si na swoje normalne, nieuprzywilejowane konto. Aby zapozna si
ze sposobem dziaania polecenia sudo, powiniene teraz wykona nastpujce polecenie:
2

Z ang.: wszyscy przyp. tum.

146 (06-03-31)

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

Rozdzia 5. t Podstawy zarzdzania systemem Pedian y zarindz

147

helion@debian:~$ sudo whoami


We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
Password:

Po pojawieniu si na ekranie znaku zachty powiniene wpisa swoje haso uytkownika.


Jeeli wszystko podae poprawnie, to sudo wykona polecenie bdce jego argumentem
(w naszym przypadku jest to polecenie whoami) na prawach uytkownika root.
Od tego momentu zakadamy, e jeste zalogowany na swoje normalne,
nieuprzywilejowane konto uytkownika, a nie konto uytkownika root. Jeeli uycie
konta uytkownika root bdzie niezbdne, to kadorazowo bdziemy Ci o tym
dokadnie informowa.

Polecenie sudo moe by wykorzystywane bardzo czsto i w zasadzie moe dziaa jak
alternatywne rozwizanie w stosunku do cigej pracy na koncie uytkownika root
z tym e teraz bezpieczestwo caego systemu nie zostao powicone na otarzu wygody
bd niefrasobliwoci jego administratora
Gdy uruchamiasz polecenie sudo po raz pierwszy oraz za kadym razem, kiedy uruchamiasz je po przerwie (domylnie jest to 10 minut), polecenie sudo prosi o podanie hasa.
Do pewnego stopnia polecenie to zachowuje si wic jak swego rodzaju wygaszacz
ekranu; zostao zaprojektowane tak, aby zapobiega sytuacji, e nieautoryzowana osoba
trzecia sidzie przed klawiatur Twojego komputera i uzyska dostp do konta root
w momencie, kiedy akurat na chwilk wyszede z pokoju (ale pozostawie zalogowan sesj na konsoli). Zwr uwag, e proszc o wpisanie hasa, polecenie sudo oczekuje, e wpiszesz haso do swojego wasnego, nieuprzywilejowanego konta uytkownika a nie konta uytkownika root. Dziki takiemu rozwizaniu moesz bezpiecznie
udostpnia innym uytkownikom uprawnienia uytkownika root bez koniecznoci
udostpniania im hasa do tego uprzywilejowanego konta (co przecie nie miaoby adnego sensu i pozwalao na peny dostp).
Polecenie sudo posiada cay szereg rnych opcji, ktre zostay dokadnie opisane na
stronach podrcznika man dla tego polecenia jeeli chcesz dowiedzie si, jak uruchamia wybrane polecenia na prawach uytkownikw innych ni root, lub zapozna
si z innymi dodatkowymi moliwociami tego polecenia, powiniene szczegowo zapozna si ze stron podrcznika man powicon poleceniu sudo. Oprcz tych opcji
i przecznikw dla polecenia sudo jako argument powiniene poda peny wiersz polecenia, ktre chcesz wykona. Przykadowo, jeeli wpiszesz polecenie sudo ls -lh -color, to oznacza to, e polecenie ls -lh --color zostanie uruchomione na prawach
uytkownika root. W rodowisku, w ktrym wikszo zada zwizanych z zarzdzaniem systemem operacyjnym wykonywana jest z poziomu wiersza polece powoki
systemu, taka funkcjonalno polecenia sudo jest naprawd trudna do przecenienia.

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

(06-03-31)

147

148

Cz I t Podstawy

Polecenie sudo domylnie zachowuje wszystkie zmienne rodowiskowe. Oznacza to, e


warto Twojej zmiennej $HOME oraz wszystkich innych zmiennych pozostaje nienaruszona. Kiedy uruchamiasz dowoln aplikacj, poszukuje ona swoich plikw konfiguracyjnych w miejscu wskazywanym przez warto zmiennej $HOME (czyli w Twoim katalogu
domowym) czyli w efekcie kocowym aplikacja skorzysta z plikw konfiguracyjnych zlokalizowanych w Twoim katalogu domowym, a nie w katalogu /root/ (ktry jest
standardowym katalogiem domowym uytkownika root). Jest to ogromna zaleta zwaszcza
w przypadku systemw, na ktrych pracuje kilku administratorw. Dziki takiemu rozwizaniu kady z indywidualnych administratorw moe mie swj wasny zestaw plikw konfiguracyjnych dla poszczeglnych polece i aplikacji, std nie musz oni ju
duej polega na jednym jedynym pliku konfiguracyjnym, ktry kiedy dawno temu
utworzy jaki najwaniejszy administrator. Co wicej, rwnie wartoci zmiennych
$XAUTHORITY oraz $DISPLAY zostaj zachowane. Oznacza to w praktyce, e jeeli korzystasz ze rodowiska graficznego, to bdziesz mg uruchamia aplikacje graficzne na
prawach uytkownika root bez adnych dodatkowych wysikw i to w cakowicie
bezpieczny sposb, bez koniecznoci zezwalania poszczeglnym uytkownikom na
podczanie si do Twojej sesji rodowiska graficznego (co potencjalnie mogoby umoliwi takim uytkownikom przechwycenie uywanych przez Ciebie hase).
PrPeglgdanie i analiPa dPiennikiw polecenia sudo
Polecenie sudo domylnie zapisuje wszystkie polecenia wykonane przez danego uytkownika, korzystajc z demona syslog; w systemie Debian wszystkie informacje zostaj zapisane w pliku /var/log/auth.log. Warto tutaj jednak zwrci uwag na jeden
do istotny fakt: sudo zapisuje w dzienniku tylko polecenia, ktre zostay wydane bezporednio. Przykadowo, jeeli uruchomisz powok uytkownika root, korzystajc
z polecenia sudo su -, to takie wydarzenie zostanie zarejestrowane, niemniej jednak
adne z polece uruchomionych pniej, podczas sesji powoki root, nie zostanie ju
zarejestrowane. Poniej zamieszczamy przykadowy wiersz dziennika zdarze sudo (plik
/var/log/auth.log):
Dec 3 21:De:1 debian sudo:
COMMAND=/bin/su -

helion : TTe=pts/1 T PWD=/home/helion T USeR=root T

Pierwsza cz wiersza a do sowa sudo to, krtko mwic, znacznik czasowy danego
wpisu dziennika, obejmujcy dat, czas oraz nazw hosta, na ktrym zostao wykonane
polecenie sudo (w naszym przypadku debian). Kolejne pola to odpowiednio (w kolejnoci
wystpowania): nazwa uytkownika, ktry wykona polecenie sudo (w naszym przypadku helion), nazwa terminalu, na ktrym dany uytkownik by zalogowany w czasie
wykonywania polecenia (w naszym przypadku jest to pts/1), biecy katalog roboczy
uytkownika (w naszym przypadku /home/helion), nazwa uytkownika, na ktrego
prawach zostao wykonane dane polecenie (w naszym przypadku root) i wreszcie nazwa
uruchamianego polecenia (w naszym przypadku /bin/su -).

PyeS SySs opyzkopSik tooz


Pomimo i polecenie sudo jest bezpieczne, szybkie i wygodne, to jednak nie jest doskonae. Od czasu do czasu nie bdziesz mia innego wyjcia, jak tylko zalogowa si do
powoki bezporednio na konto uytkownika root. Jednym z najczstszych powodw

148 (06-03-31)

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

Rozdzia 5. t Podstawy zarzdzania systemem Pedian y zarindz

149

takiego postpowania jest konieczno przegldania katalogw, ktre normalnie nie s


dostpne dla adnego innego uytkownika poza root. Jako dobry przykad moemy
przytoczy zapis nastpujcej sesji:
helion@debian:~$ cd /var/spool/exim4/
bash: cd: /var/spool/exim4/: Brak dostpu
helion@debian:~$ sudo cd /var/spool/exim4/
sudo: cd: command not found
helion@debian:~$

Jak wida, katalog /var/spool/exim4/ nie jest dostpny dla normalnego uytkownika,
a poniewa polecenie cd jest wbudowanym poleceniem powoki i nie mona uruchomi
go poprzez polecenie sudo, to nie ma innej moliwoci dostania si do tego katalogu,
jak tylko poprzez zalogowanie si do powoki na prawach uytkownika root. Jednym ze
sposobw na rozwizanie takiego problemu jest po prostu zalogowanie si na konto
uytkownika root na innej, wirtualnej konsoli. Innym rozwizaniem jest uruchomienie
nowej powoki uytkownika root przy uyciu polecenia sudo -s. Warto jeszcze tutaj
wspomnie, e now powok moesz uruchomi rwnie w bardziej tradycyjny sposb, korzystajc z polecenia su. Wykonanie polecenia su bez adnych opcji ani argumentw powoduje uruchomienie nowej powoki na prawach uytkownika root, ale bez
przetwarzania wszystkich normalnie wykonywanych podczas procesu logowania plikw startowych i konfiguracyjnych powoki. Jeeli jednak do polecenia su doczysz
opcj -, spowoduje to, e nowa powoka bdzie uruchamiana w trybie penej sesji logowania, czyli bdzie dziaaa dokadnie tak, jakby wanie przed momentem zalogowa si do powoki na konto uytkownika root. Polecenie su moe rwnie przyjmowa
jako argument nazw konta uytkownika; domyln wartoci argumentu jest root, ale
jeeli chcesz uruchomi now powok na prawach innego uytkownika, powiniene
wykona polecenie su - nazwakontauytkownika. Niezalenie od tego, jaki sposb uruchomienia powoki wybierzesz, zostaniesz zapytany o haso danego uytkownika, na
ktrego konto teraz si przeczasz. Poniewa w zasadzie nie powiniene zna hase dostpu do kont innych uytkownikw, a poza tym by moe nie znasz hasa konta uytkownika root, to moesz omin to wymaganie, korzystajc z polecenia sudo (jeeli
pracujesz na koncie uytkownika root a wanie to uzyskujesz, korzystajc z polecenia sudo to polecenie su nie bdzie Ci ju prosio o podawanie hasa dostpu do innych kont). Przyjrzyj si przykadowej sesji przedstawionej poniej:
helion@debian:~$ sudo su root@debian:~# whoami
root
root@debian:~# exit
helion@debian:~$ sudo su - test
test@debian:~$ whoami
test
test@debian:~$ exit
helion@debian:~$

Przebieg sesji powinien by chyba dla Ciebie oczywisty. Pierwsze wywoanie polecenia
su spowodowao uruchomienie penej sesji powoki dla uytkownika root. Nastpnie
sprawdzilimy, czy rzeczywicie pracujemy na koncie tego uytkownika, i powrcilimy do naszej biecej sesji powoki. Kolejne wywoanie polecenia su spowodowao
uruchomienie penej sesji powoki dla uytkownika test, po czym ponownie sprawdzilimy,

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

(06-03-31)

149

150

Cz I t Podstawy

na koncie jakiego uytkownika aktualnie pracujemy, i powrcilimy do naszej biecej


sesji powoki. Zwr uwag, e w adnym momencie wywoywane polecenie su (wywoywane poprzez polecenie sudo) nie prosio Ci o podawanie hasa dostpu dla kont
innych uytkownikw.

DodKwKnie nowyod kont uytkownikww onKn wnuo


Jeeli jeste jedynym uytkownikiem danego systemu, to zazwyczaj nie bdziesz mia
potrzeby tworzenia zbyt wielu dodatkowych kont uytkownikw. Konta uytkownikw
systemowych (wykorzystywane przez stale dziaajce demony usug bd inne, wydzielone
podsystemy systemu Linux) s zazwyczaj tworzone przez odpowiednie skrypty instalacyjne danego pakietu oprogramowania. Nie zmienia to jednak w niczym faktu, e nawet
jeeli jeste jedynym uytkownikiem danego systemu, to od czasu do czasu moesz
mie potrzeb utworzenia tymczasowego, dodatkowego konta przeznaczonego do testowania np. nowych ustawie czy aplikacji. Poniewa dostp do niektrych urzdze
sprztowych, takich jak karta dwikowa czy drukarki, jest czsto kontrolowany poprzez specjalne grupy, takie jak np. audio czy lpadmin, oraz poniewa zmiana praw
wasnoci wzw urzdze przechowywanych w katalogu /dev/ po to, aby mg korzysta z karty dwikowej czy te drukarki ze swojego normalnego konta uytkownika,
zdecydowanie nie jest zalecana, to staje si najzupeniej oczywiste, e administrator takiego
systemu powinien bez dwch zda doskonale orientowa si we wszelkich zagadnieniach zwizanych z tworzeniem nowych kont uytkownikw i zarzdzaniem nimi.

DodpSiy Sopyno koSz opyzkopSik


btzy opyyio booyyySi ddoSyt
Zastosowanie polecenia adduser, stanowicego cz pakietu adduser, jest chyba najwygodniejszym sposobem na utworzenie nowego konta uytkownika i wykonanie wszystkich niezbdnych czynnoci zwizanych z pocztkow konfiguracj takiego konta. Polecenie adduser tworzy odpowiedni wpis o danym koncie uytkownika w pliku /etc/passwd,
dodaje pocztkowe haso uytkownika do pliku /etc/shadow, tworzy osobist grup tego
uytkownika w pliku /etc/group, tworzy odpowiedni katalog domowy uytkownika
oraz umieszcza tam szereg plikw konfiguracyjnych. Sprbuj teraz utworzy w swoim
systemie nowe konto uytkownika o nazwie testuser, korzystajc z polecenia adduser:
helion@debian:~$ sudo adduser testuser
password:
Adding user testuser...
Adding new group testuser (1dd1).
Adding new user testuser (1dd1) with group testuser.
Creating home directory /home/testuser.
Copying files from /etc/skel
enter new UNIX password: ********
Retype new UNIX password: ********
passwd: password updated successfully
Changing the user information for testuser
enter the new value, or press eNTeR for the default
Full Name []: Uytkownik testowy
Room Number[]:

150 (06-03-31)

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

Rozdzia 5. t Podstawy zarzdzania systemem Pedian y zarindz

151

Work Phone[]:
Home Phone[]:
Other[]:
Is the information correct? [y/N] y
helion@debian:~$

Haso reprezentowane przez wytuszczone znaki gwiazdek przedstawione w naszym


przykadzie nie bdzie wywietlane na Twoim ekranie, ale mimo to powiniene wpisa
tam odpowiednie haso. Systemy UNIX i Linux podczas wpisywania hasa przez uytkownika zazwyczaj nie wywietlaj niczego na ekranie. W zasadzie to by byo na tyle
jak wida tworzenie nowego konta uytkownika przy uyciu polecenia adduser nie
jest zadaniem specjalnie skomplikowanym. Skrypt najpierw wywietla na ekranie troch
informacji o wykonywanych operacjach, a nastpnie prosi o podanie hasa dla tworzonego konta uytkownika. Na koniec skrypt prosi o podanie opcjonalnych, dodatkowych
informacji na temat samego uytkownika; pamitaj, e warto tutaj poda przynajmniej
pene imi i nazwisko uytkownika.
Od tej chwili nowy uytkownik moe ju logowa si do systemu i pracowa w interaktywnej sesji powoki. Warto zauway, e w systemie Debian domylnie dla kadego
tworzonego konta uytkownika tworzona jest nowa grupa; nazwa grupy jest identyczna
jak nazwa utworzonego konta. Takie rozwizanie zapewnia, e jedynym i wycznym
wacicielem plikw danego uytkownika jest on sam; jeeli wszyscy uytkownicy domylnie byliby czonkami jednej, domylnej grupy uytkownikw (w niektrych starszych systemach, w ktrych takie rozwizanie jest nadal stosowane, taka domylna grupa uytkownikw nosi nazw users), to wtedy wszyscy czonkowie grupy users byliby
grupowym wacicielem wszystkich plikw przez nich utworzonych.

DodpSiy Sopyyo ntob btzy opyyio booyyySi ddntoob


Polecenie addgroup dziaa w bardzo podobny sposb, jak polecenie adduser; jako argument wywoania wystarczy poda nazw tworzonej grupy.
helion@debian:~$ sudo addgroup testgroup
Adding group testgroup (1dd2)...
Done.
helion@debian:~$

Po wywoaniu polecenia addgroup zostaa utworzona grupa testgroup, ktra w chwili


obecnej nie ma adnych czonkw. Wicej szczegowych informacji na temat dodawania
uytkownikw do poszczeglnych grup znajdziesz w podrozdziale Zarzdzanie grupami
uytkownikw, znajdujcym si w dalszej czci rozdziau.

UsuwKnie kont uytkownikww i wnuo


Usuwanie kont uytkownikw oraz grup uytkownikw musi by realizowane z nieco
wiksz ostronoci, poniewa w systemie plikw mog nadal znajdowa si pliki,
ktrych usuwany uytkownik lub grupa s wacicielem. Co wicej, bardzo czsto takie
pliki mog zawiera jakie istotne dane, ktre usuwany uytkownik moe chcie wczeniej
zachowa.

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

(06-03-31)

151

152

Cz I t Podstawy

USopSiy koSz opyzkopSikkp


btzy opyyio booyyySi dyooSyt
Zanim rozpoczniesz proces usuwania kont uytkownikw bd usuwania grup uytkownikw, powiniene zapozna si z kilkoma opcjami polecenia deluser, ktre mog by bardzo pomocne w sprztaniu pozostaoci po usuniciu konta uytkownika: --removeall-files oraz --backup. czne zastosowanie tych dwch opcji spowoduje, e polecenie
deluser utworzy archiwum wszystkich plikw danego uytkownika, umieszczajc ich
kopie w pojedynczym pliku archiwum, a nastpnie usunie takie pliki z systemu plikw.
Sprbuj teraz skorzysta z polecenia deluser i usun konto uytkownika testuser,
ktre dodae w jednej z poprzednich czci rozdziau. Poniewa uyjemy tutaj opcji
--remove-all-files oraz --backup, to cay proces moe potrwa nawet kilka minut.
Pamitaj jednak, e jeeli chcesz skorzysta z opisanych tutaj polece, to bdziesz musia wczeniej zainstalowa pakiet perl-modules. Aby tego dokona, powiniene wykona
polecenie sudo apt-get install perl-modules.
Kiedy ju rozwiesz wszystkie problemy zwizane z instalacj niezbdnych pakietw
dodatkowych, bdziesz mg wykona nastpujce polecenie:
helion@debian:~$ sudo deluser --remove-all-files --backup testuser
Looking for files to backup/remove...
Backing up files to be removed to. ...
/bin/tar: Removing leading `/' from member names
Removing files...
Removing user testuser...
Done.
helion@debian:~$

Od czasu do czasu moesz otrzyma na ekranie komunikaty o bdach informujce, e


nie mona otworzy niektrych plikw i katalogw zlokalizowanych w katalogu /proc/;
nie przejmuj si moesz je bezpiecznie zignorowa. Katalog /proc/ jest swego rodzaju wirtualnym systemem plikw, ktry po prostu eksportuje informacje bezporednio z jdra systemu. Domylnie polecenie deluser tworzy archiwum usuwanych plikw
w biecym katalogu roboczym, nadajc plikowi archiwum nazw nazwauytkownika.
tar.gz. Przyjrzyj si teraz plikowi archiwum, jaki zosta utworzony podczas procesu
usuwania uytkownika testuser w poprzednim przykadzie.
helion@debian:~$ ls -l testuser.tar.gz
-rw-r--r-- 1 root root 1.1- 2ddD-11-14 22:2d testuser.tar.ghelion@debian:~$

Teraz posiadasz ju archiwum, ktre moesz w prosty sposb przekaza danemu uytkownikowi (np. takiemu, ktrego konto zostao usunite z systemu); dodatkowo dziki
takiemu archiwum moesz w prosty sposb odtworzy pliki takiego uytkownika (jeeli
zajdzie potrzeba).

152 (06-03-31)

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

Rozdzia 5. t Podstawy zarzdzania systemem Pedian y zarindz

153

USopSiy ntob opyzkopSikkp


btzy opyyio booyyySi dyontoob
Proces usuwania grup jest nieco bardziej zoony ni proces usuwania kont uytkownikw. Po pierwsze i najwaniejsze, do grupy, ktr chcesz usun, mog by nadal przypisane jakie konta uytkownikw. Jeeli nie jeste pewny, czy tak nie jest, moesz zastosowa opcj --only-if-empty, ktra spowoduje, e jeeli do usuwanej grupy nadal
przypisane s jakie konta uytkownikw, to caa operacja zostanie anulowana. Polecenie delgroup nie powoduje usunicia adnych plikw ani katalogw, ktrych wacicielem jest usuwana grupa. Jeeli kiedy w przyszoci utworzysz kolejn grup, ktra
otrzyma identyczny, numeryczny identyfikator grupy (ang. GID, Group ID), to grupa
taka automatycznie stanie si wacicielem wszystkich istniejcych jeszcze do tej pory
plikw i katalogw, ktrych poprzednim wacicielem bya grupa usunita wczeniej
co z punktu widzenia bezpieczestwa systemu moe stanowi powane zagroenie,
zwaszcza w sytuacji, kiedy przeznaczenie nowej grupy zupenie nie wie si z rol,
jak penia grupa usunita. Z tego powodu przedstawiamy poniej trzy kolejne etapy
postpowania, przez ktre musisz zawsze przej, kiedy masz zamiar usun dan grup.
1. Usu wszystkie konta uytkownikw z grupy, ktr zamierzasz usun.
2. Wykonaj kopi bezpieczestwa, a nastpnie usu bd te zmie grupowego
waciciela wszystkich plikw i katalogw, ktrych obecnym wacicielem
jest grupa przeznaczona do usunicia.
3. Usu dan grup przy uyciu polecenia delgroup.
Usuwanie kont uytkownikw z danej grupy zostanie omwione w nastpnym podrozdziale, ale poniewa nasza grupa testowa, testgroup, jest pusta, wic nie musisz si o to
martwi w tym momencie. Utworzymy jednak tutaj plik testowy, ktrego wacicielem
grupowym bdzie nasza grupa testgroup, dziki czemu bdziemy mogli do tego zagadnienia powrci nieco pniej. Dla naszego pliku testowego ustawimy odpowiednie prawa
dostpu oraz ustawimy znacznik setgid:
helion@debian:~$ touch plik-testowy-grupy
helion@debian:~$ sudo chgrp testgroup plik-testowy-grupy
helion@debian:~$ sudo chmod g+xs plik-testowy-grupy
helion@debian:~$ ls -l plik-testowy-grupy
-rw-r-sr-- 1 helion testgroup d 2ddD-12-d4 22:d7 plik-testowy-grupy
helion@debian:~$

Mamy teraz przykadow grup, ktr bdziemy chcieli usun. Grupa ta jest pusta (tzn.
adne konta uytkownikw nie zostay do niej przypisane) oraz jest grupowym wacicielem naszego pliku testowego. Najpierw musimy zaj si plikami, ktrych wacicielem jest grupa przeznaczona do usunicia. Istnieje wiele sposobw podejcia do takiego zagadnienia, ale z naszego dowiadczenia wynika, e najlepszym sposobem jest
zmiana grupowego waciciela takich plikw na grup root. W pniejszym czasie waciciele plikw mog spokojnie zmieni grupowego waciciela plikw na inn grup,
ktrej s nadal czonkami (oczywicie, jeeli tylko bd chcieli wykona tak operacj).
Zmiana waciciela grupowego na grup root jest o tyle dobra, e nikt poza administratorami systemu nie naley do grupy root, std jest to bardzo bezpieczne rozwizanie. Jak zapewne pamitasz z lektury rozdziau 3., poszczeglne pliki mog mie ustawione prawa setuid oraz setgid (nalece do kategorii zaawansowanych praw dostpu),

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

(06-03-31)

153

154

Cz I t Podstawy

oznaczajce, e pliki wykonywalne mog by uruchamiane tylko i wycznie przez


uytkownika bd grup, ktrzy s ich wacicielem, niezalenie od tego, jaki uytkownik wywouje dany plik wykonywalny. Plik, ktry bdziesz chcia usun, moe by
plikiem wykonywalnym i do tego posiada ustawiony bit setgid, dlatego bardzo istotnym
zagadnieniem staje si usunicie znacznika setgid, zanim zmienisz grupowego waciciela danego pliku. W przeciwnym wypadku, jeeli kto bdzie usiowa uruchomi taki
plik, to dziki takiemu zaniechaniu moe otrzyma czciowe uprawnienia uytkownika
root. Poniej przedstawiamy odpowiednie skrypty powoki. Umoliwi Ci odszukanie
wszystkich plikw, ktrych wacicielem jest grupa testgroup, a nastpnie zmian praw
dostpu, tak aby znacznik setgid zosta usunity (nie przejmuj si, jeeli na tym etapie
lektury ksiki niektre elementy przedstawionych poniej skryptw nie s dla Ciebie
do koca zrozumiae).
sudo find / -group testgroup -printd 2> /dev/null | xargs -d sudo chmod g-s

Kolejnym etapem jest ponowne odszukanie tych samym plikw i zmiana ich waciciela
grupowego na grup root. Moesz tego dokona za pomoc nieco zmodyfikowanej
wersji skryptu przedstawionego powyej:
sudo find / -group testgroup -printd 2> /dev/null | xargs -d sudo chgrp root

Przyjrzyj si teraz poniszemu zapisowi sesji zobaczysz omwione powyej elementy w dziaaniu:
helion@debian:~$ ls -l plik-testowy grupy
-rw-r-sr-- 1 helion testgroup d 2ddD-12-d4 22:d7 plik-testowy-grupy
helion@debian:~$ sudo find / -group testgroup -print0 2> /dev/null | xargs -0 sudo
chmod g-s
helion@debian:~$ ls -l plik-testowy grupy
-rw-r-xr-- 1 helion testgroup d 2ddD-12-d4 22:d7 plik-testowy-grupy
helion@debian:~$ sudo find / -group testgroup -print0 2> /dev/null | xargs -0 sudo
chgrp root
helion@debian:~$ ls -l plik-testowy grupy
-rw-r-xr-- 1 helion root d 2ddD-12-d4 22:d7 plik-testowy-grupy
helion@debian:~$

Teraz, kiedy ju zaje si w odpowiedni sposb wszystkimi plikami, ktrych wacicielem bya grupa przeznaczona do usunicia, moesz z czystym sumieniem rozpocz
procedur usunicia samej grupy. Aby tego dokona, powiniene wykona ponisze
polecenie:
helion@debian:~$ sudo delgroup --remove-only-if-empty testgroup
Removing group testgroup...
Done.
helion@debian:~$

ZKnnZdnKnie wnuoKZi uytkownikww


Domylnie w systemie Debian kady uytkownik posiada swoj wasn, indywidualn
grup, ale oprcz tego istnieje cay szereg innych, standardowych grup, ktre kontroluj
dostp do rnych zasobw systemowych, takich jak na przykad pliki dziennikw zdarze
czy te niektre wybrane urzdzenia sprztowe. Co wicej, jeeli jeste administratorem
systemu wielouytkownikowego, to zazwyczaj bdziesz chcia utworzy odpowiednie

154 (06-03-31)

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

Rozdzia 5. t Podstawy zarzdzania systemem Pedian y zarindz

155

grupy uytkownikw kontrolujce poszczeglne kategorie dostpu uytkownikw do


systemu. W tabeli 5.1 zamieszczone zostao zestawienie niektrych wybranych standardowych grup uytkownikw wraz z krtkim opisem ich przeznaczenia.
Tadela 5.1. Wybrane grupy standardowe
Nazwa grupy

Opis

adm

Do tej grupy nale zazwyczaj administratorzy systemu. Grupa adm kontroluje dostp do
wielu plikw dziennikw zdarze, ktre s dostpne tylko i wycznie dla uytkownikw
bdcych czonkami tej grupy.

lp

Uytkownicy, ktrzy s czonkami grupy lp (ang. line printer), mog korzysta z drukarki
systemowej.

mail

Uytkownicy bdcy czonkami grupy mail uwaani s za administratorw serwera


poczty elektronicznej i w zwizku z tym s uprawnieni do wykonywania caego szeregu
rnych operacji zwizanych z zarzdzaniem tym serwerem (wczajc w to moliwo
czytania poczty innych uytkownikw).

dialout

Uytkownicy z tej grupy maj moliwo inicjowania pocze modemowych ze


zdalnymi serwerami przykadowo z serwerami dostpowymi dostawcw Internetu
(ang. ISP).

cdrom

Do tej grupy nale uytkownicy, ktrzy maj prawa bezporedniego korzystania ze


wszystkich napdw CD zainstalowanych w danym systemie, np. w celu odtwarzania
zapisw muzycznych, nagrywania pyt CD-R itp.

floppy

Uytkownicy, ktrzy s czonkami grupy floppy, maj prawa dostpu do dowolnej stacji
dyskietek spord zainstalowanych w danym systemie.

audio

Uytkownicy bdcy czonkami grupy audio maj pene prawa dostpu do urzdze audio
zamontowanych w danym systemie, takich jak np. karta dwikowa umoliwiajca
odtwarzanie i zapisywanie danych audio.

video

Uytkownicy z tej grupy maj moliwo bezporedniego korzystania z urzdze wideo


zainstalowanych w danym systemie, takich jak np. karta graficzna umoliwiajca
wykonywanie zrzutw ekranw z takich urzdze jak kamera wideo itp.

Posiadanie tak wielu rnych grup moe si na pierwszy rzut oka wydawa grub przesad, niemniej jednak jeeli wszystkie urzdzenia byyby domylnie, w jednakowym
stopniu dostpne dla wszystkich uytkownikw, to w wikszych systemach mogoby si
zdarzy, e np. kto wczy przypadkowo odtwarzanie lub, co gorsza, nagrywanie
dwiku w gabinecie prezesa firmy czy te wczy sobie podgld kamery internetowej
zainstalowanej w serwerowni i obserwowa, jakie hasa wpisuje administrator na konsoli serwera.
Dodawanie uytkownikw do grup jest zadaniem bardzo prostym. Aby tego dokona,
wystarczy wykona nastpujce polecenie: adduser nazwauytkownika nazwagrupy. Przykadowo, z pewnoci chciaby mie moliwo odczytywania rnych plikw dziennikw systemowych bezporednio z poziomu Twojego normalnego konta uytkownika,
bez koniecznoci cigego uywania polece takich jak sudo czy su. Aby tego dokona,
wystarczy jak si ju zapewne sam domylie doda nazw Twojego konta uytkownika do grupy adm:

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

(06-03-31)

155

156

Cz I t Podstawy
helion@debian:~$ sudo adduser helion adm
Adding user helion to group adm...
Done.
helion@debian:~$

Zwr jednak uwag, e nowe uprawnienia nie s od razu widoczne:


helion@debian:~$ groups
helion
helion@debian:~$

Aby czonkostwo w nowych grupach przynioso oczekiwany efekt, powiniene si wylogowa, a nastpnie zalogowa ponownie mimo e istniej rwnie inne sposoby,
to jednak czsto wylogowanie okazuje si najbardziej efektywnym z nich, a co wicej,
taki sposb postpowania bdzie wymagany dla kadej sesji rodowiska graficznego.
Kiedy ju zalogujesz si ponownie, znowu wykonaj polecenie groups:
helion@debian:~$ groups
helion adm
helion@debian:~$

Aby usun danego uytkownika z okrelonej grupy, powiniene wykona polecenie


deluser nazwauytkownika nazwagrupy. Przyjrzyj si teraz zapisowi poniszej sesji:
helion@debian:~$ sudo deluser helion adm
Removing user helion from group adm...
Done.
helion@debian:~$ groups
helion adm
helion@debian:~$

Zwr uwag, e podobnie jak to miao miejsce podczas dodawania uytkownika do


grupy, usunicie z grupy bdzie widoczne dopiero po zakoczeniu i ponownym uruchomieniu biecej sesji powoki. Aby nowe przydziay grup stay si aktywne, rwnie
wszystkie biece procesy drugoplanowe musz zosta zakoczone i uruchomione na nowo.

W rozdziale 2., kiedy omawialimy sposb instalacji systemu Debian, miae moliwo podczenia swojego komputera do sieci Internet bd te do swojej sieci lokalnej.
Skrcony sposb, w jaki zostay tam potraktowane zagadnienia zwizane z poczeniami sieciowymi, oczywicie nie wyczerpa tego tematu, dlatego teraz zajmiemy si nim
ponownie.
W niniejszym podrozdziale omwimy zagadnienia zwizane z wykorzystaniem wielu
niskopoziomowych narzdzi sieciowych pozwalajcych na funkcjonowanie w sieci, do
ktrej jeste podczony. Postaramy si przybliy Ci tematyk powiza systemu Debian z takimi sieciami oraz omwi, w jaki sposb system ten z nimi wsppracuje.

156 (06-03-31)

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

Rozdzia 5. t Podstawy zarzdzania systemem Pedian y zarindz

157

W niniejszym rozdziale niestety nie bdziemy w stanie omwi szczegowo


wszystkich zagadnie zwizanych z poczeniami sieciowymi w systemie Linux
w zasadzie przedstawimy jedynie nieco powierzchowny przegld najwaniejszych
zagadnie. Raczej nietrudno sobie wyobrazi, e tematyka pocze sieciowych
to ogromny temat, zwaszcza jeeli wemie si pod uwag zoono spraw
zwizanych ze wspprac pomidzy rnymi rodzajami sieci komputerowych.
Wicej szczegowych informacji na temat wsppracy systemu Linux z sieciami
komputerowymi znajdziesz w dokumencie Linux Networking HOWTO, dostpnym
na stronie http://www.tldp.org/HOWTO/Net-HOWTO/.

IP Intennet PnotoooI
Internet (akronim angielskiego okrelenia inter-network) jest po prostu ogromnym zbiorem mniejszych sieci, poczonych ze sob w wielu miejscach i na wiele sposobw. Takie mniejsze sieci, czasami nazywane rwnie sieciami intranet, s zazwyczaj od siebie
dobrze odseparowane, gwne ze wzgldu na to, e kad sieci zarzdza inny administrator Ty jeste odpowiedzialny za sprawne i bezpieczne funkcjonowanie Twojej
sieci, Twj dostawca Internetu jest odpowiedzialny za dziaanie jego sieci, poszczeglne
firmy s odpowiedzialne za ich sieci itd. Takie rozproszenie i separacja poszczeglnych
sieci oznacza, e musz istnie jakie podstawowe uzgodnienia wyznaczajce sposb,
w jaki poszczeglne sieci ze sob wsppracuj i wanie takie uzgodnienia nazywamy, oglnie rzecz biorc, protokoem. Protok cile definiuje sposb, w jaki komputer A bdzie si komunikowa z komputerem B.

Ptozokke okP P
Caa komunikacja w sieci Internet oraz w nowoczesnych sieciach intranet odbywa si
wedug zasad zdefiniowanych w specyfikacji protokou IP (ang. Internet Protocol).
Sama specyfikacja protokou IP jest bardzo rozbudowanym i szczegowym dokumentem. Podstawow jednostk transmisji danych wykorzystywan przez protok IP jest
pakiet. Kady strumie danych jest dzielony na mae czci (zwane wanie pakietami),
ktre nastpnie s wysyane poprzez sie do miejsca przeznaczenia. W podstawowym
pakiecie protokou IP znajduj si informacje na temat nadawcy pakietu (czyli inaczej
informacje o tym, skd pochodzi dany pakiet), informacje na temat odbiorcy pakietu
(czyli inaczej mwic informacje o tym, dokd podruje dany pakiet w sieci) oraz adunek pakietu, czyli inaczej mwic dane, jakie przenosi on od nadawcy do odbiorcy.
adunek pakietu moe by niemal dowolny (tak dugo, jak dugo jego format pozostaje
w zgodzie z wymogami definicji protokou IP) w pakiecie IP mog znajdowa si
dowolne dane. Istniej jednak rwnie inne protokoy i standardy transmisji, ktre bardziej szczegowo definiuj zawarto poszczeglnych pakietw przykadem takiego
protokou jest TCP (ang. Transmission Control Protocol).
Sam protok IP jest relatywnie prostym protokoem komunikacyjnym i nie posiada
zaimplementowanych adnych mechanizmw gwarantujcych, e wysany dany pakiet
dotrze do miejsca przeznaczenia. Protok TCP, a w zasadzie TCP/IP (ang. TCP over IP)
jest w obecnych czasach najbardziej rozpowszechnionym protokoem sieciowym, std
niemal kada usuga sieciowa, z jakiej korzystasz na co dzie, jest oparta wanie na
tym protokole. Zastosowanie protokou TCP/IP pozwala na sprawn i pewn wymian
danych pomidzy komputerami poczonymi poprzez sie Internet.

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

(06-03-31)

157

158

Cz I t Podstawy

AdtySy Siyyiopy
Kady komputer podczony do sieci IP posiada swj wasny, unikalny adres IP, aczkolwiek pena konfiguracja poczenia sieciowego to co znacznie wicej ni tylko prosty adres IP. Pomimo i w kadym wysanym w sie pakiecie znajduje si adres IP
nadawcy oraz adres IP odbiorcy, to jednak zlokalizowanie miejsca w sieci, do ktrego
powinien zawdrowa taki pakiet, jest zagadnieniem nieco bardziej zoonym. Kady
komputer podczony do sieci musi posiada zdefiniowane trzy bardzo wane elementy
konfiguracji sieciowej: adres IP (ang. IP address), mask podsieci (ang. netmask) oraz
bram domyln (ang. gateway). Maska podsieci pozwala danej maszynie na wyrnienie adresw komputerw znajdujcych si w tej samej sieci; jeeli Twj komputer jest
czci sieci lokalnej LAN (ang. Local Area Network), to moe si bezporednio komunikowa z innymi komputerami znajdujcymi si w tym samym segmencie sieci (inaczej mwic, komunikacja pomidzy nimi moe si odbywa bez adnego porednika).
Jeeli jednak adresat pakietu znajduje si poza sieci lokaln, to odpowiednie pakiety
danych musz by najpierw przesane do routera czy te bramy, ktra skieruje taki pakiet do kolejnego routera i tak dalej, a dany pakiet danych zostanie dostarczony do komputera docelowego.
Adresy IP, a cilej mwic, adresy IPv4, s zapisywane w tzw. 4-bajtowej notacji
kropkowej (ang. dotted quad notation). Ta grona skdind nazwa oznacza po prostu,
e kady adres IP skada si z czterech liczb z zakresu od 0 do 255, oddzielonych od
siebie kropkami. Przykadowo, zapis 1.2.3.4 jest prawidowo podanym adresem IP.
Wicej szczegowych informacji na temat masek podsieci znajdziesz na stronie
http://www.computerhope.com/jargon/n/netmask.htm.

Potzy
Oprcz wspomnianych ju wczeniej adresw nadawcy oraz adresw odbiorcy (lub jak
kto woli, adresw rda i adresw przeznaczenia) istniej jeszcze tzw. porty. Poniewa
dany komputer moe oferowa uytkownikom ca gam rnego rodzaju usug sieciowych (np. serwer WWW, FTP, poczty elektronicznej i wiele innych), to bardzo wane
jest, aby kada z takich usug bya dostpna poprzez cile okrelony i powszechnie
znany numer portu (ang. well-known ports). Numer portu jest wykorzystywany w komunikacji pomidzy komputerami cznie z adresem IP, kiedy dany komputer usiuje
skorzysta z okrelonej usugi sieciowej oferowanej przez inny komputer. Przykadowo,
jeeli ogldasz zawarto ulubionej strony WWW, to Twoja przegldarka sieciowa prbuje skontaktowa si z portem 80 danego serwera, ktry jest domylnym portem wykorzystywanym przez serwer WWW. Posugujc si nieco uproszczon analogi, mona powiedzie, e adres IP to co w rodzaju penego adresu mieszkania czy te domu,
natomiast numer portu odpowiada tutaj numerowi pokoju. W systemie GNU/Linux definicje wszystkich powszechnie znanych portw i odpowiadajcych im usug sieciowych
moesz znale w pliku /etc/services.

158 (06-03-31)

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

Rozdzia 5. t Podstawy zarzdzania systemem Pedian y zarindz

159

PnnyoisywKnie nKnwy koZoutenK do newo Kdnesu


Jak doskonale wiesz, komputery znaj tylko i wycznie liczby nawet litery rozpoznaj jedynie wtedy, kiedy s wewntrznie reprezentowane przez odpowiednie liczby.
Takie twierdzenie dotyczy wszystkich spraw, o ktrych wie Twj komputer wczajc w to jego znajomoci z innymi komputerami. Przykadowo, jeeli korzystajc
z przegldarki sieciowej, chcesz zajrze na stron http://www.debian.org/, to Twj komputer
z pewnoci nie bdzie od razu, w jaki magiczny sposb wiedzia, z ktrym komputerem w sieci Internet powinien si skontaktowa. Kady czowiek moe po prostu spojrze na podany powyej adres i po prostu wie, e chcesz zajrze na serwer WWW
projektu Debian jednak dla Twojego komputera zorientowanie si, ktry z milionw
komputerw podczonych do sieci Internet kryje si za adresem http://www.debian.org,
jest zadaniem daleko bardziej zoonym.

RozpizypSiy Szp ooSzkp


Ca zabaw rozpoczniemy od zainstalowania pakietu host. W tym celu powiniene
wykona polecenie sudo apt-get install host. Nastpnie powiniene sprawdzi, czy
dziaa ono poprawnie, wykonujc przedstawione poniej polecenie:
helion@debian:~$ host www.debian.org
www.debian.org
A
192.2D.2d .1d
helion@debian:~$

W terminologii sieciowej kady wze sieci czyli inaczej mwic kady komputer
jest nazywany hostem. Polecenie host pozwala Ci na powtrzenie tych wszystkich operacji, jakie musi wykona Twj komputer za kadym razem, kiedy chce si skontaktowa
z innym komputerem, ktrego adres podae w postaci nazwy. W naszym przypadku,
kiedy prbowalimy si skontaktowa z komputerem o nazwie www.debian.org, polecenie host ujawnio nam, e za t nazw tak naprawd kryje si komputer o adresie
112.25.220.12 jest to numeryczny adres serwera WWW projektu Debian, a mwic
cilej, jego adres IP.
Proces zamiany nazw hostw z postaci tekstowej, przyjaznej dla uytkownika, na adresy
numeryczne, bardziej zrozumiae dla komputera, jest nazywany rozwizywaniem nazw
hostw (ang. hostname resolution).
Wicej szczegowych informacji na temat systemu nazw domen DNS (ang. Domain
Name System) znajdziesz w rozdziale 17. niniejszej ksiki. Omwimy tam nie tylko
zagadnienia zwizane z zamian nazw komputerw na odpowiadajce im adresy IP,
ale rwnie powiemy, w jaki sposb moesz zainstalowa i skonfigurowa swj
wasny serwer DNS.

Poiki koSlinotyysSy PyyoSizPo tozpizypSi Szp


Sprbujmy teraz zorientowa si, jakie pliki konfiguracyjne zlokalizowane w Twoim
systemie maj wpyw na funkcjonowanie mechanizmu rozwizywania nazw. W tabeli
5.2 przedstawiono krtki opis trzech najbardziej standardowych plikw konfiguracyjnych, jakie moesz znale w niemal kadym systemie GNU/Linux, wczajc w to
system Debian.

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

(06-03-31)

159

160

Cz I t Podstawy

Tadela 5.2. Pliki konfiguracyjne mechanizmu rozwizywania nazw


Nazwa pliku konfiguracyjnego

Opis

/etc/nsswitch.conf

Plik konfiguracyjny usugi NSS (ang. Name Service Switch).

/etc/resolv.conf

Plik konfiguracyjny usugi rozwizywania nazw.

/etc/hosts

Lokalna baza danych nazw hostw i odpowiadajcych im adresw IP.

Kiedy Twj komputer prbuje skontaktowa si z okrelonym hostem na przykad


www.debian.org to w pierwszej kolejnoci siga do pliku /etc/nsswitch.conf. Format
tego pliku jest bardzo prosty; aby si o tym przekona, powiniene otworzy ten plik
w swoim ulubionym edytorze tekstu. Pomimo i ten plik konfiguracyjny w zasadzie
opisuje zachowanie wszystkich rodzajw konwersji typu nazwa na liczb, to jednak
teraz skoncentrujemy si wycznie na rozwizywaniu nazw hostw. Po otwarciu pliku
/etc/nsswitch.conf do edycji powiniene odszuka w nim wiersz przedstawiony poniej:
hosts:

files dns

Taka posta wiersza informuje wszystkie aplikacje, e jeeli chc rozwiza nazw danego
hosta, to w pierwszej kolejnoci powinny sprawdzi baz hostw zapisanych w odpowiednim pliku (sowo kluczowe files). Tym tajemniczym plikiem jest /etc/hosts. Ma
on posta zwykego pliku tekstowego, w ktrym zapisane s statyczne definicje par
skadajcych si z nazwy danego hosta i odpowiadajcego mu adresu IP.
Tradycja korzystania z pliku /etc/hosts jest bardzo, bardzo stara. Wystarczy powiedzie,
e ju cae dziesiciolecia temu, zanim w ogle system DNS zosta opracowany i zaimplementowany, kady komputer podczony do sieci posiada swj odpowiedni wpis
w plikach /etc/hosts pozostaych komputerw. Jeeli odpowiednia informacja o nazwie
i adresie IP jakiego komputera nie znalaza si w tym pliku, to si rzeczy nie bye
w stanie si z takim komputerem skontaktowa po nazwie. Tyle historia nie zmienia
to jednak w niczym faktu, e niezalenie od zaawansowanego wieku tego pliku-staruszka,
jest on nadal uywany w niemal kadym komputerze, ktry jest podczony do sieci.
Wynika to z prostej potrzeby, e niektre nazwy komputerw i odpowiadajce im adresy
IP musz pozosta dla systemu znane, nawet jeeli awarii ulegnie serwer DNS i nie bdziesz w stanie dynamicznie rozwizywa nazw hostw. Szczeglnym przypadkiem zastosowania tego pliku jest zdefiniowana w nim nazwa wasna Twojego komputera, ktra
jest niezbdna do prawidowego funkcjonowania komputera nawet na bardzo elementarnym poziomie.
Przyjrzyjmy si teraz zawartoci pliku /etc/hosts. Zapewne zarwno w Twoim pliku, jak
i w naszej wersji tego pliku na samym pocztku znajduje si nastpujcy wiersz:
127.d.d.1

localhost

Jak ju wspominalimy wczeniej, format tego pliku jest bardzo prosty pierwszy element
to po prostu adres IP danego hosta, po ktrym nastpuje jedna lub wicej przypisanych
mu nazw. Na naszym przykadzie widoczna jest tylko jedna nazwa localhost. Jest
to bardzo specjalna nazwa, ktra zawsze, w kadej sytuacji reprezentuje Twj wasny,
lokalny komputer. Nawet w sytuacji, kiedy nie masz dostpu ani do sieci Internet, ani
do adnej innej sieci lokalnej, Twj komputer z zainstalowanym systemem GNU/Linux

160 (06-03-31)

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

Rozdzia 5. t Podstawy zarzdzania systemem Pedian y zarindz

161

jest maszyn wyposaon w znakomity, w peni funkcjonalny i gotowy do pracy w sieci


system operacyjny nawet poszczeglne podzespoy tego komputera mog by adresowane jako niezalene elementy wewntrznej sieci komputera. Warto tutaj jeszcze tylko
zauway, e nazwa localhost jest zawsze powizana z odpowiadajcym jej adresem
IP 127.2.2.1.
Poniewa localhost jest zdefiniowany w pliku /etc/hosts, to kiedy dana aplikacja chce
si skontaktowa z komputerem o nazwie localhost, nie musi za kadym razem poszukiwa odpowiadajcego mu adresu IP poprzez sieciow usug DNS (ktra tak naprawd
w takiej sytuacji wcale nie musi by dostpna).
Jeeli jednak nazwa hosta, ktr usiujesz rozwiza, nie jest zdefiniowana w pliku
/etc/hosts, to wykorzystywane jest drugie sowo kluczowe z pliku /etc/nsswitch.conf.
W naszym systemie jest to sowo dns, ktre powoduje, e do rozwizywania nazw hostw wykorzystywany jest DNS (ang. Domain Name System) a tutaj do gosu dochodzi
nasz kolejny plik konfiguracyjny: /etc/resolv.conf. I uwaga midzy zawartoci Twojego
a naszego pliku /etc/resolv.conf mog by znaczne rnice, jako e nasze komputery
z pewnoci znajduj si w rnych sieciach. Podobnie jak w poprzednim przypadku,
powiniene teraz otworzy ten plik do edycji w swoim ulubionym edytorze tekstu. Powiniene znale tam jeden lub wicej wierszy podobnych (ale niekoniecznie identycznych) z przedstawionymi poniej:
nameserver
nameserver

1d.d.d.1
1d.d.d.2

Kiedy Twj komputer otrzymuje przypisany do niego adres IP (niezalenie od tego, czy jest
to dynamiczny adres IP przyznawany automatycznie, poprzez serwer DHCP, czy te
statyczny adres IP nadawany rcznie przez administratora systemu), to otrzymuje rwnie adresy IP serwerw nazw, z ktrych powinien korzysta i w zasadzie do tego
sprowadza si zawarto poszczeglnych wierszy pliku /etc/resolv.conf. Przykadowo,
jeeli chcemy si skontaktowa z serwerem www.debian.org, to nasz komputer w pierwszej
kolejnoci sprawdza, czy odpowiedni wpis znajduje si w pliku /etc/hosts. Jeeli nie, to
usiuje uzyska odpowiedni adres IP od serwera (bd serwerw) DNS, zdefiniowanych
w pliku /etc/resolv.conf w naszym przypadku s to serwery o adresach 12.2.2.1 oraz
12.2.2.2.
W pliku /etc/resolv.conf moesz spotka rwnie jeszcze inny wpis: wiersz search.
Przed chwil, dla uproszczenia powiedzielimy, e plik /etc/resolv.conf jest wykorzystywany w sytuacji, kiedy usiujesz rozwiza nazw hosta, ktra nie zostaa uprzednio
zdefiniowana w pliku /etc/hosts. To nie jest do koca prawda. Wiersze rozpoczynajce
si od sowa kluczowego nameserver s wykorzystywane tylko i wycznie wtedy, kiedy usiujesz rozwiza nazw hosta poprzez serwer DNS, natomiast jeeli wiersz search
zosta dopisany do pliku /etc/resolv.conf, to jest on wykorzystywany zawsze. Poniej
przedstawiamy przykad takiego wpisu (podobnie jak poprzednio, moe on si znacznie
rni od tego, co znajdziesz w swojej wersji pliku).
search

debian.org

Sowo kluczowe search informuje aplikacj, e jeeli odpowiednia nazwa hosta w ogle nie
zostanie odnaleziona (ani poprzez plik /etc/hosts, ani poprzez serwery DNS), to powinna
ona ponownie rozpocz poszukiwania, tym razem jednak poszukujc hosta, ktrego

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

(06-03-31)

161

162

Cz I t Podstawy

nazwa zostaa poszerzona o nazw domeny (bd kolejnych domen), zdefiniowan


w wierszu search i dodan jako przyrostek nazwy hosta. Przyjrzyj si teraz poniszemu
zapisowi sesji powoki:
helion@debian:~$ cat /etc/resolv.conf
nameserver 24.1D3.23.
nameserver 24.1D3.22. 7
helion@debian:~$ host www
www does not exist, try again
helion@debian:~$ editor /etc/resolv.conf
(...teraz dodaj do pliku wiersz: search debian.org)
helion@debian:~$ cat /etc/resolv.conf
search debian.org
nameserver 24.1D3.23.
nameserver 24.1D3.22. 7
helion@debian:~$ host www
www.debian.org
A
192.2D.2d .1d
helion@debian:~$

Jak wida, bez wiersza search Twj komputer nie by w stanie prawidowo rozwiza
nazwy hosta www co nie powinno by raczej dla nikogo zaskoczeniem; w sieci Internet nie istnieje aden komputer, ktrego pena nazwa brzmiaaby po prostu www. Jeeli
teraz dodalimy do pliku /etc/resolv.conf dodatkowy wiersz search debian.org, to aplikacja prbujca rozwiza nazw najpierw sprbuje znale j tradycyjnymi niejako
metodami (poprzez plik /etc/hosts i odpytanie serwera DNS), a nastpnie sprbuje odnale waciwy host, dodajc do jego nazwy www nazw domeny podan po sowie kluczowym search. Krtko mwic, w pierwszym przebiegu aplikacja usiuje rozwiza
nazw www (co jej si nie udaje), a nastpnie dodaje do nazwy hosta nazw domeny i usiuje
rozwiza nazw www.debian.org co tym razem zostaje uwieczone powodzeniem.
W pojedynczym wierszu zawierajcym sowo kluczowe search moesz zamieszcza
cay szereg nazw domen; bd one kolejno wybierane i testowane dopty, dopki ktra
z prb nie zakoczy si pomylnie, bd te adna z nazw domen nie przyniesie oczekiwanego rozwizania.

Intenfensy sieoiowe
Jak zapewne pamitasz, podczas procesu instalacji systemu Debian przechodzie przez
proces konfiguracji poczenia sieciowego. Proces ten polega w gwnej mierze na odpowiedniej konfiguracji interfejsu sieciowego, co jest argonowym okreleniem caej
klasy urzdze systemu Linux pozwalajcych na wzajemn komunikacj z innymi
komputerami. Nietrudno si domyli, e umiejtnoci sprawdzania, testowania, konfiguracji oraz naprawiania urzdze sieciowych jest niezbdna do prawidowego zarzdzania mechanizmami komunikacji sieciowej. Aby przekona si, jakie interfejsy sieciowe
s dostpne na Twoim komputerze, powiniene wykona polecenie sudo ifconfig.
helion@debian:~$ sudo ifconfig
ethd
Link encap:ethernet HWaddr dd:dd:21: D:4B:Be
inet addr:192.1 e.1.1 Bcast:192.1 e.1.2DD Mask:2DD.2DD.2DD.d
UP BROADCAST RUNNING MULTICAST MTU:1Ddd Metric:1
RX packets:342De24 errors:d dropped:d overruns:d frame:d
TX packets:214d112 errors:d dropped:d overruns:d carrier:d

162 (06-03-31)

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

Rozdzia 5. t Podstawy zarzdzania systemem Pedian y zarindz

163

collisions:d txqueuelen:1ddd
RX bytes: 72d77dD1 ( 4d.9 MiB) TX bytes:13DeD3919d (1.2 GiB)
Interrupt:1d Base address:dxfced
eth1

Link encap:ethernet HWaddr dd:ed:Ce:F9:F :AB


UP BROADCAST RUNNING MULTICAST MTU:1Ddd Metric:1
RX packets:24 D422 errors:d dropped:d overruns:d frame:d
TX packets:2dd9 9D errors:d dropped:d overruns:d carrier:d
collisions:3D3d txqueuelen:1ddd
RX bytes:177e12DDe9 (1. GiB) TX bytes:2 d13D7e3 (24e.d MiB)
Interrupt:9 Base address:dxfcdd

lo

Link encap:Local Loopback


inet addr:127.d.d.1 Mask:2DD.d.d.d
UP LOOPBAC- RUNNING MTU:1 43 Metric:1
RX packets:12 27 errors:d dropped:d overruns:d frame:d
TX packets:12 27 errors:d dropped:d overruns:d carrier:d
collisions:d txqueuelen:d
RX bytes:12D21e4 (1.1 MiB) TX bytes: 12D21e4 (1.1 MiB)

pppd

Link encap:Point-to-Point Protocol


inet addr: D.93.139.7 P-t-P: 4.23d.2D4.2dD Mask:2DD.2DD.2DD.2DD
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1
RX packets:24dD279 errors:d dropped:d overruns:d frame:d
TX packets:19Dd19e errors:d dropped:d overruns:d carrier:d
collisions:d txqueuelen:3
RX bytes:1721DD77D (1. GiB) TX bytes: 21D44 34 (2dD.4 MiB)

helion@debian:~$

Wyniki dziaania tego polecenia na Twoim komputerze niemal na pewno bd zupenie


inne, poniewa nasze komputery znajduj si w zupenie innych sieciach. W naszym
przypadku s to cztery interfejsy sieciowe: eth2, eth1, lo oraz ppp2. Na Twoim komputerze rwnie powiniene znale interfejs lo; jest to tzw. interfejs ptli zwrotnej (ang.
loopback interface), ktry jest wirtualnym interfejsem wykorzystywanym przez rne
mechanizmy systemu operacyjnego do wzajemnej komunikacji. Twoje urzdzenie ptli
zwrotnej, loopback, zawsze wskazuje z powrotem na Twj komputer. Powiniene rwnie posiada interfejs eth2 (interfejs Ethernet) lub interfejs ppp2 (interfejs obsugujcy
protok Point-to-Point), natomiast moesz nie mie interfejsu eth1 (ktry jest po prostu
drugim interfejsem Ethernet). Jak wida, wyniki dziaania polecenia ifconfig daj cakiem spor ilo informacji, aczkolwiek tak naprawd w chwili obecnej bd Ci interesoway tylko po dwa pierwsze wiersze dla kadego interfejsu, opisujce typ poszczeglnych interfejsw oraz ich podstawow konfiguracj.

SzytlysSy Siyyi izoytSyz


Najbardziej rozpowszechnionym rodzajem interfejsu sieciowego we wspczesnych komputerach jest interfejs sieci Ethernet. Standard Ethernet jest w zasadzie mechanizmem
enkapsulacji przesyanych danych i nie posiada szczegowych definicji czy wymaga
co do okablowania sygnaowego samego interfejsu. Zdecydowana wikszo urzdze
sieciowych Ethernet wykorzystuje jednak proste okablowanie nazywane UTP (ang. Unshielded Twisted Pair), czyli inaczej okablowanie majce posta nieekranowanej skrtki.

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

(06-03-31)

163

164

Cz I t Podstawy

Jak pamitasz, na naszym ostatnim przykadzie mielimy dwa interfejsy Ethernet dla
przypomnienia zamieszczamy poniej najbardziej interesujce wiersze konfiguracji dla
kadego z nich:
ethd

Link encap:ethernet HWaddr dd:dd:21: D:4B:Be


inet addr:192.1 e.1.1 Bcast:192.1 e.1.2DD Mask:2DD.2DD.2DD.d

eth1

Link encap:ethernet HWaddr dd:ed:Ce:F9:F :AB

Zwr uwag, e tylko jeden z interfejsw posiada wiersz konfiguracji rozpoczynajcy


si od sw kluczowych inet addr. Oznacza to w praktyce tyle, e tylko interfejs eth2
moe by wykorzystywany bezporednio do komunikacji ze zdalnymi komputerami
(poniewa do takiej komunikacji wymagane jest posiadanie wanego adresu IP). Pierwsze pole tego wiersza, inet addr, zawiera adres IP danego interfejsu. Za kadym razem,
kiedy nasz komputer wysya pakiet danych do innego komputera w sieci, to ten wanie
adres IP jest wpisywany jako adres nadawcy pakietu, czyli jako adres rdowy pakietu.
Oprcz pola inet addr znajdziesz tutaj rwnie pole o nazwie Bcast. Jest to pole definiujce tzw. adres rozgoszeniowy (ang. broadcast address); dowolny pakiet wysany
na adres rozgoszeniowy sieci bdzie rozesany do wszystkich komputerw danej sieci
lokalnej. Wreszcie ostatnie pole, Mask, ktre wykorzystywane jest to wyznaczenia swego
rodzaju granic sieci lokalnej. W naszym przypadku mamy mask sieci 255.255.255.2
oraz adres IP 112.108.1.1, a zatem wynika std, e nasza sie lokalna, do ktrej podczony jest nasz komputer, skada si (bd moe si skada) z komputerw o adresach
od 112.108.1.2 do 112.108.1.255.
Kada karta sieciowa Ethernet posiada swj unikalny adres sprztowy (ang. hardware
address) zwany inaczej adresem MAC karty (ang. MAC address; MAC Media Access
Control). W zapisie naszej poprzedniej sesji powoki moesz go odnale w polu oznaczonym HWaddr. Adres sprztowy MAC jest wykorzystywany wycznie w komunikacji
w obrbie lokalnego segmentu sieci Ethernet. Za kadym razem, kiedy pakiety danych
s przekazywane dalej, za porednictwem lokalnego routera czy te bramy domylnej,
urzdzenia takie przejmuj prawa wasnoci takich pakietw i wysyaj je ju dalej
w wiat ze swoim adresem sprztowym MAC w nagwku i tak kolejno a do momentu dostarczenia pakietu do miejsca przeznaczenia.
W systemie Debian GNU/Linux poszczeglne interfejsy sieci Ethernet s konfigurowane poprzez odpowiednie wpisy w pliku /etc/network/interfaces. Wicej szczegowych
informacji na ten temat znajdziesz na stronach podrcznika man, dostpnych po wykonaniu polecenia man 5 interfaces.

SzytlysSy PPP
Interfejsy PPP (ang. Point-to-Point Protocol) s zazwyczaj wykorzystywane do komunikacji poprzez modem (poczenia wybierane typu dial-up), aczkolwiek s rwnie
bardzo czsto wykorzystywane przez dostawcw sieci Internet (ang. ISP) oferujcych
poczenia typu DSL. Nasz przykadowy interfejs PPP ma nastpujc konfiguracj:
pppd

164 (06-03-31)

Link encap:Point-to-Point Protocol


inet addr: D.93.139.7 P-t-P: 4.23d.2D4.2dD Mask:2DD.2DD.2DD.2DD

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

Rozdzia 5. t Podstawy zarzdzania systemem Pedian y zarindz

165

Interfejsy PPP s oglnie rzecz biorc o wiele mniej zoone ni interfejsy Ethernet, poniewa zdecydowana wikszo pocze realizowanych przez takie interfejsy to poczenia typu punkt-punkt (ang. point-to-point). Oznacza to, e dla takich pocze nie
istnieje pojcie sieci lokalnej; wszystkie pakiety s po prostu przesyane na drugi koniec
cza (na adres znajdujcy si w polu P-t-P, ktrym moe by np. Twj ISP) i tam
przetwarzane. Jak wida na przykadzie, adres naszego interfejsu PPP to 05.13.131.70,
natomiast adres komputera znajdujcego si po drugiej stronie cza to 04.232.254.225.
W systemie Debian interfejsy PPP s konfigurowane poprzez odpowiednie pliki znajdujce si w katalogu /etc/ppp/peers/. Kade utworzone poczenie typu PPP bdzie reprezentowane przez odpowiedni plik konfiguracyjny utworzony w tym katalogu, noszcy nazw identyczn jak dane poczenie. Aby uruchomi wybrane poczenie PPP,
powiniene wykona polecenie pon nazwapoczenia; aby je zakoczy, wykonaj polecenie poff nazwapoczenia. Jeeli czysz si z sieci Internet poprzez poczenie DSL
PPP, to podczas instalacji urzdze DSL zostanie utworzony plik konfiguracyjny
/etc/ppp/peers/dsl-provider aby zatem uruchomi takie poczenie, powiniene wykona polecenie pon dsl-provider.

W niniejszym rozdziale skupilimy si gwnie na zagadnieniach zwizanych z zarzdzaniem kontami uytkownikw i grupami uytkownikw, ale za to tematy te zostay
ujte w szerokim kontekcie dobrego zarzdzania systemem oraz utrzymywania bezpieczestwa. Po zakoczeniu lektury tego rozdziau powiniene mie w swoim arsenale
wygodny i bezpieczny interfejs pozwalajcy na korzystanie z uprawnie uytkownika
root z poziomu Twojego normalnego konta uytkownika. Powiniene rwnie by w stanie
tworzy nowe i usuwa istniejce konta uytkownikw i grupy uytkownikw, a take
zarzdza nimi. Lektura tego rozdziau powinna rwnie da Ci pewn podstawow
wiedz na temat pocze sieciowych i sposobw ich dziaania w systemie Linux; powiniene by rwnie w stanie zrozumie, w jaki sposb Twj komputer komunikuje
si z innymi komputerami poprzez sie, co bdzie dla Ciebie znakomitym fundamentem
do dalszego pogbiania wiedzy na ten temat w dalszej czci ksiki.

D:\! AAA DZISIAJ\Debian GNU_Linux 3.1. Biblia\10 druk\r05.doc

(06-03-31)

165