Buku petunjuk KDE su

# Buku petunjuk KDE su

Geert Jansen `<g.t.jansen@stud.tue.nl>`

Terjemahan: Wantoyo
revisi KDE
4.5 (21-09-2010)

Hak Cipta © 2000 Geert Jansen

Aspek Hukum

KDE su adalah sebuah front end grafik untuk perintah su UNIX®.

Bab 1. Pengenalan
Pengenalan

# Bab 1. Pengenalan

Selamat datang di KDE su! KDE su adalah front end grafis untuk perintah su UNIX® untuk K Desktop Environment. Ini memungkinkan kamu untuk menjalankan programkan sebagai pengguna yang berbeda dengan menyuplai kata sandi untuk pengguna tersebut. KDE su adalah program yang tidak diprivasi; ia menggunakan su sistem.

KDE su memiliki salahsatu fitur tambahan: ia bisa mengingat kata sandi untukmu. Jika kamu menggunakan fitur ini, kamu hanya perlu memasukkan kata sandi sekali untuk setiap perintah. Lihatlah bagian bernama “Penjagaan Kata Sandi” untuk informasi selebihnya atas hal ini dan analisis keamanan.

Program ini adalah bermaksud untuk dijalankan dari baris perintah atau dari file-file `.desktop`. Dengan demikian ia menanyakan kata sandi `root` menggunakan sebuah dialog GUI, aku menganggapnya lebih sebagai baris perintah <-> lem GUI bukan program GUI murni.

Sejak kdesu tidak lagi diinstal dalam `$(kde4-config --prefix)`/bin tetapi dalam `kde4-config --path libexec` dan oleh karenanya tidak di `Path`-mu, kamu harus menggunakan `$(kde4-config --path libexec)kdesu` untuk meluncurkan kdesu.

Bab 2. Menggunakan KDE su
Menggunakan KDE su

# Bab 2. Menggunakan KDE su

Penggunaan KDE su cukup mudah. Sintaksnya seperti ini:

kdesu [`-c` `perintah`] [`-d`] [`-f` `file`] [`-i` `nama ikon`] [`-n`] [`-p` `prioritas`] [`-r`] [`-s`] [`-t`] [`-u` `pengguna`] [`--noignorebutton`] [`--attach` `winid`]

kdesu [Opsi-opsi Generik KDE] [Opsi-opsi Generik Qt™]

Opsi-opsi baris perintah dijelaskan di bawah.

`-c `perintah``

  Penentuan perintah ini untuk berjalan sebagai root. Itu harus dilalui dalam satu argumen. Jadi jika, misalnya, kamu ingin menjalankan sebuah pengelola file baru kamu harus memasukkan prompt: `$(kde4-config --path libexec)kdesu `-c `Dolphin```

`-d`

  Tampilkan informasi debug.

`-f `file``

  Opsi ini memungkinkan KDE su penggunaan yang efisien dalam file `.desktop`. Yang memberi tahu KDE su untuk memeriksa file yang ditentukan oleh `file`. Jika file ini dapat ditulis oleh pengguna saat ini, KDE su akan mengeksekusi perintah sebagai pengguna saat ini. Jika ia tidak dapat ditulis, perintah dieksekusi sebagai `pengguna` (bakunya kepada root).

  `file` telah dievaluasikan seperti ini: jika `file` memulai dengan sebuah `/`, ia telah diambil sebagai sebuah nama file yang mutlak. Meskipun demikian, ia telah diambil sebagai nama dari sebuah file konfigurasi KDE global.

`-i` `nama ikon`

  Ikon ditentukan untuk penggunaan di dalam dialog kata sandi. Mungkin kamu hanya menentukan nama, tanpa ekstensi apa pun.

  Misalnya menjalankan Konqueror dalam mode filemanager dan menampilkan ikon Konqueror di dalam dialog kata sandi:

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

`-n`

  Jangan menjaga kata sandi. Ini menonfungsikan kotak-centang jaga kata sandi di dalam dialog kata sandi.

`-p` `prioritas`

  Set nilai prioritas. Prioritas adalah sebuah nomor bebas antara 0 dan 100, yang mana 100 maksudnya berprioritas lebih tinggi, dan 0 maksudnya berprioritas lebih rendah. Bakunya adalah 50.

`-r`

  Gunakan penjadwalan waktu nyata.

`-s`

  Hentikan daemon kdesu. Lihatlah bagian bernama “Penjagaan Kata Sandi”.

`-t`

  Fungsikan output terminal. Ini menonfungsikan penjagaan kata sandi. Ini adalah sebagian besar untuk tujuan pendebugan; jika kamu ingin menjalankan aplikasi mode console, gunakan su standar sebagai gantinya.

`-u` `pengguna`

  Penggunaan yang paling umum KDE su adalah menjalankan perintah sebagai superuser, kamu bisa menyuplai nama pengguna dan kata sandi apa pun yang sesuai.

Bab 3. Internal
Internal

# Bab 3. Internal

## Autentikasi X

Program yang kamu eksekusi akan berjalan di bawah id pengguna root dan akan biasanya tidak memiliki otoritas untuk mengakses displai X kamu. KDE su dapat melakukan ini dengan menambahkan sebuah cookie autentikasi untuk displaimu ke sebuah file `.Xauthority` temporer. Sesudah perintahnya keluar, file ini dihapus.

Jika kamu tidak menggunakan cookie X, kamu berada pada milikmu. KDE su akan mendeteksi ini dan tidak akan menambahkan cookie tetapi kamu nanti harus memastikan bahwa root diperbolehkan untuk mengakses ke displaimu.

Antarmuka untuk su
Antarmuka untuk su

## Antarmuka untuk su

KDE su menggunakan su sistem untuk mendapatkan hak istimewa. Di bagian ini, aku berencana memerincikan bagaimana KDE su melakukan ini.

Karena beberapa penerapan su (yaitu seseorang dari Red Hat®) tidak menginginkan pembacaan kata sandi dari `stdin`, KDE su menciptakan sebuah pair pty/tty dan mengeksekusi su dengan filedescriptors standarnya yang terkoneksi ke tty.

Untuk menjalankan perintah yang dipilih pengguna, bukan shell interaktif, KDE su menggunakan argumen `-c` dengan su. Argumen ini dipahami oleh setiap shell yang saya tahu sehingga harus bekerja secara portable. su meneruskan argumen `-c` ini ke shell pengguna target, dan shell mengeksekusi program. Contoh perintah: su`root -c `the_program``.

Alih-alih mengeksekusi perintah pengguna secara langsung dengan su, KDE su menjalankan program stub kecil yang disebut kdesu_stub. Stub ini (berjalan sebagai pengguna target), meminta beberapa informasi dari KDE su melalui pair pty/tty (stdin stub dan stdout) dan kemudian menjalankan program pengguna. Informasi yang diteruskan adalah: tampilan X, cookie otentikasi X (jika tersedia), `PATH` dan perintah untuk dijalankan. Alasan mengapa program stub ini digunakan adalah bahwa cookie X adalah informasi pribadi dan oleh karena itu tidak dapat diteruskan di baris perintah.

Pemeriksaan Kata Sandi
Pemeriksaan Kata Sandi

## Pemeriksaan Kata Sandi

KDE su akan memeriksa kata sandi yang kamu masukkan dan memberikan sebuah pesan error jika tidak benar. Pemeriksaan dilakukan dengan mengeksekusi sebuah program uji: `/bin/true`. Jika ini berhasil, kata sandi diasumsikan benar.

Penjagaan Kata Sandi
Penjagaan Kata Sandi

## Penjagaan Kata Sandi

Untuk kesenanganmu, KDE su mengimplementasikan fitur “jaga kata sandi”. Jika kamu mementingkan keamanan, kamu seharusnya membaca paragraf ini.

KDE su memungkinkan mengingat kata sandi membukakan sebuah lubang keamanan (kecil) di sistem kamu. Jelas, KDE su tidak mengizinkan siapa pun selain id pengguna kamu untuk menggunakan kata sandi, tetapi, jika dilakukan tanpa hati-hati, ini akan menurunkan tingkat keamanan `root` ke pengguna normal (kamu). Seorang peretas yang membobol akunmu, akan mendapatkan akses `root`. KDE su mencoba untuk mencegah ini. Skema keamanan yang digunakannya, setidaknya menurut saya, cukup aman dan sudah dijelaskan di sini.

KDE su menggunakan daemon, yang disebut kdesud. Daemon mendaftar ke sebuah soket UNIX® di `/tmp` untuk perintah. Mode soketnya adalah 0600 jadi hanya id pengguna kamu yang dapat terkoneksi kepadanya. Jika penjagaan kata sandi difungsikan, KDE su mengeksekusi perintah melalui daemon ini. Ia menulis perintah dan kata sandi `root` ke soket dan daemon mengeksekusi perintah menggunakan su, seperti yang dijelaskan sebelumnya. Setelah ini, perintah dan kata sandi tidak dibuang. Sebaliknya, mereka disimpan untuk waktu yang ditentukan. Ini adalah nilai batas waktu dari dalam modul kendali. Jika ada permintaan lain untuk perintah yang sama akan datang dalam periode waktu ini, klien tidak harus memberikan kata sandi. Untuk menjaga dari peretas yang membobol akun kamu yang mencuri kata sandi dari daemon (misalnya, dengan melampirkan debugger), daemon yang terinstal set-group-id nogroup. Ini seharusnya mencegah semua pengguna normal (termasuk kamu) dari pendapatan kata sandi dari proses kdesud. Juga, daemon menetapkan variabel lingkungan `DISPLAY` ke nilai yang dimilikinya ketika dimulai. Satu-satunya hal seorang peretas yang bisa lakukan adalah menjalankan aplikasi di displaimu.

Satu titik lemah dalam skema ini adalah bahwa program yang kamu jalankan mungkin tidak ditulis dengan keamanan yang dimaksud (seperti program `root` setuid). Ini berarti mereka mungkin ada serangan atau masalah lain dan seorang peretas dapat mengeksploitasinya.

Penggunaan fitur penjagaan kata sandi merupakan pertukaran antara keamanan dan kenyamanan. Aku mendorongmu untuk memikirkannya dan memutuskan sendiri apakah kamu mau menggunakannya atau tidak.

Bab 4. Penulis
Penulis

# Bab 4. Penulis

KDE su

Hakcipta 2000 Geert Jansen

KDE su ditulis oleh Geert Jansen. Agak didasarkan pada KDE su Pietro Iglio's, versi 0.3. Pietro dan saya setuju bahwa saya akan memelihara program ini di masa depan.

Penulis bisa dihubungi melalui email di `(g.t.jansen AT stud.tue.nl)`. Silakan laporkan bug apa pun yang kamu temukan kepadaku sehingga aku bisa memperbaikinya. Jika kamu punya saran, jangan ragu untuk menghubungi saya.

Wantoyo`(wantoyek AT gmail.com)`

Dokumentasi ini dilisensikan di bawah ketentuan lisensi GNU Free Documentation License.

Program ini dilisensikan di bawah ketentuan lisensi Artistic License.