# Priručnik za KDE su

## Uvod

Dobro došli u KDE su! KDE su je grafičko pročelje za Unix naredbu `su` za KDE. Omogućava vam da pokrenete program pod drugim korisnikom, zadavši njegovu lozinku. KDE su nije povlašćen program, već koristi sistemsku `su`.

KDE su ima jednu dodatnu mogućnost: može opciono da pamti lozinke umesto vas. Ako se oslonite na ovo, za svaku naredbu treba samo jedanput da unesete lozinku. Za više informacija i bezbednosnu analizu, pogledajte sec-password-keeping.

Ovaj program je namenjen pokretanju iz komandne linije ili iz .desktop fajlova. Mada zahteva korenu lozinku kroz grafički dijalog, pre je most između komandne linije i GUI‑ja nego čisti GUI program.

Pošto se `kdesu` više ne instalira u ``$(kde4-config --prefix)`/bin/` već u ``kde4-config --path libexec``, i stoga više nije u putanji (`PATH`), moraćete da je pokrećete pomoću `$(kde4-config --path libexec)`/kdesu``.

## Korišćenje KDE sua

Upotreba KDE sua je laka. Sintaksa glasi:

    kdesu -c naredba -d -f fajl -i ime‑ikonice -n -p prioritet -r -s -t -u korisnik --noignorebutton --attach ID-prozora

    kdesu generičke-KDE-opcije generičke-Qt-opcije

Opcije komandne linije objašnjene su ispod.

`-c `naredba``

- Zadaje da se naredba prosleđena kao argument izvršava pod korenom. Na primer, kada poželite da pokrenete novi menadžer fajlova, uneli biste u odzivnik: `$(kde4-config --path libexec)/`kdesu` `-c` dolphin`.

`-d`

- Prikaz ispravljačkih podataka.

`-f `fajl``

- Ova opcija omogućava efikasno korišćenje KDE sua u .desktop fajlovima. Govori KDE suu da ispita fajl zadat parametrom `fajl`: ako je taj fajl upisiv za trenutnog korisnika, KDE su će izvršiti naredbu pod tim korisnikom; ako nije, naredba se izvršava pod zadatim korisnikom (podrazumevano je to koren, `root`).

  Parametar `fajl` obrađuje se ovako: ako počinje sa `/`, uzima se za apsolutnu putanju do fajla; inače, uzima se za ime globalnog KDE postavnog fajla.

`-i` `ime‑ikonice`

- Zadaje ikonicu za upotrebu u dijalogu lozinke. Možete zadati samo ime bez nastavka.

  Na primer, da pokrenete K‑osvajač u režimu menadžera fajlova i dobijete ikonicu K‑osvajača u dijalogu lozinke:

      $(kde4-config --path libexec)kdesu  -i konqueror
      -c "konqueror --profile filemanagement"

`-n`

- Bez pamćenja lozinke. Isključuje kućicu Upamti lozinku u dijalogu lozinke.

`-p` `prioritet`

- Postavlja vrednost prioriteta, na broj između 0 i 100: 0 znači najniži prioritet, a 100 najviši. Podrazumevano je 50.

`-r`

- Stvarnovremensko raspoređivanje.

`-s`

- Zaustavlja demona KDE sua. Pogledajte sec-password-keeping.

`-t`

- Uključuje terminalski izlaz. Takođe isključuje pamćenje lozinki. Ovo umnogome služi u ispravljačke svrhe; ako želite da pokrenete program konzolnog režima, upotrebite umesto ovoga standardnu `su`.

`-u` `korisnik`

- Iako je najčešća primena KDE sua izvršavanje naredbe pod korenom, možete zadati bilo koje korisničko ime i odgovarajuću lozinku.

## Iznutrice

### X autentifikacija

Pokrenuti program radiće pod ID‑om korenog korisnika i generalno neće imati ovlašćenje da pristupi vašem X prikazu. KDE su zaobilazi ovo dodavanjem autentifikacionog kolačića u privremeni fajl `.Xauthority`. Po okončanju naredbe, ovaj fajl se uklanja.

Ako ne koristite X kolačiće, prepušteni ste sami sebi. KDE su će ovo otkriti i neće dodati kolačić, ali ćete morati da obezbedite da je korenu dozvoljeno da pristupi vašem X prikazu.

### Sučelje za `su`

KDE su koristi sistemsku `su` za dobavljanje ovlašćenja. U ovoj sekciji objasnićemo kako KDE su to radi.

Pošto neke izvedbe naredbe `su` (tj. ona RedHatova) neće da čitaju lozinku sa stdul., KDE su stvara par PTY/TTY i izvršava `su` sa standardnim fajl opisnicima povezanim na TTY.

Za izvršenje zadate naredbe, umesto interaktivne školjke KDE su koristi opciju `-c` sa argumentom naredbe `su`. Ovaj argument razume svaka školjka za koju znamo, pa bi trebao da bude prenosivo. `su` prosleđuje argument `-c` školjci ciljnog korisnika, a ona izvršava program. Primer: `su`root -c `naredba```.

Umesto neposrednog izvršenja zadate naredbe kroz `su`, KDE su izvršava mali program zametak `kdesu_stub`. Ovaj zametak (radi pod ciljnim korisnikom) dobavlja nešto podataka od KDE sua preko PTY/TTY kanala (zametkovog stdul. i stdiz.), a zatim izvršava zadatu naredbu. Podaci koji se prosleđuju: X prikaz, X autentifikacioni kolačić (ako je raspoloživ), promenljiva `PATH` i naredba za pokretanje. Upotreba zametka je neophodna zato što je X kolačić privatan podatak, te se ne može proslediti kroz komandnu liniju.

### Provera lozinke

KDE su će proveriti unetu lozinku, i ako nije ispravna, izdati poruku o grešci. Provera se sprovodi probnim izvršavanjem `/bin/true`: ako uspe, pretpostavlja se da je lozinka ispravna.

### Pamćenje lozinki

Radi vaše udobnosti, KDE su izvodi mogućnost pamćenja lozinki. Ako vas zanima bezbednost toga, treba da pročitate naredne pasuse.

Dozvoljavanje KDE suu da pamti lozinke otvara (malu) bezbednosnu rupu na sistemu. Očigledno, KDE su neće dozvoliti nijednom osim vašem korisničkom ID‑u da koristi lozinke, ali, ako se ovo neoprezno izvede, spušta bezbednosni nivo korena na onaj normalnog korisnika (vas); provalnik koji bi upao u vaš nalog dobio bi i koreni pristup. KDE su pokušava ovo da spreči, bezbednosnom šemom koja je, barem po našem mišljenju, razumno sigurna i izložena ispod.

KDE su koristi demon, `kdesud`, koji osluškuje za naredbama na Unix soketu u `/tmp`. Režim soketa je 0600, tako da se na njega može povezati samo vaš korisnički ID. Ako je uključeno pamćenje lozinki, KDE su izvršava naredbe preko ovog demona: upiše naredbu i korenu lozinku u soket, a demon je izvrši kroz `su` kao što je prethodno opisano. Naredba i lozinka se potom ne odbacuju, već se zadržavaju određeno vreme, tj. do prekovremena zadatog u kontrolnom modulu. Ako stigne još jedan zahtev za istu naredbu tokom ovog vremenskog perioda, klijent ne mora da navodi lozinku. Da bi se sprečili provalnici koji upadnu na vaš nalog da pokradu lozinke iz demona (npr. priključivanjem ispravljača), demon se instalira sa sUID‑om `nogroup`. Ovo bi trebalo da spreči sve obične korisnike (uključujući i vas) u dobavljanju lozinki iz procesa `kdesud`. Demon takođe postavlja promenljivu okruženja `DISPLAY` na vrednost koju je imala kad je bio pokrenut. Jedino što provalnik može da uradi jeste da pokrene program na vašem X prikazu.

Jedna slaba tačka u ovoj šemi je u tome što programi koje izvršavate verovatno nisu pisani sa bezbednošću na umu (poput programa sa sUID‑om `root`). Mogli bi imati prekoračenja bafera ili druge probleme koje bi provalnik mogao da iskoristi.

Mogućnost pamćenja lozinki je trampa između bezbednosti i udobnosti. Ohrabrujemo vas da ovo razmotrite i sami donesete odluku da ćete je koristiti.

## Autor

KDE su

© 2000, Gert Jansen

KDE su je napisao Gert Jansen, donekle na osnovu KDE sua verzije 0.3 Pijetra Ilja. Nas dvojica smo se složili da ubuduće ja održavam ovaj program.

Autoru se možete obratiti putem e‑pošte, na &Geert.Jansen.mail;. Ako pronađete bilo kakve greške, prijavite ih da bih ih mogao ispraviti. Takođe mi se slobodno obratite ako imate neki predlog.

Preveo Dragan Pantelić falcon-10@gmx.de.

&underFDL; &underArtisticLicense;