Hak akses adalah bagian penting lainnya dari aspek multiuser dari sebuah sistem berkas. Dengan hak akses, Anda dapat mengganti siapa saja yang dapat membaca, menulis, dan mengeksekusi berkas-berkas.
Informasi hak akses disimpan sebagai empat digit oktal, dengan setiap digitnya menentukan sekumpulan hak akses. Terdapat hak akses pemilik, hak akses grup, dan hak akses global. Digit oktal keempat digunakan untuk menyimpan informasi khusus seperti set user ID, set group ID, dan sticky bit. Nilai oktal yang ditentukan pada mode hak akses adalah (mereka juga memiliki huruf yang diasosiasikan dengan mereka yang ditampilkan oleh program-program seperti ls dan bisa digunakan oleh chmod):
 Tabel 9-1. Nilai Oktal Hak Akses
   
 | Jenis Hak Akses | Nilai Octal | Nilai Huruf | 
  
 | “sticky” bit | 1 | t | 
 | set user ID | 4 | s | 
 | set group ID | 2 | s | 
 | read/baca | 4 | r | 
 | write/tulis | 2 | w | 
 | execute/eksekusi | 1 | x | 
 
 Anda menambahkan nilai oktal untuk setiap hak akses grup. Sebagai contoh, jika Anda ingin agar hak akses grup menjadi “read” dan “write”, Anda akan menggunakan “6” pada bagian grup dari informasi hak akses.
Hak akses default 
bash adalah:
 | % ls -l /bin/bash
-rwxr-xr-x   1 root     bin  477692 Mar 21 19:57 /bin/bash | 
Tanda minus pertama akan digantikan dengan “d” jika merupakan sebuah direktori. Ketiga kelompok hak akses ditampilkan berikutnya (pemilik, grup, dan global). Kita melihat bahwa pemilik memiliki hak akses baca, tulis, dan eksekusi (
rwx). Grup hanya memiliki akses baca dan eksekusi (
r-x). Dan sisanya memiliki hanya baca dan eksekusi (
r-x).
Bagaimana kita menentukan hak akses pada berkas lain untuk mengandaikan milik 
bash? Pertama, mari kita buat berkas contoh dengan nama example:
 | % touch /tmp/example
% ls -l /tmp/example
-rw-rw-r---  1 david    users    0 Apr 19 11:21 /tmp/example | 
Kita akan menggunakan 
chmod(1) (yang berarti “change mode (ganti mode)”) untuk menentukan hak akses untuk berkas example. Tambahkan angka oktal untuk hak akses yang Anda inginkan. Agar pemilik memiliki hak akses untuk baca, tulis, dan eksekusi, kita harus memberikan nilai 
7. Baca dan eksekusi berarti 
5. Jalankan bersamaan dan berikan pada 
chmod seperti ini:
 | % chmod 755 /tmp/example
% ls -l /tmp/example
-rwxr-xr-x   1 david    users    0 Apr 19 11:21 /tmp/example | 
Sekarang Anda mungkin berpikir, “Kenapa tidak membuat sebuah berkas dengan hak akses tersebut di awal?” Jawabannya sederhana. 
bash menyertakan sebuah built-in kecil yang disebut 
umask. Ini disertakan pada sebagian besar shell Unix juga, dan mengontrol hak akses berkas yang diberikan pada berkas ketika diciptakan pertama kali. Kita membahas built-in 
bash sampai beberapa tingkat pada 
Bagian 8.3.1. 
umask membutuhkan waktu agar terbiasa. Ia bekerja serupa dengan 
chmod, hanya berkebalikan. Anda menentukan nilai oktal yang tidak Anda inginkan untuk ditampilkan ketika membuat berkas baru. Nilai default umask adalah 
0022.
 | % umask
0022
% umask 0077
% touch tempfile
% ls -l tempfile
-rw--------  1 david    users    0 Apr 19 11:21 tempfile | 
Lihat halaman manual untuk informasi lebih lanjut tentang 
bash.
Untuk menentukan hak akses khusus dengan 
chmod, tambahkan angka secara bersamaan dan letakkan pada kolom pertama. Sebagai contoh, untuk membuat set user ID dan set group ID, kita menggunakan 6 sebagai kolom pertama:
 | % chmod 6755 /tmp/example
% ls -l /tmp/example
-rwsr-sr-x   1 david    users    0 Apr 19 11:21 /tmp/example | 
Jika nilai oktal membingungkan Anda, Anda bisa menggunakan huruf dengan 
chmod. Hak akses grup direpresentasikan sebagai :
Untuk melakukan hal-hal diatas, kita harus menggunakan beberapa perintah baris:
 | % chmod a+rx /tmp/example
% chmod u+w /tmp/example
% chmod ug+s /tmp/example | 
Beberapa orang memilih menggunakan huruf dibandingkan angka. Keduanya akan menghasilkan hak akses yang sama.
Format oktal terkadang lebih cepat, dan yang paling sering Anda jumpai ada skrip shell. Meski demikian seringkali format huruf lebih hebat. Sebagai contoh, tidak ada cara mudah untuk mengganti hak akses satu grup dan dilain waktu juga menjaga grup lain pada berkas dan direktori ketika menggunakan format oktal. Hal ini sangatlah mudah dengan menggunakan huruf.
 | % ls -l /tmp/
-rwxr-xr-x   1 alan    users    0 Apr 19 11:21 /tmp/example0
-rwxr-x---   1 alan    users    0 Apr 19 11:21 /tmp/example1
----r-xr-x   1 alan    users    0 Apr 19 11:21 /tmp/example2
% chmod g-rwx /tmp/example?
-rwx---r-x   1 alan    users    0 Apr 19 11:21 /tmp/example0
-rwx------   1 alan    users    0 Apr 19 11:21 /tmp/example1
-------r-x   1 alan    users    0 Apr 19 11:21 /tmp/example2 | 
Kita menyebutkan hak akses set user ID dan set group ID pada beberapa tempat diatas. Anda mungkin bertanya-tanya apa ini sebenarnya. Pada kondisi normal ketika Anda menjalankan sebuah program, program akan dijalankan dibawah account pengguna Anda. Sehingga memiliki semua hak akses yang Anda miliki. Hal yang sama berlaku juga untuk grup. Ketika Anda menjalankan sebuah program program akan dieksekusi dibawah grup aktual Anda. Dengan hak akses set user ID permissions, Anda bisa memaksa program untuk selalu berjalan dengan pemilik program (seperti “root”). Set group ID juga sama, tetapi untuk grup.
Hati-hati dengan ini, program dengan set user ID dan set group ID dapat membuka lubang keamanan besar pada sistem Anda. JIka Anda sering memberikan set user ID pada program yang dimiliki oleh 
root, Anda mengijinkan semua orang untuk menjalankan program tersebut dan menjalankannya sebagai 
root. Karena 
root tidak memiliki batasan pada sistem, Anda bisa melihat bagaimana hal ini akan menimbulkan masalah keamanan yang sangat besar. Secara singkat, bukanlah ide yang jelek untuk memberikan hak akses set user ID dan set group ID, tetapi gunakan akal sehat.*slackware.linux.or.id
Also Like : Komputer
 
0 Comments:
Post a Comment
leave comment for this article...