# Priročnik za &kdesu;

&Geert.Jansen; &Geert.Jansen.mail;
Andrej
Vernekar

    andrej.vernekar@moj.net

Prevod
2000
&Geert.Jansen;
&FDLNotice;
21.09.2010
KDE 4.5

&kdesu; je grafični vmesnik za &UNIX;-ov ukaz `su`.

KDE
su
password
root

## Uvod

Dobrodošli v &kdesu;! &kdesu; je grafični vmesnik za &UNIX;-ov ukaz `su` za namizno okolje KDE. Omogoča vam, da poganjate program kot drug uporabnik, s tem, da zagotovite geslo tega uporabnika. &kdesu; je nepriviligiran program; uporablja sistemski `su`.

&kdesu; ima dodatno možnost: za vas si lahko zapomni gesla. Če uporabljate to možnost, morate vnesti vsako geslo le enkrat za vsak ukaz. Glejte za več informacij o tem in za varnostno analizo.

Ta program je mišljen za zagon iz ukazne vrstice ali `.desktop` datoteke. Čeprav vpraša za korensko (root) geslo z uporabo &GUI; pogovornega okna, ga smatram bolj za lepilo med ukazno vrstico <-> &GUI;, kot pa za čist &GUI; program.

Ker `kdesu` ni več nameščen v `$(kf5-config --prefix)`/bin ampak v `kf5-config --pathlibexec` in zato ni na vaši `Poti`, imateza uporabo `$(kf5-config --path libexec)`kdesu`` za zagon `kdesu`.

## Uporaba &kdesu;

Uporaba &kdesu; je preprosta. Skladnja izgleda takole:

    kdesu -c  command -d -f  file -i  icon name -n -p  priority -r -s -t -u  user --noignorebutton --attach  winid

    kdesu &kde; Generic Options &Qt; Generic Options

Možnosti ukazne vrstice so razložene spodaj.

`-c command`

  To določa ukaz za zagon kot root. Prenesti ga je treba v enem argumentu. Torej, če želite na primer zagnati novega upravljalnika datotek, bi ob pozivu vnesli: `$(kf5-config --path libexec)`kdesu `-c &dolphin;```

`-d`

  Prikaži informacije za razhroščevanje.

`-f file`

  Ta možnost omogoča učinkovito uporabo &kdesu; v datoteki `.desktop`. Pove &kdesu; za pregled datoteke, ki jo določa `datoteka`. Če v to datoteko lahko piše trenutni uporabnik, &kdesu; bo izvedel ukaz kot trenutni uporabnik. Če ni zapisljiv, ukaz se izvede kot uporabnik `user` (privzeto je to root).

  `datoteka` se ovrednoti takole: če je `datoteka` se začne z `/`, jemlje se kot absolutno ime datoteke. V nasprotnem primeru se vzame kot ime globalne &kde; konfiguracije.

`-i` ime ikone

  Določite ikono za uporabo v pogovornem oknu za geslo. Lahko navedete samo ime,brez podaljška.

  Na primer za zagon &konqueror; v načinu upravitelja datotek in pokaže ikono &konqueror; v pogovornem oknu za geslo:

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

`-n`

  Ne hranite gesla. To onemogoči hrani geslo potrditveno polje v pogovornem oknu za geslo.

`-p` priority

  Nastavite prednostno vrednost. Prioriteta je poljubno število med 0 in 100,kjer 100 pomeni najvišjo prioriteto, 0 pa najnižjo. Privzeto je 50.

`-r`

  Uporabi sprotno razporejanje.

`-s`

  Ustavi kdesu daemona. Poglejte v .

`-t`

  Omogoči terminalski izhod. To onemogoči shranjevanje gesel. Uporabno je predvsem za razhroščevanje; če želite poganjati program v konzolnem načinu, uporabite običajni `su`.

`-u` user

  Čeprav je najpogostejša uporaba &kdesu; za zagon ukaza kot skrbnik, vnesete lahko poljubno uporabniško ime in ustrezno geslo.

## Podrobnosti

### X avtentifikacija

Program, ki ga izvedete bo tekel pod korenskim (root) id in v splošnem ne bo imel avtoritete za dostop do vašega X zaslona. &kdesu; se temu izogne z dodajanjem avtentifikacijskega piškotka za vaš zaslon v začasno datoteko `.Xauthority`. Ko je ukaz končan, je ta datoteka odstranjena.

Če ne uporabljate X piškotkov, ste odvisni od samega sebe. &kdesu; bo to zaznal in ne bo dodal piškotka, vendar pa boste morali zagotoviti, da ima root dovoljen dostop do vašega zaslona.

### Vmesnik za `su`

&kdesu; uporablja sistemski `su` za dosego privilegijev. V tem odstavku bom razložil podrobnosti, kako &kdesu; to naredi.

Ker nekatere izvedbe `su` (&ie;. tista iz&RedHat;) ne želi brati gesla iz `stdin`,&kdesu; ustvari par pty/tty in izvede `su` z njimstandardni datotečni deskriptorji, povezani s tty.

Da izvede ukaz, ki ga je izbral uporabnik in ne interaktivno lupino, uporablja &kdesu; skupaj z `su` argument `-c`. Ta argument razume vsaka lupina, ki jo poznam, tako da bi to moralo delovati prenosljivo. `su` preda `-c` lupini in ta prevzame program. Zgled: `su `root -c nek_program``.

Namesto izvajanja uporabnikovega ukaza direktno z `su`, izvede &kdesu; majhen programček imenovan kdesu_stub. Ta programček (teče kot uporabnik), zahteva nekaj podatkov od &kdesu; preko pty/tty kanala (njegov stdin in stdout) in potem izvede uporabniški program. Predane so naslednje informacije: X zaslon, X avtentifikacijski piškotek (če je dostopen), `PATH`in ukaz, ki naj bo pognan. Razlog, zakaj je uporabljen kratek programček je, da je X piškotek zasebna informacija in tako ne more biti predan na ukazni vrstici.

### Preverjanje gesel

&kdesu; bo preveril geslo ki ga vnesete in vrnil sporočilo o napaki, če je napačno. Preverjanje je izvedeno s testnim programom: `/bin/true`. Če to uspe, je geslo smatrano kot pravilno.

### Ohranjanje gesel

Za vaše udobje ima &kdesu; izvedeno možnost Obdrži geslo. Če se zanimate za varnost, potem morate prebrati ta odstavek.

Dovoljenje &kdesu;, da si zapomni gesla odpre (majhno) varnostno luknjo v vašem sistemu. Jasno je, da &kdesu; ne dovoli nikomur razen vašemu uporabniškemu id da uporablja gesla, vendar pa, če je to narejeno brez previdnosti, lahko zniža root-ov varnostni nivo na uporabniškega. Heker, ki bi vdrl v vaš račun, bi dobil korenski (root) dostop. kdesu; poskuša to preprečiti. Varnostna shema, ki jo uporablja je, vsaj po mojem prepričanju, razumno varna in je razložena tukaj.

&kdesu; uporablja deamona, imenovanega kdesud. Ta posluša &UNIX;-ov socket v `/tmp` za ukazi. Način socketa je 0600, tako da se nanj lahko priključi le vaš uporabniški id. Če je shranjevanje gesel omogočeno, kdesu; izvede ukaze skozi ta deamon. Ukaze in korensko (root) geslo zapiše v socket in deamon izvede ukaz z uporabo `su`, kot je opisano prej. Po tem ukaz in geslo nista zavržena. Namesto tega sta shranjena za določen čas. To je časovna vrednost iz krmilnega modula. Če se v tem času pojavi nova zahteva klientu ni treba dostaviti gesla. Da prepreči hekerjem, ki so vdrli v vaš račun, krajo gesel (na primer z prilepljenjem razhroščevalnika), je deamon nameščen kot set-group-id nogrup. To bi moralo preprečiti vsem normalnim uporabnikom (vključno z vami) da bi dobili gesla od kdesud procesa. Prav tako deamon postavi spremenljivko `DISPLAY` na vrednost, ki jo je imela ob zagonu. Edina stvar, ki jo lahko heker naredi, je da na vašem zaslonu izvede program.

Šibko mesto v tej shemi je, da programi, ki jih izvajate verjetno niso pisani z varnostjo v mislih (kot setuid root programi). To pomeni, da imajo morda prelitja medpomnilnika (buffer overruns) ali druge težave in jih lahko heker izkoristi.

Uporaba možnosti shranjevanja gesel je trgovina med varnostjo in udobjem. Spodbujam vas, da razmislite o tem in se odločite zase, ali to želite uporabljati ali ne.

## Avtor

&kdesu;

Copyright 2000 &Geert.Jansen;

&kdesu; je napisal &Geert.Jansen;. Nekako temelji na Pietru Igliu &kdesu;, različica 0.3. S Pietrom sva se dogovorila, da bom vzdrževal ta program v prihodnosti.

Avtor je dosegljiv po e-pošti na &Geert.Jansen.mail;. prosim sporočite mi vse napake, ki jih najdete, da jih lahko popravim. Če imate predlog, mi to brez zadržkov sporočite.

Prevod: Andrej Vernekarandrej.vernekar@moj.net

&underFDL; &underArtisticLicense;