Podręcznik KDE su - KDE Documentation
Transkrypt
Podręcznik KDE su - KDE Documentation
Podr˛ecznik KDE su Geert Jansen Polskie tłumaczenie: Suse Polska Weryfikacja i uaktualnienie tłumaczenia: Adrian Brosz Podr˛ecznik KDE su 2 Spis treści 1 Wprowadzenie 5 2 Używanie KDE su 6 3 Szczegóły implementacji 8 3.1 Uwierzytelnianie X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3.2 Interfejs do su . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3.3 Sprawdzanie hasła . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3.4 Przechowywanie hasła . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 4 Autor 10 Streszczenie KDE su jest graficzna˛ nakładka˛ dla polecenia Uniksa su. Podr˛ecznik KDE su Rozdział 1 Wprowadzenie Witamy w KDE su! KDE su jest graficzna˛ nakładka˛ KDE dla polecenia Uniksa su. Pozwala ona na uruchamianie programów z uprawnieniami innych użytkowników, po podaniu ich hasła. KDE su jest nieuprzywilejowanym programem, korzysta z polecenia systemowego su. KDE su ma jedna˛ dodatkowa˛ właściwość: może zapami˛etywać dla Ciebie hasła. Jeśli używasz tej funkcji, musisz podać hasło tylko raz, dla każdego z uruchamianych poleceń . Zobacz Sekcja 3.4 - tam jest wi˛ecej informacji na ten temat i analiza bezpieczeństwa. Ten program jest zaprojektowany tak, by uruchamiać go z linii poleceń lub z plików .desktop. Chociaż prosi o podanie hasła administratora (root) za pomoca˛ okna dialogowego z graficznym interfejsem, jest raczej łacznikiem ˛ pomi˛edzy poleceniem konsoli a graficznym interfejsem użytkownika. 5 Podr˛ecznik KDE su Rozdział 2 Używanie KDE su Używanie KDE su jest łatwe. Składnia wyglada ˛ nast˛epujaco: ˛ kdesu [-c] [-d] [-fplik] [-inazwa ikony ] [-n] [-ppriorytet] [-r] [-s] [-t] [-uużytkownik] [--n onewdcop] [polecenie [arg1] [arg2] [...]] kdesu [opcje KDE] [opcje Qt] Parametry linii poleceń wyjaśnione sa˛ poniżej. -c program Ten parametr określa program który ma być uruchomiony z uprawnieniami administratora. Musi być on przekazany jako jeden argument. Jeśli wi˛ec chcesz uruchomić menedżera plików, wpisujesz w linii poleceń: kdesu -c kfm -sw -d Nie pokazuj polecenia do uruchomienia w oknie dialogowym. -f plik Ta opcja umożliwia wydajne używanie of KDE su w plikach .desktop. Przekazuje ona KDE su polecenie sprawdzenia pliku podanego przez parametr plik. Jeśli plik ten może być zapisany przez bieżacego ˛ użytkownika, KDE su wykona polecenie jako ten właśnie użytkownik. Jeśli bieżacy ˛ użytkownik nie ma uprawnień do zapisania tego pliku, polecenie jest wykonywane jako użytkownik użytkownik (domyślnie root). plik jest określany w nast˛epujacy ˛ sposób: jeśli PLIK zaczyna si˛e od / , jest uznawany za absolutna˛ nazw˛e pliku. W przeciwnym wypadku, przyjmuje si˛e, że jest nazwa˛ jednego z globalnych plików konfiguracyjnych KDE. Na przykład, aby skonfigurować menedżer logowania KDE, kdm, możesz użyć polecenia kdesu -c kdmconfig -f kdmrc -i nazwa ikony Określa ikon˛e, która zostanie użyta w oknie dialogowym wprowadzania hasła. Można podać tylko nazw˛e, bez rozszerzenia. Na przykład, aby uruchomić kfmclient i pokazać ikon˛e Konquerora w oknie dialogowym wpisywania hasła: kdesu -i konqueror kfmclient -n Nie przechowuj hasła. Opcja wyłacza ˛ pole wyboru Zapami˛etaj hasło w oknie dialogowym wpisywania hasła. 6 Podr˛ecznik KDE su -p priorytet Ustawia wartość priorytetu procesu. Priorytet jest dowolna˛ wartościa˛ mi˛edzy 0 a 100, gdzie 100 oznacza najwyższy, natomiast 0 najniższy priorytet. Domyślna wartość to 50. -r Uruchamia polecenie z priorytetem czasu rzeczywistego. -s Zatrzymuje demona kdesu. Patrz Sekcja 3.4. -t Włacza ˛ wyjście na terminal. Opcja ta wyłacza ˛ przechowywanie hasła. Głównym zastosowaniem powyższego jest znajdowanie bł˛edów (debugowanie) — jeśli chcesz uruchamiać programy konsoli, użyj lepiej zwykłego polecenia su zamiast KDE su. -u użytkownik Mimo, że najcz˛estszym zastosowaniem dla KDE su jest uruchamianie polecenia jako administrator, możesz podać dowolna˛ nazw˛e użytkownika i odpowiednie dla niego hasło. 7 Podr˛ecznik KDE su Rozdział 3 Szczegóły implementacji 3.1 Uwierzytelnianie X Program, który uruchamiasz, b˛edzie działał z identyfikatorem użytkownika root i przez to w zasadzie nie b˛edzie miał dost˛epu do Twojego ekranu X-ów. KDE su omija ten problem poprzez dodawanie ciasteczka identyfikujacego ˛ dla Twojego ekranu do pliku tymczasowego .Xauthorit y. Po zakończeniu działania polecenia, plik ten jest usuwany. Jeśli nie używasz ciasteczek X, jesteś zdany na siebie. KDE su wykryje to ustawienie i nie doda ciasteczka, ale b˛edziesz musiał si˛e upewnić, że użytkownik root ma dost˛ep do Twojego ekranu. 3.2 Interfejs do su KDE su używa polecenia systemowego su do zmiany uprawnień. W tej cz˛eści wyjaśnione zostana˛ szczegóły, jak KDE su to robi. Ponieważ niektóre implementacje polecenia su (na przykład Red Hat® ) nie czytaja˛ hasła ze standardowego wejścia (stdin), KDE su tworzy par˛e pty/tty, a nast˛epnie wykonuje su ze standardowymi deskryptorami plików podłaczonymi ˛ do tego tty. Aby uruchomić polecenie przekazane przez użytkownika, zamiast domyślnie uruchamianej interaktywnej powłoki, KDE su przekazuje polecenie za pomoca˛ opcji -c polecenia su. Ten argument jest rozumiany przez każda˛ znana˛ mi powłok˛e, wi˛ec powinno to działać w każdym przypadku. Polecenie su przekazuje argument -c do uruchomionej powłoki i powłoka uruchamia wskazany program. Przykładowe polecenie: su root -c program. Zamiast uruchamiania polecenia użytkownika bezpośrednio poprzez polecenie su, KDE su uruchamia mały program pośredniczacy ˛ o nazwie kdesu_stub. Ten program (działajacy ˛ jako użytkownik docelowy), pobiera niektóre informacje z KDE su poprzez połaczenie ˛ pty/tty (podła˛ czone do standardowego wejścia i wyjścia) i wówczas uruchamia program użytkownika. Przekazywane sa:˛ nazwa ekranu X, ciasteczko uwierzytelniajace ˛ X (jeśli jest dost˛epne), zawartość zmiennej PATH i polecenie do uruchomienia. Powodem, dla którego użyty jest program pośredniczacy ˛ jest to, że ciasteczko X jest prywatna˛ informacja˛ i nie może być przekazywane w linii polecenia. 3.3 Sprawdzanie hasła KDE su sprawdza hasło, które zostało podane i wyświetli komunikat o bł˛edzie, jeśli nie b˛edzie ono poprawne. Sprawdzanie dokonywane jest poprzez uruchomienie prostego programu /bin/ true. Jeśli sprawdzenie si˛e powiedzie, hasło uznawane jest za poprawne. 8 Podr˛ecznik KDE su 3.4 Przechowywanie hasła Dla twojej wygody, KDE su posiada opcj˛e «przechowywania haseł». Jeśli interesuja˛ Ci˛e kwestie bezpieczeństwa, powinieneś przeczytać t˛e cz˛eść. Pozwalajac ˛ KDE su na zapami˛etywanie haseł, otwierasz (mała) ˛ luk˛e w bezpieczeństwie systemu. Oczywiście, KDE su nie pozwala komukolwiek innemu poza Toba˛ na używanie hasła, ale jeśli zostanie to zrobione nieuważnie może obniżyć poziom bezpieczeństwa administratora (użytkownika root) do tego, jaki ma zwykły użytkownik (Ty). Haker, który włamie si˛e na Twoje konto, może zdobyć uprawnienia administratora. KDE su próbuje temu zapobiec. Zabezpieczenia jakich używa sa,˛ moim zdaniem, wystarczajace ˛ i sa˛ objaśnione poniżej. KDE su używa demona, nazwanego kdesud. Demon nasłuchuje na gnieździe Uniksa w katalogu /tmp, oczekujac ˛ na polecenia. Tryb (uprawnienia) gniazda to 0600 wi˛ec tylko Ty jako posiadacz odpowiedniego identyfikatora użytkownika możesz si˛e połaczyć. ˛ Jeśli właczone ˛ jest przechowywanie haseł, KDE su wykonuje polecenie poprzez tego demona. Zapisuje polecenie i hasło administratora do gniazda, a nast˛epnie demon wykonuje polecenie za pomoca˛ su, jak wyjaśniono wcześniej. Później, polecenie i hasło nie sa˛ zapominane, zamiast tego sa˛ one przechowywane przez określony przedział czasu. Przedział czasu można określić w module Centrum sterowania KDE. Jeśli pojawi si˛e nast˛epne żadanie ˛ wykonania tego samego polecenia w tym przedziale czasu, nie b˛edzie konieczne powtórne podanie hasła. Aby uchronić demona przed kradzieża˛ haseł przez włamywaczy (na przykład poprzez dołaczenie ˛ debuggera), demon jest uruchamiany ze zmiana˛ grupy (SGID) na ’nogroup’. To powinno zabezpieczyć przed uzyskaniem hasła z procesu kdesud przez wszystkich zwykłych użytkowników (wliczajac ˛ Ciebie). Dodatkowo demon ustawia zmienna˛ środowiskowa˛ DISPLAY na wartość która˛ miała przy uruchomieniu. Jedyna˛ rzecza˛ która˛ może zrobić wówczas włamywacz jest uruchomienie programu na Twoim ekranie. Jedynym słabym punktem tego schematu jest to, że programy jakie uruchamiasz prawdopodobnie nie sa˛ pisane z myśla˛ o bezpieczeństwie (czyli do wykonania z uprawnieniami administratora za pomoca˛ SUID). Oznacza to że moga˛ one zawierać bł˛edy przepełnienia bufora lub inne problemy, które moga˛ wykorzystać hakerzy. Korzystanie z opcji zapami˛etywania haseł jest kompromisem pomi˛edzy bezpieczeństwem i wygoda.˛ Samemu trzeba zdecydować, co si˛e wybiera, majac ˛ świadomość ryzyka. 9 Podr˛ecznik KDE su Rozdział 4 Autor KDE su Prawa autorskie (c) 2000 Geert Jansen Autorem KDE su jest Geert Jansen. Jest w cz˛eści oparty na KDE su w wersji 0.3 autorstwa Pietro Iglio. Pietro i ja ustaliliśmy, że dalej ja b˛ed˛e si˛e opiekował programem. Z autorem można skontaktować si˛e pod adresem e-mailowym [email protected]. Prosz˛e o informacje na temat wszelkich niedociagni˛ ˛ eć, abym mógł je naprawić. Jeśli masz jakieś sugestie, skontaktuj si˛e ze mna.˛ Suse [email protected] Adrian [email protected] Ten program jest rozprowadzany na zasadach Licencji GNU Free Documentation License. Ten program jest rozprowadzany na zasadach Licencji Artystycznej. 10