DEV Community

Dina Nur Fitria
Dina Nur Fitria

Posted on

Controlling Access to Files (Mengontrol Akses ke File)

Izin Sistem File Linux

File permissions mengontrol akses ke file. Izin file Linux sederhana namun fleksibel, mudah dipahami dan diterapkan, namun masih mampu menangani sebagian besar kasus izin normal dengan mudah.

File memiliki tiga kategori pengguna yang izinnya berlaku. File tersebut dimiliki oleh pengguna, biasanya orang yang membuat file tersebut. File juga dimiliki oleh satu grup, biasanya grup utama pengguna yang membuat file, namun hal ini dapat diubah. Izin yang berbeda dapat diatur untuk pengguna pemilik, grup pemilik, dan untuk semua pengguna lain di sistem yang bukan pengguna atau anggota grup pemilik.

Image description

Pengguna biasanya memiliki izin baca dan eksekusi pada direktori hanya baca sehingga mereka dapat membuat daftar direktori dan memiliki akses penuh hanya baca ke kontennya. Jika pengguna hanya memiliki akses baca pada direktori, nama file di dalamnya dapat dicantumkan, namun tidak ada informasi lain, termasuk izin atau stempel waktu, yang tersedia, juga tidak dapat diakses. Jika pengguna hanya memiliki akses eksekusi pada suatu direktori, mereka tidak dapat mencantumkan nama file dalam direktori tersebut. Jika mereka mengetahui nama file yang mereka punya izin untuk membacanya, mereka dapat mengakses konten file tersebut dari luar direktori dengan secara eksplisit menentukan nama file relatif.Sebuah file dapat dihapus oleh siapa saja yang memiliki kepemilikan atau izin menulis pada direktori tempat file tersebut berada, terlepas dari kepemilikan atau izin pada file itu sendiri.

Catatan

Izin file Linux bekerja secara berbeda dari sistem izin yang digunakan oleh sistem file NTFS untuk Microsoft Windows.

Di Linux, izin hanya berlaku untuk file atau direktori tempat izin tersebut ditetapkan. Artinya, izin pada suatu direktori tidak diwarisi secara otomatis oleh subdirektori dan file di dalamnya. Namun, izin pada direktori dapat memblokir akses ke konten direktori tergantung pada seberapa ketat izin tersebut.

Izin membaca pada direktori di Linux kira-kira setara dengan Daftar isi folder di Windows.

Izin menulis pada direktori di Linux setara dengan Memodifikasi di Windows; itu menyiratkan kemampuan untuk menghapus file dan subdirektori. Di Linux, jika write dan sticky bit keduanya diatur pada sebuah direktori, maka hanya pemilik file atau subdirektori yang dapat menghapusnya, serupa dengan perilaku izin Windows Write.

Pengguna root Linux memiliki izin Kontrol Penuh Windows yang setara pada semua file. Namun, akses root mungkin dibatasi oleh kebijakan SELinux sistem menggunakan konteks keamanan proses dan file. SELinux akan dibahas pada kursus selanjutnya.

Melihat Izin dan Kepemilikan File dan Direktori

Opsi -l perintah ls menunjukkan informasi rinci tentang izin dan kepemilikan:

Image description

Gunakan -d opsi untuk menampilkan informasi rinci tentang direktori itu sendiri, dan bukan isinya.

Image description

Karakter pertama dari daftar panjang adalah jenis file, diartikan seperti ini:
Image description

Sembilan karakter berikutnya adalah izin file. Ini ada dalam tiga set tiga karakter: izin yang berlaku untuk pengguna yang memiliki file, grup yang memiliki file, dan semua pengguna lainnya. Jika kumpulan menunjukkan rwx, kategori tersebut memiliki ketiga izin, baca, tulis, dan jalankan. Jika ada huruf yang diganti dengan -, maka kategori tersebut tidak mempunyai izin tersebut.

Setelah penghitungan tautan, nama depan menentukan pengguna pemilik file, dan nama kedua grup pemilik file.

Jadi pada contoh di atas, izin untuk pengguna student ditentukan oleh kumpulan tiga karakter pertama. Pengguna student telah membaca dan menulis test, tetapi belum mengeksekusi.

Grup student ditentukan oleh kumpulan tiga karakter kedua: ia juga telah membaca dan menulis test, tetapi tidak mengeksekusi.

Izin pengguna lain ditentukan oleh rangkaian tiga karakter ketiga: mereka hanya memiliki izin membaca di test.

Kumpulan izin yang paling spesifik berlaku. Jadi jika pengguna student memiliki izin yang berbeda dari grup student, dan pengguna student juga merupakan anggota grup tersebut, maka izin penggunalah yang berlaku.

Contoh Efek Izin

Contoh berikut akan membantu mengilustrasikan bagaimana izin file berinteraksi. Untuk contoh ini, kami memiliki empat pengguna dengan keanggotaan grup berikut:

Image description

Pengguna tersebut akan bekerja dengan file di dir direktori. Ini adalah daftar panjang file-file di direktori itu:

Image description

Opsi -a menunjukkan izin file tersembunyi, termasuk file khusus yang digunakan untuk mewakili direktori dan induknya. Dalam contoh ini, . mencerminkan izin dirdirinya sendiri, dan .. izin direktori induknya.

Apa izinnya rfile1? Pengguna yang memiliki file ( database1 ) telah membaca dan menulis tetapi tidak mengeksekusi. Grup yang memiliki file ( consultant1 ) telah membaca dan menulis tetapi tidak mengeksekusi. Semua pengguna lain telah membaca tetapi belum menulis atau mengeksekusi.

Mengubah Izin File dan Direktori

Perintah yang digunakan untuk mengubah izin dari baris perintah adalah chmod, yang berarti "ubah mode" (izin juga disebut mode dari sebuah file). Perintah chmod mengambil instruksi izin diikuti dengan daftar file atau direktori yang akan diubah. Instruksi izin dapat dikeluarkan baik secara simbolis (metode simbolik) atau secara numerik (metode numerik).

Mengubah Izin dengan Metode Simbolik

Image description

  • Who adalah u, g, o, a(untuk pengguna, grup, lainnya, semua)
  • What adalah +, -, =(untuk menambah, menghapus, mengatur persisnya)
  • Which adalah r, w, x(untuk membaca, menulis, mengeksekusi)

Itu simbolis metode mengubah izin file menggunakan huruf untuk mewakili kelompok izin yang berbeda: u untuk pengguna, g untuk grup, ountuk lainnya, dan a untuk semua.

Dengan metode simbolis, tidak perlu menetapkan grup izin baru secara lengkap. Sebagai gantinya, Anda dapat mengubah satu atau beberapa izin yang ada. Gunakan + atau - untuk menambah atau menghapus izin, atau gunakan = untuk mengganti seluruh kumpulan izin.

Izinnya sendiri diwakili oleh satu huruf: r untuk membaca, w untuk menulis, dan x untuk mengeksekusi. Saat menggunakan chmod untuk mengubah izin dengan metode simbolis, menggunakan huruf kapital Xsebagai tanda izin akan menambahkan izin eksekusi hanya jika file tersebut adalah direktori atau sudah memiliki set eksekusi untuk pengguna, grup, atau lainnya.

Mengubah Izin dengan Metode Numerik

Pada contoh di bawah, karakter # mewakili sebuah digit.

Image description

  • Setiap digit mewakili izin untuk tingkat akses: pengguna, grup, lainnya.

  • Digit dihitung dengan menjumlahkan angka untuk setiap izin yang ingin Anda tambahkan, 4 untuk membaca, 2 untuk menulis, dan 1 untuk mengeksekusi.

Menggunakan numerik metode, izin diwakili oleh 3 digit (atau 4 digit, saat mengatur izin lanjutan) oktal nomor. Satu digit oktal dapat mewakili nilai apa pun dari 0-7.

Dalam representasi izin 3 digit oktal (numerik), setiap digit mewakili satu tingkat akses, dari kiri ke kanan: pengguna, grup, dan lainnya. Untuk menentukan setiap digit:

  1. Mulailah dengan 0.
  2. Jika izin baca harus ada untuk tingkat akses ini, tambahkan 4.
  3. Jika izin menulis harus ada, tambahkan 2.
  4. Jika izin eksekusi harus ada, tambahkan 1.

Periksa izinnya -rwxr-x---. Untuk pengguna, rwx dihitung sebagai 4+2+1=7. Untuk grup, r-x dihitung sebagai 4+0+1=5, dan untuk pengguna lain, --- diwakili dengan 0. Jika ketiganya digabungkan, representasi numerik dari izin tersebut adalah 750.

Perhitungan ini juga dapat dilakukan dalam arah sebaliknya. Lihatlah izin 640. Untuk izin pengguna, 6 mewakili baca (4) dan tulis (2), yang ditampilkan sebagai rw-. Untuk bagian grup, 4 hanya mencakup baca (4) dan ditampilkan sebagai r--. Angka 0 untuk other tidak memberikan izin ( ---) dan kumpulan izin simbolis terakhir untuk file ini adalah -rw-r-----.

Mengelola Izin Default dan Akses File Tujuan

Special Permissions

Special Permissions merupakan tipe izin keempat selain pengguna dasar, grup, dan tipe lainnya. Sesuai dengan namanya, izin ini memberikan fitur terkait akses tambahan melebihi apa yang diizinkan oleh jenis izin dasar. Bagian ini merinci dampak izin khusus, yang dirangkum dalam tabel di bawah.

Pengaruh Special Permissions pada File dan Direktori

Image description

Top comments (0)