# &kdesu; El Kitabı

## Giriş

&kdesu;'ya hoş geldiniz! &kdesu;, &UNIX; `su` komutunun K Masaüstü Ortamı için hazırlanmış bir grafiksel ön yüzüdür. Bir programı, başka bir kullanıcının parolasını sağlayarak o kullanıcıymış gibi çalıştırmaya izin verir. &kdesu; ayrıcalıksız bir programdır, sistemin `su` komutunu kullanır.

&kdesu; programının bir ek özelliği vardır: Sizin için parolaları anımsayabilir. Bu özelliği kullanıyorsanız her bir komut için parolanızı yalnızca bir kez girmeniz gerekir. Bunun ve bir güvenlik çözümlemesi üzerine daha fazla bilgi için sec-password-keeping bölümüne bakın.

Bu program, komut satırından veya `.desktop` dosyalarından başlatılmak üzere tasarlanmıştır. Bir &GUI; iletişim kutusu kullanarak `root` parolasını sorsa da, bir &GUI; programından daha çok bir <-> &GUI; yapıştırıcısıdır.

`kdesu` komutu, artık `$(kf5-config --prefix)`/bin değil de `kf5-config --path libexec` konumunda kurulu olduğundan ve dolayısıyla `PATH`'inizde olmadığından, `kdesu` komutunu başlatmak için `$(kf5-config --path libexec)`kdesu`` kullanmalısınız.

## &kdesu; Kullanımı

&kdesu; kullanımı çok kolaydır. Sözdizim şöyledir:

    kdesu -c  komut -d -f  dosya -i  simge adı -n -p  öncelik -r -s -t -u  kullanıcı --noignorebutton --attach  winid

    kdesu &kde; Genel Seçenekleri &Qt; Genel Seçenekleri

Komut satırı seçenekleri aşağıda açıklanmıştır.

`-c `komut``

- Bu, komutun yönetici olarak çalışacağını belirtir. Bir argüman ile geçirilmelidir. Örneğin, yeni bir dosya yöneticisi başlatmak istiyorsanız komut isteminde şunu girerdiniz: `$(kf5-config --path libexec)`kdesu `-c `&dolphin;````

`-d`

- Hata ayıklama bilgisini gösterin.

`-f `dosya``

- Bu seçenek, &kdesu;'nun `.desktop` dosyalarında etkili kullanımını sağlar. &kdesu;'ya `dosya` parametresiyle verilen dosyayı incelemesini söyler. Dosyaya geçerli kullanıcı tarafından yazılabiliyorsa &kdesu; komutu geçerli kullanıcı olarak yürütür. Aksi durumda, komut `kullanıcı` olarak yürütülür (öntanımlı olarak yönetici).

  `dosya` parametresi şöyle değerlendirilir: Eğer `dosya` bir `/` ile başlıyorsa mutlak bir dosya adı olarak alınır. Aksi takdirde global bir &kde; yapılandırma dosyası olarak kabul edilir.

`-i` `simge adı`

- Parola iletişim kutusunda kullanılmak üzere bir simge belirtin. Herhangi bir uzantı olmadan yalnızca adı belirtebilirsiniz.

  Örneğin &konqueror; uygulamasını dosya yöneticisi kipinde çalıştırmak ve &konqueror; simgesini parola iletişim kutusunda göstermek için:

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

`-n`

- Parolayı tutmayın. Bu seçenek, parola iletişim kutusundaki parolayı tut onay kutusunu devre dışı bırakır.

`-p` `öncelik`

- Öncelik değerini ayarlayın. Öncelik, 1-100 arasında herhangi bir numaradır; 100 en yüksek önceliği ve 0 ise en düşük önceliği belirtir. Öntanımlı değer 50'dir.

`-r`

- Gerçek zamanlı zamanlama kullanın.

`-s`

- kdesu ardalan sürecini durdurun. Bkz. sec-password-keeping.

`-t`

- Uçbirim çıktısını etkinleştirin. Bu, parola tutmayı devre dışı bırakır. Bu genelde hata ayıklama amaçlı kullanılır; bir konsol kipli uygulama çalıştırmak istiyorsanız bunun yerine standart olan `su` komutunu kullanın.

`-u` `kullanıcı`

- &kdesu;'nun en yaygın kullanımı bir komutu yönetici kullanıcı olarak çalıştırmak olsa da, herhangi bir kullanıcı adını ve parolayı da verebilirsiniz.

## İç Yapılar

### X yetkilendirmesi

Yürüttüğünüz program yönetici kimliği altında çalışır ve genelde X ekranınıza ulaşmak için yetkisi yoktur. &kdesu;, geçici bir `.Xauthority` dosyasına bir yetkilendirme çerezi ekleyerek bunun etrafından dolaşır. Komut çıktığında dosya kaldırılır.

X çerezleri kullanmıyorsanız kendi başınızasınız. &kdesu; bunu algılar ve bir tanımlama bilgisi eklemez; ancak yöneticinin ekranınıza erişmesine izin verildiğinden emin olmanız gerekir.

### `su` Komutuyla Etkileşim

&kdesu;, yetki almak için sistemin `su` komutunu kullanır. Bu bölümde, &kdesu;'nun bunu nice yaptığı anlatılır.

Bazı `su` uygulamaları (örn. &RedHat;), parolaları `stdin`'den okumak istemez; &kdesu; bir pty/tty çifti oluşturur ve `su` komutunu kendi dosya tanımlayıcıları tty'ye iliştirilmiş bir biçimde yürütür.

Etkileşimli bir kabuk yerine kullanıcının seçtiği komutu yürütmek için &kdesu;, `su` komutunu `-c` argümanıyla kullanır. Bu argüman bilinen her kabukla çalışır, bu yüzden sıkıntı çıkarmaması gerekir. `su`, bu `-c` argümanını hedef kullanıcının kabuğuna geçiriri ve kabuk programı yürütür. Örnek komut: `su `root -c `program```.

Kullanıcı komutunu doğrudan `su` ile yürütmek yerine, &kdesu; kdesu_stub denen ufak bir yalancı program yürütür. Bu program (hedef kullanıcı olarak çalışır), &kdesu;'dan pty/tty kanalı üzerine bilgi ister (programcığın stdin'i ve stdout'u) ve sonrasında kullanıcının programını yürütür. Diğer yana geçirilen bilgi X ekranı, bir X yetkilendirme çerezi (varsa), `PATH` ve çalıştırılacak komuttur. Yalancı bir programın kullanılma nedeni, X çerezinin gizli bilgi olması ve komut satırında geçirilememesidir.

### Parola Denetimi

&kdesu; girdiğiniz parolaları denetler ve yanlışsa bir hata iletisi verir. Denetim, bir sınama programı yürütülerek yapılır: `/bin/true`. Bu başarılı olursa parola doğru varsayılır.

### Parolayı Tutmak

Konforunuz için &kdesu; bir parolayı tut özelliği içerir. Güvenlik konusunda ilgiliyseniz bu paragrafı okumalısınız.

&kdesu;'nun parolaları anımsamasına izin vermek sisteminizde (ufak) bir güvenlik açığı doğurur. Tabii ki &kdesu; sizin kullanıcı kimliğiniz dışındaki kimsenin parolanızı kullanmasına izin vermez; ancak dikkatli kullanılmazsa bu `yönetici`'nin güvenlik düzeyini normal bir kullanıcının düzeyine (sen) düşürür. Hesabınızı kıran bir deşici, `yönetici` erişimi alabilir. &kdesu; bunu engellemeye çalışır. Kullandığı güvenlik şeması görece güvenlidir ve burada açıklanmıştır.

&kdesu;, kdesud denen bir ardalan süreci kullanır. Süreç, komutlar için `/tmp` içindeki bir &UNIX; yuvasını dinler. Yuvanın kipi 0600'dır; böylece yalnızca sizin kullanıcı kimliğiniz ona bağlanabilir. Parolayı tutma etkinleştirilmişse &kdesu; komutları bu ardalan süreci üzerinden yürütür. Komutu ve `yönetici`'nin parolasını yuvaya yazar ve ardalan komutu daha önce açıklandığı üzere `su` ile yürütür. Sonrasında komut ve parola atılmaz. Bunun yerine belirli bir süre tutulurlar. Bu, denetim modülündeki zaman aşımı değeridir. Bu süre içinde aynı komut için bir istek gelirse istemcinin parolayı sağlamasına gerek kalmaz. Deşicilerin ardalan sürecinden parolaları çıkarmasına engel olmak için (örneğin bir hata ayıklayıcı iliştirerek) ardalan süreci set-group-id nogroup olarak kurulmuştur. Bu, tüm normal kullanıcıların (sen de dahil olmak üzere) parolaları kdesud sürecinden almasına engel olmalıdır. Ayrıca, ardalan süreci `DISPLAY` çevre değişkenini başlatıldığındaki değere geri ayarlar. Bir deşicinin yapabileceği tek şey ekranınızda bir program yürütmek olabilir.

Bu şemadaki bir olası zayıf nokta ise yürüttüğünüz programların güvenlik temel alınarak yazılmamış olmasıdır (setuid `yönetici` programları gibi). Bu, önbellek taşmaları veya başka sorunların olabileceği ve bir deşicinin bunları kullanabileceği anlamına gelir.

Parola tutma özelliği güvenlik ve konfor arasında bir feragattir. Buna göre kullanmak isteyip istemediğinizi bir düşünün.

## Yazar

&kdesu;

Telif hakkı 2000 &Geert.Jansen;

&kdesu;, &Geert.Jansen; tarafından yazılmıştır. Pietro Iglio'nun &kdesu; 0.3 sürümü temellidir. Pietro ve ben, bu programın bakımını bundan sonra benim yapacağım konusunda anlaştık.

Yazara &Geert.Jansen.mail; üzerinden ulaşabilirsiniz. Bulduğunuz tüm hataları bana bildirin ki onları düzeltebileyim. Sorunuz varsa sormaktan çekinmeyin.

Emir SARIemir_sari@icloud.com

&underFDL; &underArtisticLicense;