Cyfroteka.pl

klikaj i czytaj online

Cyfro
Czytomierz
00248 004481 12220941 na godz. na dobę w sumie
Najlepsze narzędzia w systemie Linux. Wykorzystaj ponad 70 receptur i programuj szybko i skutecznie - książka
Najlepsze narzędzia w systemie Linux. Wykorzystaj ponad 70 receptur i programuj szybko i skutecznie - książka
Autor: Liczba stron: 216
Wydawca: Helion Język publikacji: polski
ISBN: 978-83-246-8980-4 Data wydania:
Lektor:
Kategoria: ebooki >> komputery i informatyka >> systemy operacyjne >> linux
Porównaj ceny (książka, ebook (-25%), audiobook).

Poznaj świat systemu Linux!

Linux to darmowy system operacyjny, ceniony przez wielu użytkowników na całym świecie. Jego niezawodność, wydajność i możliwości sprawiły, że jest on podstawowym systemem dla największych serwerów na świecie. Użytkownicy domowi mają za to dostęp do atrakcyjnego wizualnie oraz przyjaznego interfejsu graficznego. W świecie Linuksa każdy znajdzie coś dla siebie. Niezależnie od sposobu, w jaki wykorzystujesz ten system, powinieneś poznać możliwości jego konsoli, czyli trybu tekstowego. Może to być zaskakujące, ale właśnie dzięki wpisywanym poleceniom jesteś w stanie najszybciej zrealizować wiele zadań.

Oddajemy w Twoje ręce kolejną książkę z cenionej serii „Receptury”. Książki te charakteryzują się doskonałym przedstawieniem typowych problemów i najlepszych metod ich rozwiązywania. W trakcie lektury tej książki dowiesz się, jak sprawnie korzystać z linii poleceń oraz jakie środowisko graficzne wybrać. Ponadto zaczniesz bez problemu poruszać się po systemie plików, wyszukiwać potrzebne dane oraz je kompresować. W kolejnych rozdziałach nauczysz się pobierać strony bez przeglądarki, tworzyć własny serwer WWW oraz kopiować pliki pomiędzy różnymi komputerami. Jeżeli interesuje Cię bezpieczeństwo systemu, tworzenie skryptów, zarządzanie procesami lub budowa własnego jądra systemu — znajdziesz tu liczne przykłady i wartościowe porady. Książka ta jest wspaniałą lekturą dla wszystkich pasjonatów i użytkowników systemu Linux!

Dzięki tej książce:

Opanuj najlepsze techniki pracy z systemem Linux!

Znajdź podobne książki Ostatnio czytane w tej kategorii

Darmowy fragment publikacji:

Tytuł oryginału: Linux Utilities Cookbook Tłumaczenie: Krzysztof Rychlicki-Kicior ISBN: 978-83-246-8980-4 Copyright © Packt Publishing 2013. First published in the English language under the title: „Linux Utilities Cookbook”. Polish edition copyright © 2014 by Helion S.A. All rights reserved. All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without permission from the Publisher. Wszelkie prawa zastrzeżone. Nieautoryzowane rozpowszechnianie całości lub fragmentu niniejszej publikacji w jakiejkolwiek postaci jest zabronione. Wykonywanie kopii metodą kserograficzną, fotograficzną, a także kopiowanie książki na nośniku filmowym, magnetycznym lub innym powoduje naruszenie praw autorskich niniejszej publikacji. Wszystkie znaki występujące w tekście są zastrzeżonymi znakami firmowymi bądź towarowymi ich właścicieli. Autor oraz Wydawnictwo HELION dołożyli wszelkich starań, by zawarte w tej książce informacje były kompletne i rzetelne. Nie biorą jednak żadnej odpowiedzialności ani za ich wykorzystanie, ani za związane z tym ewentualne naruszenie praw patentowych lub autorskich. Autor oraz Wydawnictwo HELION nie ponoszą również żadnej odpowiedzialności za ewentualne szkody wynikłe z wykorzystania informacji zawartych w książce. Wydawnictwo HELION ul. Kościuszki 1c, 44-100 GLIWICE tel. 32 231 22 19, 32 230 98 63 e-mail: helion@helion.pl WWW: http://helion.pl (księgarnia internetowa, katalog książek) Drogi Czytelniku! Jeżeli chcesz ocenić tę książkę, zajrzyj pod adres http://helion.pl/user/opinie/nanali Możesz tam wpisać swoje uwagi, spostrzeżenia, recenzję. Printed in Poland. • Kup książkę • Poleć książkę • Oceń książkę • Księgarnia internetowa • Lubię to! » Nasza społeczność Spis tre(cid:258)ci O autorze O recenzentach Wprowadzenie Opis rozdzia(cid:239)ów Co warto mie(cid:202) pod r(cid:218)k(cid:200)? Dla kogo jest ta ksi(cid:200)(cid:285)ka? Konwencje formatowania Errata Nielegalne kopiowanie Rozdzia(cid:239) 1. Jak korzysta(cid:202) z wiersza polece(cid:241) Wprowadzenie Edycja polece(cid:241) w terminalu Korzystamy z historii polece(cid:241) Uzupe(cid:239)nianie nazw plików Znak zach(cid:218)ty w pow(cid:239)oce Pozosta(cid:239)e zmienne (cid:258)rodowiskowe Stosowanie aliasów Plik .bashrc Bia(cid:239)e i specjalne znaki w nazwach plików Jak interpretowa(cid:202) zmienn(cid:200) $? Przekierowania i potoki Przekazywanie wyj(cid:258)cia aplikacji pomi(cid:218)dzy terminalami Stosowanie programu Screen 7 9 11 11 12 12 12 13 13 15 15 16 17 18 20 21 22 24 25 26 27 28 29 Kup książkęPoleć książkę Spis tre(cid:286)ci Rozdzia(cid:239) 2. (cid:165)rodowiska graficzne Wprowadzenie GNOME 2 KDE desktop xfce LXDE Unity Mate Rozdzia(cid:239) 3. Pliki i katalogi Wprowadzenie Kopiowanie, usuwanie oraz modyfikowanie plików i katalogów Wyszukiwanie plików za pomoc(cid:200) narz(cid:218)dzi find i locate Tworzenie plików tekstowych — vim, Emacs i inne Narz(cid:218)dzie file Stosowanie narz(cid:218)dzia grep do znajdywania wzorców Kompresja plików za pomoc(cid:200) narz(cid:218)dzi ZIP i TAR Inne przydatne narz(cid:218)dzia — stat, sum, touch itp. Rozdzia(cid:239) 4. Sie(cid:202) i internet Wprowadzenie Rozwi(cid:200)zywanie problemów zwi(cid:200)zanych z po(cid:239)(cid:200)czeniem sieciowym Kopiowanie plików za pomoc(cid:200) protoko(cid:239)ów FTP i SCP Korzystanie ze zdalnego komputera — Telnet i SSH Pobieranie stron WWW bez przegl(cid:200)darki — wget Przegl(cid:200)danie stron internetowych — Firefox Korzystamy z aplikacji do poczty elektronicznej Stawiamy w(cid:239)asny serwer WWW — httpd Sprawdzamy porty i aplikacje — /etc/services IPv4 vs. IPv6 Rozdzia(cid:239) 5. Uprawnienia, dost(cid:218)p i bezpiecze(cid:241)stwo Wprowadzenie Tworzenie kont u(cid:285)ytkowników i zarz(cid:200)dzanie nimi — useradd Obs(cid:239)uga hase(cid:239) Obs(cid:239)uga uprawnie(cid:241) plików Konfigurowanie zapory sieciowej i ustawie(cid:241) rutera Obs(cid:239)uga Secure Linux (SELinux) Korzystanie z narz(cid:218)dzia sudo Katalog /tmp Rozdzia(cid:239) 6. Procesy Wprowadzenie Zrozumie(cid:202) procesy Analiza procesów za pomoc(cid:200) narz(cid:218)dzia ps 4 33 33 33 36 39 41 43 45 49 49 51 53 54 57 59 60 63 65 65 66 69 72 74 75 77 79 81 83 87 87 87 90 91 93 95 97 100 103 103 103 106 Kup książkęPoleć książkę Analiza procesów za pomoc(cid:200) narz(cid:218)dzia top Zmiana priorytetów za pomoc(cid:200) polecenia nice Obserwowanie procesów za pomoc(cid:200) systemu plików /proc Rozdzia(cid:239) 7. Dyski i partycje Wprowadzenie Korzystanie z aplikacji fdisk Stosowanie narz(cid:218)dzia mkfs do formatowania dysku Stosowanie narz(cid:218)dzia fsck do weryfikacji systemu plików Zarz(cid:200)dzanie logicznymi wolumenami (LVM) Rozdzia(cid:239) 8. Tworzenie skryptów Wprowadzenie Usuwanie tekstu z pliku Korzystanie z parametrów w skryptach Tworzenie p(cid:218)tli w skrypcie Tworzenie kopii zapasowej systemu Blokowanie pliku w celu zapewnienia wy(cid:239)(cid:200)cznego dost(cid:218)pu Podstawy j(cid:218)zyka Perl Rozdzia(cid:239) 9. Automatyzacja zada(cid:241) za pomoc(cid:200) narz(cid:218)dzia cron Wprowadzenie Tworzenie i uruchamianie pliku crontab Uruchamianie polecenia raz na dwa tygodnie Zg(cid:239)aszanie b(cid:239)(cid:218)dów z pliku crontab Rozdzia(cid:239) 10. J(cid:200)dro Wprowadzenie Wprowadzenie do polece(cid:241) modu(cid:239)ów Budowanie j(cid:200)dra ze strony kernel.org Stosowanie narz(cid:218)dzia xconfig do modyfikowania konfiguracji Praca z narz(cid:218)dziem GRUB Zrozumienie zasad dzia(cid:239)ania programu GRUB 2 Dodatek A. Najlepsze praktyki w systemie Linux Wprowadzenie Administrator a zwyk(cid:239)y u(cid:285)ytkownik Uruchamianie interfejsu graficznego (GUI) Tworzenie, weryfikacja i przechowywanie kopii zapasowych Uprawnienia a to(cid:285)samo(cid:258)(cid:202) u(cid:285)ytkownika Tworzenie kopii zapasowych w czasie rzeczywistym Zmienne (cid:258)rodowiskowe i pow(cid:239)oki Najlepsze (cid:258)rodowisko do pracy Stosowanie i monitorowanie UPS-ów Zachowanie ostro(cid:285)no(cid:258)ci podczas kopiowania plików Spis tre(cid:286)ci 108 113 115 121 121 125 127 129 131 137 137 138 140 141 144 146 147 155 155 157 158 161 163 163 164 169 171 174 176 179 180 180 181 182 184 184 185 186 187 188 5 Kup książkęPoleć książkę Spis tre(cid:286)ci Weryfikacja archiwów i stosowanie sum kontrolnych Zapory sieciowe, ustawienia ruterów i bezpiecze(cid:241)stwo Co zrobi(cid:202), gdy wykryjesz w(cid:239)amanie Spacje w nazwach plików Stosowanie skryptów i aliasów w celu zaoszcz(cid:218)dzenia czasu i wysi(cid:239)ku Automatyczne uwierzytelnianie a protoko(cid:239)y SCP i SSH Zapisywanie historii i tworzenie zrzutów ekranu Przestrze(cid:241) dyskowa Jak by(cid:202) otwartym na nowe pomys(cid:239)y Dodatek B. Korzystanie z pomocy Wprowadzenie Korzystanie ze stron podr(cid:218)cznika man Stosowanie polecenia info Polecenia a sekcja Sposób u(cid:285)ycia Lokalne katalogi z dokumentacj(cid:200) Przegl(cid:200)danie internetu w poszukiwaniu pomocy Uwagi do wydania dystrybucji Grupy u(cid:285)ytkowników Linuksa Internet Relay Chat (IRC) Skorowidz 189 189 191 192 192 193 193 194 194 195 195 195 197 198 200 201 202 204 205 209 6 Kup książkęPoleć książkę 5 Uprawnienia, dost(cid:218)p i bezpiecze(cid:241)stwo W tym rozdziale zajmiemy si(cid:218): (cid:81) tworzeniem kont u(cid:285)ytkowników i zarz(cid:200)dzaniem nimi — useradd, (cid:81) obs(cid:239)ug(cid:200) hase(cid:239), (cid:81) obs(cid:239)ug(cid:200) uprawnie(cid:241) plików, (cid:81) konfigurowaniem zapory sieciowej i ustawie(cid:241) rutera, (cid:81) obs(cid:239)ug(cid:200) Secure Linux — SELinux, (cid:81) korzystaniem z sudo w celu zabezpieczenia systemu, (cid:81) katalogiem /tmp. Wprowadzenie Ten rozdzia(cid:239) pos(cid:239)u(cid:285)y nam jako krótkie omówienie uprawnie(cid:241) plików w systemie Linux. Dowiesz si(cid:218) tak(cid:285)e, jak zabezpieczenia s(cid:200) obs(cid:239)ugiwane przez system hase(cid:239). Poza tym pokazujemy, jak w bezpieczny sposób skonfigurowa(cid:202) zapor(cid:218) sieciow(cid:200) i ruter, a tak(cid:285)e wspominamy o SELinux i poleceniu sudo. Tworzenie kont u(cid:285)ytkowników i zarz(cid:200)dzanie nimi — useradd W ramach tej porady dodamy konto u(cid:285)ytkownika, korzystaj(cid:200)c z programu useradd. Kup książkęPoleć książkę Najlepsze narz(cid:266)dzia w systemie Linux Przygotuj si(cid:218) Poni(cid:285)sze polecenia nie powinny spowodowa(cid:202) problemów w Twoim systemie, niemniej jednak b(cid:218)dzie Ci potrzebny dost(cid:218)p do konta administratora (roota). W wi(cid:218)kszo(cid:258)ci dystrybucji systemu Linux s(cid:200) dost(cid:218)pne dwie wersje tego polecenia — useradd i adduser. Nie zawsze wykonuj(cid:200) one te same czynno(cid:258)ci, dlatego sprawd(cid:283) podr(cid:218)cznik man (i/lub polecenie file), aby si(cid:218) upewni(cid:202), (cid:285)e wykonujesz odpowiednie polecenie. W systemie Fedora adduser stanowi dowi(cid:200)za- nie symboliczne do polecenia useradd, a zatem s(cid:200) one sobie równowa(cid:285)ne. Jak to zrobi(cid:202) Teraz wykonamy polecenie useradd, aby doda(cid:202) u(cid:285)ytkownika, a nast(cid:218)pnie polecenie passwd, aby okre(cid:258)li(cid:202) has(cid:239)o. Wi(cid:218)cej informacji na temat polecenia passwd znajdziesz w kolejnych poradach: 1. Najpierw utworzymy kopi(cid:218) zapasow(cid:200) pliku /etc/passwd. Wykonaj poni(cid:285)sze polecenie: cp /etc/passwd /tmp/passwd.orig 2. Utwórz u(cid:285)ytkownika o nazwie test1: useradd test1 3. Powiniene(cid:258) powróci(cid:202) od razu do wiersza polece(cid:241). Nast(cid:218)pnie wykonaj polecenie: su - test1 4. Znak zach(cid:218)ty powinien ulec zmianie. Wykonaj polecenie whoami — zostanie wy(cid:258)wietlony tekst test1. Zawsze upewniaj si(cid:218) w ten sposób, (cid:285)e jeste(cid:258) zalogowany na w(cid:239)a(cid:258)ciwe konto. Teraz zmienimy has(cid:239)o: run passwd 5. Zostanie wy(cid:258)wietlony komunikat o zmianie has(cid:239)a, np. Zmiana has(cid:239)a dla u(cid:285)ytkownika test1, a tak(cid:285)e pojawi si(cid:218) komunikat z pro(cid:258)b(cid:200) o wprowadzenie aktualnego has(cid:239)a. Co to oznacza? O jakie has(cid:239)o prosi system? 6. Tak naprawd(cid:218) nie znam odpowiedzi na to pytanie, a strony podr(cid:218)cznika man tej kwestii nie rozwi(cid:200)zuj(cid:200). Ten krok jest zawsze pomijany, co jest moim zdaniem do(cid:258)(cid:202) dziwne. Istniej(cid:200) sposoby na wykonanie tego kroku dzi(cid:218)ki wykorzystaniu funkcji crypto i innych skomplikowanych procedur. Ja na co dzie(cid:241) stosuj(cid:218) nieco inne podej(cid:258)cie: 7. Wci(cid:258)nij kombinacj(cid:218) klawiszy Ctrl+C, aby opu(cid:258)ci(cid:202) polecenie passwd, a nast(cid:218)pnie wykonaj polecenie exit, aby powróci(cid:202) do konta administratora. Otwórz do edycji plik /etc/passwd i przejd(cid:283) do dolnego wiersza. W poni(cid:285)szym wierszu warto(cid:258)(cid:202) liczbowa mo(cid:285)e by(cid:202) inna, ale poza tym nie powinno by(cid:202) problemów ze znalezieniem wiersza podobnego do nast(cid:218)puj(cid:200)cego: test1:x:1003:1003::/home/test1:/bin/bash 88 Kup książkęPoleć książkę Rozdzia(cid:225) 5. • Uprawnienia, dost(cid:266)p i bezpiecze(cid:276)stwo 8. Usu(cid:241) x, dzi(cid:218)ki czemu wiersz przyjmie nast(cid:218)puj(cid:200)c(cid:200) posta(cid:202): test1::1003:1003::/home/test1:/bin/bash 9. Zapisz plik i wyjd(cid:283) z edytora. Je(cid:258)li otrzymasz b(cid:239)(cid:200)d uprawnie(cid:241), upewnij si(cid:218), (cid:285)e jeste(cid:258) na koncie administratora. 10. Wykonaj polecenie su, aby ponownie przej(cid:258)(cid:202) na konto u(cid:285)ytkownika test1: su - test1 11. Wykonaj polecenie passwd. 12. Teraz jest znacznie lepiej — system nie prosi nas o has(cid:239)o. Mo(cid:285)na teraz utworzy(cid:202) nowe has(cid:239)o, poniewa(cid:285) posiadanie niezabezpieczonych kont w systemie nie jest zbyt m(cid:200)dre. Je(cid:258)li chcesz zachowa(cid:202) to konto na przysz(cid:239)o(cid:258)(cid:202), radz(cid:218) zapisa(cid:202) to has(cid:239)o w bezpiecznym miejscu, a najlepiej przechowa(cid:202) w jakim(cid:258) zaszyfrowanym pliku. 13. Po dwukrotnym wprowadzeniu nowego has(cid:239)a powiniene(cid:258) otrzyma(cid:202) komunikat podobny do poni(cid:285)szego: passwd: all authentication tokens updated successfully Teraz dysponujemy nowym kontem u(cid:285)ytkownika. Zwró(cid:202) uwag(cid:218), (cid:285)e u(cid:285)ytkownik mo(cid:285)e wykony- wa(cid:202) wi(cid:218)kszo(cid:258)(cid:202) operacji z poziomu terminala, o ile tylko ma odpowiednie uprawnienia. W za- le(cid:285)no(cid:258)ci od dystrybucji systemu Linux zwyk(cid:239)y u(cid:285)ytkownik mo(cid:285)e nie mie(cid:202) dost(cid:218)pu do wszyst- kich zasobów (np. systemu d(cid:283)wi(cid:218)ku). Oto zrzut ekranu z polecenia useradd --help, które wykona(cid:239)em w systemie Fedora 17: 89 Kup książkęPoleć książkę Najlepsze narz(cid:266)dzia w systemie Linux Zobacz równie(cid:285) Polecenie useradd mo(cid:285)e by(cid:202) u(cid:285)ywane do ró(cid:285)nych innych celów. Mo(cid:285)na m.in. modyfikowa(cid:202) spo- sób dzia(cid:239)ania istniej(cid:200)cych kont lub zdefiniowa(cid:202) termin jego wyga(cid:258)ni(cid:218)cia. Istnieje mo(cid:285)liwo(cid:258)(cid:202) przyznania szerokich uprawnie(cid:241) — niemal tak du(cid:285)ych jak uprawnienia administratora. Zajrzyj na stron(cid:218) podr(cid:218)cznika man lub wywo(cid:239)aj polecenie useradd z parametrem --help w celu uzy- skania bardziej szczegó(cid:239)owych informacji. Obs(cid:239)uga hase(cid:239) O poleceniu passwd wspomnia(cid:239)em w poprzedniej poradzie. U(cid:285)ywa si(cid:218) go do zmiany tokenów uwierzytelniania u(cid:285)ytkownika. Do wykonania poni(cid:285)szych polece(cid:241) b(cid:218)dzie potrzebny dost(cid:218)p do konta administratora. Skorzystamy tak(cid:285)e z konta test1, utworzonego w poprzedniej poradzie. Jak to zrobi(cid:202) 1. Przejd(cid:283) do konta u(cid:285)ytkownika test1 z poziomu konta zwyk(cid:239)ego u(cid:285)ytkownika: su - test1 2. Wprowad(cid:283) has(cid:239)o. Operacja powinna przebiec bez problemów. 3. Teraz zablokujemy to konto. Powró(cid:202) do konta administratora i wykonaj polecenie: passwd -l test1 4. Z poziomu konta zwyk(cid:239)ego u(cid:285)ytkownika wykonaj ponownie polecenie su - test1. Operacja powinna zako(cid:241)czy(cid:202) si(cid:218) niepowodzeniem. 5. Powró(cid:202) do konta administratora i odblokuj konto, korzystaj(cid:200)c z polecenia passwd -u test1. Zaloguj si(cid:218) ponownie i sprawd(cid:283), czy wszystko dzia(cid:239)a. 6. Teraz wygasimy konto test1. W ten sposób zmusimy u(cid:285)ytkownika do utworzenia nowego has(cid:239)a. Wykonaj poni(cid:285)sze polecenie jako root: passwd -e test1 7. Z poziomu zwyk(cid:239)ego u(cid:285)ytkownika zaloguj si(cid:218) ponownie na konto test1, korzystaj(cid:200)c z polecenia su - test1. Wprowad(cid:283) swoje has(cid:239)o. 8. Zostaniesz poproszony o utworzenie nowego has(cid:239)a. B(cid:200)d(cid:283) uwa(cid:285)ny — najpierw musisz wprowadzi(cid:202) stare (aktualne) has(cid:239)o, a nast(cid:218)pnie dwa razy nowe. 9. Warto zapami(cid:218)ta(cid:202), (cid:285)e has(cid:239)o mo(cid:285)emy tak(cid:285)e usun(cid:200)(cid:202), wykonuj(cid:200)c polecenie passwd -d test1. Jest to znacznie prostsze ni(cid:285) bezpo(cid:258)rednia modyfikacja pliku /etc/passwd, wykonana w poprzedniej poradzie. 90 Kup książkęPoleć książkę Rozdzia(cid:225) 5. • Uprawnienia, dost(cid:266)p i bezpiecze(cid:276)stwo Zobacz równie(cid:285) Modyfikacja konta u(cid:285)ytkownika obejmuje wiele ró(cid:285)nych aspektów. Mo(cid:285)na do nich zaliczy(cid:202) czas pozosta(cid:239)y do wyga(cid:258)ni(cid:218)cia konta u(cid:285)ytkownika, a tak(cid:285)e moment, w którym nale(cid:285)y rozpocz(cid:200)(cid:202) informowanie u(cid:285)ytkownika o zmianie has(cid:239)a. Wi(cid:218)cej informacji znajdziesz w podr(cid:218)czniku man. Co nieco o has(cid:239)ach Dawno temu u(cid:285)ytkownicy wybierali proste has(cid:239)a i nigdy ich nie zmieniali. Nie musieli(cid:258)my co chwil(cid:218) ich zmienia(cid:202) i mogli(cid:258)my korzysta(cid:202) z nich wsz(cid:218)dzie, dlatego nie by(cid:239)o potrzeby zapisywania hase(cid:239). Niestety, ta sytuacja uleg(cid:239)a zmianie. Obecnie has(cid:239)a musz(cid:200) zawiera(cid:202) kombinacje liter, cyfr, a nawet znaków specjal- nych. Co wi(cid:218)cej, musz(cid:200) one by(cid:202) do(cid:258)(cid:202) d(cid:239)ugie, poniewa(cid:285) zasady tworzenia hase(cid:239) w jednym systemie mog(cid:200) nie obowi(cid:200)zywa(cid:202) w innym. W zwi(cid:200)zku z tym sugeruj(cid:218) stosowa(cid:202) ró(cid:285)ne has(cid:239)a dla ró(cid:285)nych kont i zapisywa(cid:202) je w bezpiecznym miejscu. Prawdopodobnie b(cid:218)dzie konieczna tak(cid:285)e regularna zmiana tych hase(cid:239). Obs(cid:239)uga uprawnie(cid:241) plików Linux jest systemem umo(cid:285)liwiaj(cid:200)cym obs(cid:239)ug(cid:218) wielu u(cid:285)ytkowników, dlatego ka(cid:285)dy plik ma okre(cid:258)lone uprawnienia dost(cid:218)pu i przypisanego w(cid:239)a(cid:258)ciciela. W ten sposób mo(cid:285)emy ustrzec si(cid:218) przed niepowo(cid:239)anym dost(cid:218)pem do zasobów, do których dany u(cid:285)ytkownik nie ma uprawnie(cid:241) (niezale(cid:285)nie od tego, czy chce zrobi(cid:202) to przypadkiem, czy te(cid:285) celowo). Administrator (root) ma zwykle dost(cid:218)p do wszystkich plików w systemie operacyjnym. Przygotuj si(cid:218) Najpierw omówimy podstawowe uprawnienia dost(cid:218)pu do pliku. W tym przyk(cid:239)adzie zak(cid:239)adam, (cid:285)e maska pliku jest ustawiona na warto(cid:258)(cid:202) 0022. Wykonaj polecenie umask, aby sprawdzi(cid:202) t(cid:218) in- formacj(cid:218). Przeanalizujmy efekt dzia(cid:239)ania polecenia ls -la w katalogu, w którym znajduje si(cid:218) mój skrypt do wykonania kopii zapasowej, czyli b: -rwxr-xr-x. 1 gosc1 root 559 Mar 28 12:43 b Analizuj(cid:200)c od lewej strony, najpierw dowiadujemy si(cid:218), z jakim rodzajem pliku mamy do czy- nienia. Obecno(cid:258)(cid:202) znaku - informuje, (cid:285)e jest to zwyk(cid:239)y plik. Litera d obecna w tym miejscu oznacza(cid:239)aby katalog, a l — (cid:239)(cid:200)cze (ang. link). Kolejne trzy zbiory trzyliterowe okre(cid:258)laj(cid:200) upraw- nienia dost(cid:218)pu do pliku, które mo(cid:285)na podawa(cid:202) albo w sposób symboliczny, albo liczbowy. Sko- rzystamy z trybu liczbowego (ósemkowego). 91 Kup książkęPoleć książkę Najlepsze narz(cid:266)dzia w systemie Linux Pierwsza trójka, rwx, okre(cid:258)la ustawienia dost(cid:218)pu dla w(cid:239)a(cid:258)ciciela (gosc1). Kolejne trzy znaki (r-x) stanowi(cid:200) ustawienia dost(cid:218)pu dla grupy (root). Ostatni zbiór to ustawienia dla pozosta(cid:239)ych u(cid:285)ytkowników. Litera r oznacza, (cid:285)e plik mo(cid:285)na odczyta(cid:202), w — zapisa(cid:202), a x — wykona(cid:202). Polecenie chmod przyjmuje ci(cid:200)gi z(cid:239)o(cid:285)one z od jednej do czterech cyfr ósemkowych. Je(cid:258)li pierw- szej cyfry nie ma, przyjmuje si(cid:218), (cid:285)e na pocz(cid:200)tku jest umieszczane wiod(cid:200)ce zero. Pierwsza cy- fra okre(cid:258)la ID u(cid:285)ytkownika, ID grupy lub tzw. lepki bit (ang. sticky bit). Druga cyfra okre(cid:258)la uprawnienia u(cid:285)ytkownika, a trzecia — uprawnienia dla wszystkich. Teraz zmienimy uprawnienia pliku tymczasowego i zobaczymy, jaki b(cid:218)dzie efekt. Jak to zrobi(cid:202) 1. Przejd(cid:283) do katalogu /tmp: cd /tmp 2. Je(cid:258)li plik f1 istnieje, usu(cid:241) go: rm f1 3. Korzystaj(cid:200)c z konta go(cid:258)cia (w moim przypadku jest to konto autor), utwórz plik tymczasowy: ls f1 4. Wykonaj poni(cid:285)sze polecenie: ls -al f1 5. Powinien zosta(cid:202) wy(cid:258)wietlony tekst podobny do poni(cid:285)szego: -rw-rw-r--. 1 autor autor 131 Mar 29 10:35 f1 6. Przedstawione uprawnienia stanowi(cid:200) uprawnienia domy(cid:258)lne przydzielane przez polecenie umask. W ten sposób stwierdzamy, (cid:285)e w(cid:239)a(cid:258)ciciel i grupa maj(cid:200) uprawnienia do odczytu i zapisu, a inni mog(cid:200) jedynie odczyta(cid:202) plik. 7. W jaki sposób dokonamy zmiany? Korzystaj(cid:200)c z polecenia chmod. Za(cid:239)ó(cid:285)my, (cid:285)e nasz plik jest skryptem i chcieliby(cid:258)my uczyni(cid:202) go wykonywalnym. Wykonaj poni(cid:285)sze polecenie: chmod 775 f1 8. Wykonaj polecenie ls -la f1. Efekt powinien by(cid:202) podobny do poni(cid:285)szego: -rwxrwxr-x. 1 autor autor 131 Mar 29 10:35 f1 9. Pojawiaj(cid:200)ce si(cid:218) w trzech miejscach litery x oznaczaj(cid:200), (cid:285)e ka(cid:285)dy u(cid:285)ytkownik mo(cid:285)e wykona(cid:202) ten plik. Wykonajmy jeszcze dwa polecenia: chmod 000 f1, a nast(cid:218)pnie ls -la f1. Zostanie przedstawiony nast(cid:218)puj(cid:200)cy efekt: ----------. 1 autor autor 131 Mar 29 10:35 f1 92 Kup książkęPoleć książkę Rozdzia(cid:225) 5. • Uprawnienia, dost(cid:266)p i bezpiecze(cid:276)stwo No prosz(cid:218)! Czy to oznacza, (cid:285)e z tym plikiem nie da si(cid:218) ju(cid:285) nic zrobi(cid:202)? Na szcz(cid:218)(cid:258)cie nie — w(cid:239)a- (cid:258)ciciel wci(cid:200)(cid:285) mo(cid:285)e zmieni(cid:202) uprawnienia. A skoro ju(cid:285) o tym mowa, to aby zmieni(cid:202) w(cid:239)a(cid:258)ciciela pliku, nale(cid:285)y skorzysta(cid:202) z polecenia chown. Zazwyczaj jest ono wykonywane z poziomu konta administratora. Zobacz równie(cid:285) W tej poradzie nie omawia(cid:239)em bitów setuid, setgid i sticky. Zerknij do podr(cid:218)cznika man na temat polecenia chmod, aby dowiedzie(cid:202) si(cid:218) wi(cid:218)cej na ich temat. Bit ograniczonego prawa usu- ni(cid:218)cia (ang. restricted deletion bit) jest omówiony w poradzie Katalog /tmp. Konfigurowanie zapory sieciowej i ustawie(cid:241) rutera Zapora sieciowa jest u(cid:285)ywana do zapobiegni(cid:218)cia nieautoryzowanemu dost(cid:218)powi do kompute- ra — przy jednoczesnym dopuszczeniu autoryzowanego ruchu. Polecenie iptables jest wyko- rzystywane do konfigurowania i przegl(cid:200)dania tabel regu(cid:239) IPv4 j(cid:200)dra. Szczegó(cid:239)owe omówienie tego narz(cid:218)dzia wykracza poza ramy tej ksi(cid:200)(cid:285)ki, dlatego w tym miejscu omówimy sobie pokrótce jedynie podstawy tego narz(cid:218)dzia. Polecenie iptables korzysta z jednej (lub kilku) tabeli. Ka(cid:285)da tabela sk(cid:239)ada si(cid:218) z pewnej liczby gotowych (cid:239)a(cid:241)cuchów, ale mo(cid:285)e tak(cid:285)e zawiera(cid:202) (cid:239)a(cid:241)cuchy stworzone przez u(cid:285)ytkownika. (cid:146)a(cid:241)- cuch stanowi zbiór regu(cid:239), a ka(cid:285)da regu(cid:239)a decyduje o tym, co zrobi(cid:202) z pakietem, który pasuje do jej ustawie(cid:241). Takie dopasowanie nazywamy celem (ang. target). Je(cid:258)li pakiet nie pasuje do danej regu(cid:239)y, zostaje on poddany sprawdzeniu przez nast(cid:218)pn(cid:200) re- gu(cid:239)(cid:218) z (cid:239)a(cid:241)cucha. Je(cid:258)li jednak pakiet pasuje do regu(cid:239)y, mo(cid:285)e zosta(cid:202) podj(cid:218)ta wobec niego jedna z akcji: (cid:81) akceptuj (ang. ACCEPT) — pakiet jest przepuszczany, (cid:81) odrzu(cid:202) (ang. DROP) — pakiet jest odrzucany, (cid:81) zakolejkuj (ang. QUEUE) — pakiet jest dodawany do przestrzeni u(cid:285)ytkownika, (cid:81) powró(cid:202) (ang. RETURN) — dany (cid:239)a(cid:241)cuch jest przerywany; kolejna wywo(cid:239)ana regu(cid:239)a pochodzi z (cid:239)a(cid:241)cucha wywo(cid:239)uj(cid:200)cego. Jak to zrobi(cid:202) W tym miejscu przedstawimy zaledwie kilka polece(cid:241) typu iptables. Nie wykonuj ich w swoim systemie — instrukcje te stanowi(cid:200) jedynie przyk(cid:239)ad u(cid:285)ycia: 93 Kup książkęPoleć książkę Najlepsze narz(cid:266)dzia w systemie Linux 1. Aby usun(cid:200)(cid:202) wszystkie istniej(cid:200)ce regu(cid:239)y, wykonaj polecenie: iptables -F 2. Aby zablokowa(cid:202) konkretny adres IP, wykonaj nast(cid:218)puj(cid:200)ce polecenie: iptables -A INPUT -s 192.168.1.115 -j DROP 3. Aby zezwoli(cid:202) na dost(cid:218)p do p(cid:218)tli zwrotnej, skorzystaj z poni(cid:285)szego polecenia: iptables -A INPUT -i lo -j ACCEPT iptables -A OUTPUT -o lo -j ACCEPT Teraz zajmiemy si(cid:218) ruterami. Wi(cid:218)kszo(cid:258)(cid:202) z nich zawiera wbudowane zapory sieciowe, które mo(cid:285)na skonfigurowa(cid:202) z poziomu przegl(cid:200)darki internetowej. Cho(cid:202) taki sposób dost(cid:218)pu nie za- st(cid:200)pi polecenia iptables, zazwyczaj jest on (cid:239)atwiejszy w konfiguracji i pozwala na prac(cid:218) z do- wolnego komputera dzia(cid:239)aj(cid:200)cego w Twojej sieci. Adres strony internetowej domowego rutera to (najcz(cid:218)(cid:258)ciej) 192.168.1.1. Spróbuj otworzy(cid:202) go w Twojej przegl(cid:200)darce. Oto zrzut ekranu ustawie(cid:241) bezpiecze(cid:241)stwa przyk(cid:239)adowego rutera: Prawdopodobnie trzeba b(cid:218)dzie wprowadzi(cid:202) identyfikator u(cid:285)ytkownika i has(cid:239)o. Zajrzyj do do- kumentacji rutera, aby znale(cid:283)(cid:202) domy(cid:258)lne ustawienia (o ile nie uleg(cid:239)y one zmianie). Przejd(cid:283) na zak(cid:239)adk(cid:218) Bezpiecze(cid:241)stwo (Security) lub podobn(cid:200), aby uzyska(cid:202) dost(cid:218)p do omawianych funk- cjonalno(cid:258)ci. 94 Kup książkęPoleć książkę Rozdzia(cid:225) 5. • Uprawnienia, dost(cid:266)p i bezpiecze(cid:276)stwo Zobacz równie(cid:285) Na temat polecenia iptables mo(cid:285)na by napisa(cid:202) ca(cid:239)(cid:200) ksi(cid:200)(cid:285)k(cid:218). Wiele informacji znajdziesz w pod- r(cid:218)czniku man, a tak(cid:285)e w ksi(cid:200)(cid:285)kach po(cid:258)wi(cid:218)conych zaporom sieciowym. Istnieje tak(cid:285)e wiele cie- kawych stron internetowych zwi(cid:200)zanych z t(cid:200) tematyk(cid:200). Obs(cid:239)uga Secure Linux (SELinux) W tym podrozdziale zajmiemy si(cid:218) omówieniem us(cid:239)ugi Security Enhanced Linux (SELinux). W poradzie Obs(cid:239)uga uprawnie(cid:241) plików omawiali(cid:258)my standardowy sposób ochrony systemu w Linuksie. Metoda ta nosi nazw(cid:218) uznaniowej kontroli dost(cid:218)pu (ang. Discretionary Access Control — DAC) i ma pewne ograniczenia. Zwyk(cid:239)y u(cid:285)ytkownik mo(cid:285)e udost(cid:218)pni(cid:202) swoje pliki (przypadkowo lub celowo) innym u(cid:285)ytkownikom do odczytu lub zapisu, co w konsekwencji mo(cid:285)e prowadzi(cid:202) do ujawnienia istotnych informacji. Wi(cid:218)kszy poziom bezpiecze(cid:241)stwa zapew- nia obowi(cid:200)zkowa kontrola dost(cid:218)pu (ang. Mandatory Access Control) stosowana w SELinux. MAC korzysta z polityki bezpiecze(cid:241)stwa, która obejmuje wszystkie procesy i pliki w syste- mie. Wszystkie pliki w SELinux maj(cid:200) etykiety, które zawieraj(cid:200) informacje zwi(cid:200)zane z bezpie- cze(cid:241)stwem. Przyk(cid:239)adowo poni(cid:285)szy listing przedstawia plik obj(cid:218)ty kontrol(cid:200) DAC: ls -la ifcfg-eth0 -rw-r--r--. 1 root root 73 Apr 22 2011 ifcfg-eth0 Ten sam plik sprawdzony za pomoc(cid:200) opcji Z (kontekst bezpiecze(cid:241)stwa) wygl(cid:200)da nast(cid:218)puj(cid:200)co: ls -Z ifcfg-eth0 -rw-r--r--. root root unconfined_u:object_r:default_t:s0ifcfg-eth0 Ci(cid:200)g unconfined_u oznacza u(cid:285)ytkownika, object_r — rol(cid:218), default_t — typ, a s0 — poziom. To w(cid:239)a(cid:258)nie te informacje pozwalaj(cid:200) na podejmowanie przez system decyzji dotycz(cid:200)cych bez- piecze(cid:241)stwa. Pami(cid:218)taj, (cid:285)e najpierw s(cid:200) sprawdzane regu(cid:239)y DAC — je(cid:258)li nie pozwalaj(cid:200) one na podj(cid:218)cie dzia(cid:239)a(cid:241), to regu(cid:239)y SELinux w ogóle nie b(cid:218)d(cid:200) sprawdzane. Przygotuj si(cid:218) Wykonamy jedynie kilka polece(cid:241) na koncie administratora; przejrzymy tak(cid:285)e niektóre ustawie- nia. Nie b(cid:218)dziemy wprowadza(cid:202) (cid:285)adnych zmian w konfiguracji. W tym przyk(cid:239)adzie zak(cid:239)adam, (cid:285)e SELinux dzia(cid:239)a w trybie restrykcyjnym (ang. enforcing mode). Aby okre(cid:258)li(cid:202) tryb, w którym si(cid:218) znajdujesz, wywo(cid:239)aj polecenie sestatus. Efekt powinien by(cid:202) podobny do tego: 95 Kup książkęPoleć książkę Najlepsze narz(cid:266)dzia w systemie Linux Jak to zrobi(cid:202) 1. Wykonaj polecenie getenforce; powinien zosta(cid:202) wy(cid:258)wietlony komunikat o w(cid:239)(cid:200)czeniu trybu restrykcyjnego (ang. enforcing mode). 2. Przejrzyj list(cid:218) powi(cid:200)za(cid:241): semanage login -l 3. Aby przejrze(cid:202) konteksty SELinux dla wykonywanych procesów, wykonaj poni(cid:285)sze polecenie: ps -eZ 4. Aby obejrze(cid:202) kontekst u(cid:285)ytkownika, wykonaj poni(cid:285)sze polecenie: id -Z 5. Polecenie sealert jest wykorzystywane do przegl(cid:200)dania pe(cid:239)nych komunikatów SELinux w momencie wyst(cid:200)pienia b(cid:239)(cid:218)dów. Sprawd(cid:283) zawarto(cid:258)(cid:202) pliku /var/log/ messages, aby si(cid:218) przekona(cid:202), czy zosta(cid:239)y wygenerowane jakiekolwiek b(cid:239)(cid:218)dy. Je(cid:258)li tak, mo(cid:285)esz wykona(cid:202) polecenie sealert -l dla komunikatu o wybranym numerze, aby dowiedzie(cid:202) si(cid:218) wi(cid:218)cej. 6. Szczegó(cid:239)owa lista warto(cid:258)ci logicznych SELinux z opisami jest dost(cid:218)pna za pomoc(cid:200) polecenia: semanage boolean -l 7. Aby obejrze(cid:202) list(cid:218) bez opisów, wykonaj poni(cid:285)sze polecenie: getsebool -a 8. Aby sprawdzi(cid:202), czy pliki i katalogi dysponuj(cid:200) odpowiednio uruchomionym kontekstem SELinux, wykonaj poni(cid:285)sze polecenie: matchpathcon 96 Kup książkęPoleć książkę Rozdzia(cid:225) 5. • Uprawnienia, dost(cid:266)p i bezpiecze(cid:276)stwo Zobacz równie(cid:285) Jak ju(cid:285) wspomnia(cid:239)em, SELinux jest instalowany domy(cid:258)lnie w wi(cid:218)kszo(cid:258)ci dystrybucji. Czasa- mi mo(cid:285)esz nie zdawa(cid:202) sobie sprawy, (cid:285)e jest on dost(cid:218)pny. Niekiedy mo(cid:285)e si(cid:218) jednak okaza(cid:202), (cid:285)e z powodu jego obecno(cid:258)ci b(cid:218)d(cid:200) wynika(cid:202) ró(cid:285)ne problemy. Je(cid:258)li spróbujesz zainstalowa(cid:202) us(cid:239)ug(cid:218) — np. vsftpd — mo(cid:285)e si(cid:218) okaza(cid:202), (cid:285)e nie b(cid:218)dzie to mo(cid:285)liwe z powodu wyst(cid:200)pienia konfliktu z polityk(cid:200) SELinux. Zazwyczaj w takich sytuacjach otrzymasz komunikat o b(cid:239)(cid:218)dzie. Cho(cid:202) ko- munikat ten mo(cid:285)e okaza(cid:202) si(cid:218) pomocny w rozwi(cid:200)zaniu problemu, z mojego do(cid:258)wiadczenia wynika, (cid:285)e takie porady nie s(cid:200) przydatne. Mimo wykonania opisanych kroków dost(cid:218)p nadal nie b(cid:218)dzie mo(cid:285)liwy. W takich sytuacjach prze(cid:239)(cid:200)czam tryb SELinux na tryb zezwalania (ang. permissive mode) i kontynuuj(cid:218) wykonywane przeze mnie operacje: setenforce 0 Zwró(cid:202) uwag(cid:218), (cid:285)e taki trik zadzia(cid:239)a tylko do nast(cid:218)pnego restartu. Wi(cid:218)cej informacji na temat SELinux znajdziesz w doskona(cid:239)ym przewodniku na stronie inter- netowej dystrybucji Fedora. Korzystanie z narz(cid:218)dzia sudo Czasami (zw(cid:239)aszcza gdy jeste(cid:258) administratorem systemu) istnieje konieczno(cid:258)(cid:202) przyznania nie- którym u(cid:285)ytkownikom wi(cid:218)kszego dost(cid:218)pu do komputera. Jednocze(cid:258)nie nie powinni oni mie(cid:202) dost(cid:218)pu do konta administratora. Te dwa za(cid:239)o(cid:285)enia da si(cid:218) po(cid:239)(cid:200)czy(cid:202), modyfikuj(cid:200)c plik /etc/sudoers i korzystaj(cid:200)c z narz(cid:218)dzia sudo. Przygotuj si(cid:218) Poni(cid:285)sze czynno(cid:258)ci nie powinny uszkodzi(cid:202) Twojego systemu. Wykonamy je z poziomu konta u(cid:285)ytkownika utworzonego powy(cid:285)ej. W ramach tej porady b(cid:218)dzie niezb(cid:218)dny dost(cid:218)p do konta administratora. Jak to zrobi(cid:202) 1. Najpierw zrób kopi(cid:218) zapasow(cid:200) pliku /etc/sudoers: cp /etc/sudoers /tmp/sudoers.orig 2. Pliku sudoers nie edytuje si(cid:218) bezpo(cid:258)rednio — s(cid:239)u(cid:285)y do tego celu polecenie visudo. Nazwa tego polecenia nie jest zbyt praktyczna, poniewa(cid:285) nie musisz korzysta(cid:202) akurat z vi — mo(cid:285)esz ustawi(cid:202) dowolny edytor, korzystaj(cid:200)c ze zmiennej EDITOR. Ustaw edytor zgodnie ze swoimi preferencjami, a nast(cid:218)pnie wykonaj polecenie: visudo 97 Kup książkęPoleć książkę Najlepsze narz(cid:266)dzia w systemie Linux 3. To polecenie utworzy tymczasow(cid:200) kopi(cid:218) pliku sudoers i otworzy j(cid:200) do edycji. Je(cid:258)li wszystko zostanie wykonane poprawnie, po zako(cid:241)czeniu edycji tymczasowa kopia zast(cid:200)pi oryginalny plik. 4. Przejrzyj cz(cid:218)(cid:258)(cid:202) pliku po(cid:258)wi(cid:218)con(cid:200) aliasom. Zosta(cid:239)y one podzielone na grupy, takie jak: networking (sie(cid:202)), software (oprogramowanie), services (us(cid:239)ugi), locate i inne. Za chwil(cid:218) przekonamy si(cid:218), jak dzia(cid:239)aj(cid:200) przedstawione mechanizmy. 5. Najpierw jednak wykonamy pewne testy. Otwórz inn(cid:200) sesj(cid:218) (jako go(cid:258)(cid:202)). Ja skorzystam ze swojego konta autor. 6. Jako autor wejd(cid:283) do katalogu /tmp: cd /tmp 7. Utwórz plik, korzystaj(cid:200)c z polecenia: ls f1 8. Skopiuj ten plik do katalogu /usr/bin: cp f1 /usr/bin 9. Powiniene(cid:258) otrzyma(cid:202) komunikat o b(cid:239)(cid:218)dzie. Nie jest to nic dziwnego — zwyk(cid:239)y u(cid:285)ytkownik standardowo nie ma uprawnie(cid:241) do zapisu do katalogu /usr/bin. Teraz powró(cid:202)my do sesji z otwartym narz(cid:218)dziem visudo. 10. B(cid:218)dzie Ci potrzebna nazwa hosta Twojego komputera. W tym przyk(cid:239)adzie skorzystamy po prostu z adresu IP. W razie potrzeby mo(cid:285)esz go uzyska(cid:202), korzystaj(cid:200)c z polecenia ifconfig. 11. Tu(cid:285) za fragmentem pliku po(cid:258)wi(cid:218)conym poleceniu shutdown dodamy wiersz dla naszego u(cid:285)ytkownika-go(cid:258)cia. Sk(cid:239)adnia jest nast(cid:218)puj(cid:200)ca: u(cid:285)ytkownik, nazwa hosta, polecenia i opcje. Dodaj wi(cid:218)c poni(cid:285)szy wiersz: autor 192.168.1.115=(ALL) ALL 12. Zapisz plik i zamknij sesj(cid:218) visudo. Spróbuj wykona(cid:202) polecenie ponownie — z poziomu katalogu /tmp wykonaj polecenie cp f1 /usr/bin. Nadal powiniene(cid:258) otrzyma(cid:202) komunikat o b(cid:239)(cid:218)dzie. Teraz za to spróbuj wykona(cid:202) polecenie po lekkiej modyfikacji: sudo cp f1 /usr/bin 13. Uch, czy(cid:285)by kolejna pro(cid:258)ba o has(cid:239)o? W rzeczy samej, i co wa(cid:285)ne, chodzi o has(cid:239)o u(cid:285)ytkownika, a nie administratora. W takiej sytuacji nietrudno o b(cid:239)(cid:200)d. Najpro(cid:258)ciej b(cid:218)dzie zapami(cid:218)ta(cid:202), (cid:285)e u(cid:285)ytkownik-go(cid:258)(cid:202) nie powinien w ogóle zna(cid:202) has(cid:239)a administratora. Wprowad(cid:283) zatem swoje has(cid:239)o. 14. Je(cid:258)li jest to pierwsza sytuacja, w której korzystasz z polecenia sudo, zostanie wy(cid:258)wietlony dodatkowy komunikat. Warto si(cid:218) z nim dok(cid:239)adnie zapozna(cid:202). 15. Wreszcie polecenie powinno zosta(cid:202) wykonane bez problemów. (cid:165)wietnie, prawda? Dzi(cid:218)ki zastosowaniu ci(cid:200)gu ALL w pliku sudoers u(cid:285)ytkownik otrzyma(cid:239) pe(cid:239)ne uprawnienia. Zwró(cid:202) uwag(cid:218), (cid:285)e niektóre mechanizmy dalej nie b(cid:218)d(cid:200) dzia(cid:239)a(cid:202) poprawnie — np. przekierowania. 98 Kup książkęPoleć książkę Rozdzia(cid:225) 5. • Uprawnienia, dost(cid:266)p i bezpiecze(cid:276)stwo 16. No có(cid:285), prawdopodobnie nie chcemy, aby u(cid:285)ytkownik autor zamiesza(cid:239) zbyt du(cid:285)o w systemie, dlatego ograniczymy jego mo(cid:285)liwo(cid:258)ci. Wykonaj ponownie polecenie visudo. 17. Przewi(cid:241) plik w dó(cid:239) lub znajd(cid:283) ci(cid:200)g Processes. Odkomentuj wiersz # Cmnd_Alias PROCESSES, usuwaj(cid:200)c pocz(cid:200)tkowy znak #. 18. Przewi(cid:241) plik w dó(cid:239) do wiersza zawieraj(cid:200)cego ustawienia u(cid:285)ytkownika autor. Zmie(cid:241) go w nast(cid:218)puj(cid:200)cy sposób: autor 192.168.1.115=(ALL) PROCESSES 19. Teraz musimy znale(cid:283)(cid:202) proces, który mo(cid:285)na zabi(cid:202). Uruchom narz(cid:218)dzie vi z poziomu konta administratora — mo(cid:285)esz np. wykona(cid:202) polecenie vi ksiazka. 20. W ramach sesji swojego u(cid:285)ytkownika wykonaj polecenie ps auxw | grep vi ksiazka . Zapami(cid:218)taj identyfikator procesu (ang. Process ID — PID). 21. W ramach sesji swojego u(cid:285)ytkownika wykonaj polecenie kill -9 dla podanego PID. Otrzymasz b(cid:239)(cid:200)d. Teraz wykonaj je ponownie, korzystaj(cid:200)c za to z polecenia: sudo kill -9 PID 22. Proces z edytorem vi powinien zosta(cid:202) zabity. Je(cid:258)li ekran pozostanie niebieski, wykonaj polecenie ls. W ten sposób oczy(cid:258)cisz terminal. Oto zrzut ekranu pochodz(cid:200)cy z przyk(cid:239)adowego pliku /etc/sudoers: 99 Kup książkęPoleć książkę Najlepsze narz(cid:266)dzia w systemie Linux Zobacz równie(cid:285) Jak wida(cid:202), plik sudoers pozwala na bardzo wyrafinowane przyznawanie uprawnie(cid:241). U(cid:285)ytkow- nicy mog(cid:200) otrzyma(cid:202) przeró(cid:285)ne przywileje. Wi(cid:218)cej informacji znajdziesz na stronach podr(cid:218)cz- nika man: man sudoers. Moim zdaniem, wielu u(cid:285)ytkownikom mo(cid:285)na zaufa(cid:202), daj(cid:200)c im pe(cid:239)en dost(cid:218)p do konta root bez szkody dla systemu. Czasami zdarzaj(cid:200) si(cid:218) jednak wyj(cid:200)tki. Konfiguruj(cid:200)c polecenie sudo, mo(cid:285)esz sp(cid:218)dzi(cid:202) wiele czasu na próbie ustawienia go w odpowiedni sposób, i to tylko po to, aby si(cid:218) na ko(cid:241)cu dowiedzie(cid:202), (cid:285)e i tak musisz co(cid:258) jeszcze doda(cid:202). U(cid:285)ytkownicy b(cid:218)d(cid:200) poirytowani, ponie- wa(cid:285) nie b(cid:218)d(cid:200) w stanie wykonywa(cid:202) swojej pracy, dopóki nie wprowadzisz zmian. Wreszcie, gdy skonfigurujesz sudo w pe(cid:239)ni, oka(cid:285)e si(cid:218), (cid:285)e kto(cid:258) korzystaj(cid:200)c z niego, narobi szkód. Z mojego do- (cid:258)wiadczenia wynika, (cid:285)e je(cid:285)eli u(cid:285)ytkownik pope(cid:239)ni raz jaki(cid:258) b(cid:239)(cid:200)d, to b(cid:218)dzie go pope(cid:239)nia(cid:239) stale. Katalog /tmp Katalog /tmp jest wyj(cid:200)tkowy, poniewa(cid:285) mog(cid:200) do niego zapisywa(cid:202) pliki wszyscy u(cid:285)ytkownicy. Oto wpis dla katalogu /tmp na moim komputerze: drwxrwxrwt. 10 root root 4096 Mar 31 03:48 tmp Jak wida(cid:202), jest on dost(cid:218)pny dla wszystkich. Litera t w uprawnieniach oznacza, (cid:285)e bit ograni- czonego usuni(cid:218)cia jest ustawiony dla tego katalogu. W przypadku katalogów oznacza to, (cid:285)e zwykli u(cid:285)ytkownicy nie mog(cid:200) usun(cid:200)(cid:202) lub zmieni(cid:202) nazwy tego katalogu, o ile nie maj(cid:200) specjal- nych uprawnie(cid:241). Korzystaj(cid:200)c z katalogu /tmp jako zwyk(cid:239)y u(cid:285)ytkownik, powiniene(cid:258) uwa(cid:285)a(cid:202), poniewa(cid:285) obowi(cid:200)zuj(cid:200) w nim pewne ograniczenia. Jak to zrobi(cid:202) 1. Wykonaj poni(cid:285)sze polecenie: cd /tmp 2. Je(cid:258)li w katalogu znajduj(cid:200) si(cid:218) pliki .txt pochodz(cid:200)ce z poprzednich porad, usu(cid:241) je — zwyk(cid:239)e polecenie rm *.txt powinno wystarczy(cid:202). 3. Wykonaj poni(cid:285)sze polecenie: ls root1.txt 4. W kolejnej sesji (ja jako u(cid:285)ytkownik-go(cid:258)(cid:202) skorzystam z konta autor) wykonaj poni(cid:285)sze polecenie: cd /tmp 100 Kup książkęPoleć książkę Rozdzia(cid:225) 5. • Uprawnienia, dost(cid:266)p i bezpiecze(cid:276)stwo 5. Wykonaj kolejne polecenie: ls autor.txt 6. Powy(cid:285)sze polecenie nie powinno sprawi(cid:202) k(cid:239)opotów. Teraz wykonaj nast(cid:218)pne polecenie: ls root1.txt 7. Powinien zosta(cid:202) wy(cid:258)wietlony komunikat Odmowa dost(cid:218)pu. Dlaczego? Poniewa(cid:285) mimo mo(cid:285)liwo(cid:258)ci zapisu do katalogu przez wszystkich u(cid:285)ytkowników tradycyjne uprawnienia (DAC) wci(cid:200)(cid:285) musz(cid:200) by(cid:202) przestrzegane. Zobacz równie(cid:285) Z opisanych powy(cid:285)ej wzgl(cid:218)dów nie radz(cid:218) korzysta(cid:202) z katalogu /tmp do czegokolwiek z wy- j(cid:200)tkiem plików tymczasowych. Co wi(cid:218)cej, spora cz(cid:218)(cid:258)(cid:202) dystrybucji systemu Linux regularnie czy(cid:258)ci katalog /tmp, co powoduje, (cid:285)e wszystkie pliki nieb(cid:218)d(cid:200)ce w posiadaniu administratora s(cid:200) usuwane. Pami(cid:218)taj o tym, tworz(cid:200)c pliki tymczasowe — zw(cid:239)aszcza gdy piszesz skrypty (wi(cid:218)cej informacji na ten temat znajdziesz w rozdziale 8.). 101 Kup książkęPoleć książkę Najlepsze narz(cid:266)dzia w systemie Linux 102 Kup książkęPoleć książkę Skorowidz A administrator, 180, 184 adres IP, 69 aliasy, 22–24 aplikacje do poczty elektronicznej, 77–79 automatyzacja zada(cid:241) za pomoc(cid:200) narz(cid:218)dzia cron, 155–161 E edycja polece(cid:241) w terminalu, 16, 17 Emacs, 54–56 ext2, 135 ext3, 135 ext4, 135 B Bash, 16 bezpiecze(cid:241)stwo systemu, 189–191 bezpieczna pow(cid:239)oka, 72 bezpieczne kopiowanie, 69–72 bia(cid:239)e znaki w nazwach plików, 25, 26 blok identyfikacyjny, 50 blokowanie pliku w celu zapewnienia wy(cid:239)(cid:200)cznego dost(cid:218)pu, 146, 147 BSD, 106–108 Btrfs, 134 budowanie j(cid:200)dra ze strony kernel.org, 169–171 C D cron, 155–161 DAC, 95 demon apcupsd, 188 demony, 105 domena, 69 F FAT, 135 Firefox, 75–77 formatowanie partycji, 128 FTP, 69–72 G GNOME 2, 33–36 graficzny interfejs u(cid:285)ytkownika, 33 GRUB, 174–176 GRUB 2, 176–178 GUI, 33, 181, 182 H has(cid:239)a, 90, 91 historia polece(cid:241), 17, 18 Kup książkęPoleć książkę Skorowidz I identyfikator procesu, 50, 117 identyfikatory u(cid:285)ytkownika i grup, 103 inode, 49 interfejs graficzny, 181, 182 IPv4, 83–85 IPv6, 83–85 j(cid:200)dro, 163–178 monolityczne, 163 j(cid:218)zyk Perl, 147–153 J K katalog, 49–64 /bin, 152 /boot, 122, 123 /dev, 122 /etc/grub.d, 177 /home, 122 /root, 122 /tmp, 100, 101, 122 /usr, 122 /usr/bin, 153 g(cid:239)ówny, 121 KDE desktop, 36–39 kernel.org, 169–171 klasy dost(cid:218)pne w protokole IPv4, 83 klawisze u(cid:285)ywane do edycji polece(cid:241), 17 kompresja plików, 60–63 konfigurowanie zapory sieciowej, 93–95 konsola, 15–31 kopie zapasowe, 182, 183 kopiowanie plików, 51–53, 188 za pomoc(cid:200) protoko(cid:239)ów FTP i SCP, 69–72 L logowanie za pomoc(cid:200) protoko(cid:239)ów ssh/scp bez konieczno(cid:258)ci wprowadzania hase(cid:239), 193 LVM, 131–135 LXDE, 41–43 210 MAC, 95 man, 195–197 Mate, 45–47 Mozilla Firefox, 75–77 nazwy plików, 192 niceness level, 113 M N O obowi(cid:200)zkowa kontrola dost(cid:218)pu, 95 obs(cid:239)uga hase(cid:239), 90, 91 uprawnie(cid:241) plików, 91–93 odmowa dost(cid:218)pu, 58 opcja si(cid:239)owa polecenia, 167 operacje na plikach, 51–53 operator potoku, 27, 28 przekierowania, 27, 28 P parametry w skryptach, 140, 141 partycja, 121, 123 Perl, 147–153 p(cid:218)tle, 141–144 PID, 50, 103 plik, 49–64 /boot/grub2/grub.cfg, 176 /etc/default/grub, 176 /etc/fstab, 123 /etc/services, 81, 82 /etc/sudoers, 97–100 /etc/toprc, 112 /var/log/cron, 161 /var/log/messages, 167 bashrc, 24, 25 binarny, 57, 58 cron.allow, 155 cron.deny, 155 crontab, 156–158 zg(cid:239)aszanie b(cid:239)(cid:218)dów, 161 Kup książkęPoleć książkę grub.conf, 174–176 initramfs, 123 tekstowy, 54–56 poczta elektroniczna, 77–79 podr(cid:218)cznik man, 195–197 podsie(cid:202), 69 polecenie a sekcja Sposób u(cid:285)ycia, 198, 199 adduser, 88 alias, 23 chown, 93 crontab, 156 df, 124, 194 diff, 173 dmesg, 59, 167 dumpe2fs, 50 echo, 21 echo $, 26, 27 fdisk, 125–127 file, 57, 58, 188 find, 53, 54 fsck, 125, 129–131 grep, 59, 60 GRUB 2, 178 head, 64 history, 17, 18 info, 197 insmod, 164, 165 iptables, 93 irssi --help, 206 lbook, 23 locate, 53, 54 ls, 99 ls /proc, 105 ls -la, 90, 91 lsmod, 164 LVM, 131, 132 man, 196 mkfs, 127, 128 modinfo, 164, 165 modprobe, 164, 165 nice, 113–115 passwd, 90, 91 ps, 105–108, 191 rmmod, 166 route, 67 scp, 70 Skorowidz screen aplikacja :, 30 screen -list, 30 sealert, 96 stat, 63 su, 184 sudo, 98 sum, 63 tail, 64 tar, 61, 182 top, 105, 108–113 touch, 63, 64 ulimit, 105 uname -r, 169 useradd, 87–90 wget, 74–75 who, 190 zip, 60–63 po(cid:239)(cid:200)czenie bezprzewodowe, 66 przewodowe, 66 pomoc na temat systemu Linux, 195–207 porty dynamiczne, 82 powszechnie znane, 82 prywatne, 82 zarejestrowane, 82 potoki, 27, 28 PPID, 103 priorytety procesów, 113–115 proces, 103–119 init, 103 pierwszoplanowy, 104 uruchomiony w tle, 104 przegl(cid:200)danie stron internetowych w Firefox, 75–77 przekazywanie wyj(cid:258)cia aplikacji pomi(cid:218)dzy terminalami, 28, 29 przekierowania, 27, 28 punkt montowania, 123 R Reiser3, 135 Reiser4, 135 ReiserFS, 135 rodzic, 121, 122 rozwi(cid:200)zywanie problemów, 66–69 ruter, 94, 95, 190 211 Kup książkęPoleć książkę Skorowidz S SCP, 69–72 Screen, 29–31 Security Enhanced Linux, 95–97 SELinux, 95–97 serwer Apache httpd, 79–81 skróty w programie cron, 160 skrypty, 137–153 sprawdzanie numeru portu, 81, 82 SSH, 72–74 standardowe wej(cid:258)cie, 104 wyj(cid:258)cie, 104 standardowy strumie(cid:241) b(cid:239)(cid:218)dów, 104 sudo, 97–100 superblock, 50 swap, 121, 122 system plików, 49–64, 123, 134, 135 /proc, 115–118, 123 /sys, 123 systemy plików i katalogów, 122–125 (cid:165) (cid:258)rodowiska graficzne, 33–47 T TAR, 60–63, 189 Telnet, 72–74 terminal, 15–31, 29 tworzenie aliasów, 22–24 pliku crontab, 157, 158 kont u(cid:285)ytkowników, 87–90 kopii zapasowej systemu, 144–146 kopii zapasowych, 182–185 p(cid:218)tli w skrypcie, 141–144 plików i katalogów, 51 skryptów, 137–153 U uchwyty do plików, 104, 105 Unity, 43, 44 uprawnienia dost(cid:218)pu do pliku, 91–93 UPS, 187 uruchamianie polecenia, 158–160 w(cid:239)asnego serwera WWW, 79–81 212 urz(cid:200)dzenie, 123 us(cid:239)ugi, 105 usuwanie pliku crontab, 160 tekstu z pliku, 138–39 uznaniowa kontrola dost(cid:218)pu, 95 uzupe(cid:239)nianie nazw plików, 18–20 Vim, 54–56 V W w(cid:200)tki, 105 weryfikacja systemu plików, 129–131 wget, 74, 75 wiersz polece(cid:241), 15–31 w(cid:239)amanie do systemu, 191, 192 wolumeny logiczne, 131–135 xconfig, 171–174 xfce, 39–41 X Z zadania, 104 zapora sieciowa, 93–95 zarz(cid:200)dzanie modu(cid:239)ami, 164–169 zg(cid:239)aszanie b(cid:239)(cid:218)dów z pliku crontab, 161 ZIP, 60–63, 189 zmienna, 141 CRON_TZ, 160 EDITOR, 21 HISTSIZE, 18, 21 HOME, 21 HOSTNAME, 21 MAILTO, 160 PATH, 21 PS1, 20, 21, 186 PWD, 21 SHELL, 21, 160 (cid:258)rodowiskowa, 21, 22, 160, 185 TERM, 21 TZ, 21 USER, 21 znak zach(cid:218)ty, 20 znaki w nazwach plików, 25, 26 Kup książkęPoleć książkę
Pobierz darmowy fragment (pdf)

Gdzie kupić całą publikację:

Najlepsze narzędzia w systemie Linux. Wykorzystaj ponad 70 receptur i programuj szybko i skutecznie
Autor:

Opinie na temat publikacji:


Inne popularne pozycje z tej kategorii:


Czytaj również:


Prowadzisz stronę lub blog? Wstaw link do fragmentu tej książki i współpracuj z Cyfroteką: