Pengantar mengenai Izin/Permisi di Linux

Pengantar

Linux adalah suatu OS multi-user yang berdasarkan pada konsep Unix dari kepemilikan file dan izinnya untuk menyediakan keamanan di tingkat file system. Apabila Anda berencana untuk memperbaiki keahlian Linux Anda, adalah penting Anda memiliki pemahaman bagaimana kepemilikan dan izin bekerja. Banyak seluk-beluk yang berkenaan dengan kepemilikan file dan izinnya, tetapi kita akan mencoba usaha terbaik kita untuk menyaring konsep tersebut kepada rinciannya sehingga penting untuk suatu pemahaman fondasional dari bagaimana semua itu bekerja.

Di dalam tutorial ini, kita akan mencakup bagaimana melihat dan memahami kepemilikan pada Linux dan izinnya..

Prasyarat

Pastikanlah Anda memahami konsep yang dicakup pada tutorial sebelumnya dalam rangkaian ini:

- Pengantar Terminal Linux<br />
- Navigasi Dasar dan Pengelolaan File di Linux

Mengenai User/Pengguna

Seperti disebutkan di dalam pengantar, Linux adalah suatu sistim yang multi-user. Kita harus memahami dasar-dasar pengguna Linux dan grup sebelum kita dapat berbicara mengenai kepemilikan dan izin, karena keduanya adalah entitas yang dijadikan penerapan kepemilikan dan izin. Mari kita mulai dengan dasar-dasar mengenai apa itu sebenarnya user/pengguna.

Pada Linux, ada dua tipe user: system user dan regular user. Secara tradisional, system user biasa menjalankan proses-proses yang non-interaktif atau proses background/latar-belakang pada suatu sistem, sementara regular user biasa masuk dan menjalankan proses-proses secara interaktif. Ketika pertama kali Anda masuk kepada suatu sistim Linux, Anda mungkin memperhatikan bahwa ia dimulai dengan banyak system user yang menjalankan layanan-layanan yang mana OS/sistim-operasi bergantung pada itu dan ini adalah normal.

Cara termudah untuk melihat semua pengguna/user pada suatu sistem adalah dengan cara melihat pada isi dari file /etc/passwd. Setiap baris di dalam file ini memuat informasi mengenai seorang pengguna user tunggal, dimulai dengan nama usernya. Print-lah output dari file passwd dengan perintah berikut:

cat /etc/passwd

Superuser

Sebagai tambahan bagi dua tipe, ada superuser, atau pengguna root, yang memiliki kemampuan merubah kepemilikan file dan batasan-batasan izinnya. Dalam prakteknya, Ini bermakna bahwa superuser memiliki hak untuk mengakses apa pun pada servernya sendiri. Pengguna ini biasa membuat perubahan di seluruh sistem, dan harus tetap aman.

Juga dimungkinkan untuk mengkonfigurasi akun pengguna lain dengan kemampuan untuk mengasumsikan “hak superuser”. Kenyataannya, menciptakan suatu pengguna normal yang memiliki hak sudo untuk tugas administrasi sistem dipertimbangkan sebagai praktek yang terbaik.

Mengenai Grup

Grup adalah kumpulan dari nol atau lebih banyak pengguna. Seorang user menjadi anggota dari grup default, dan dapat juga menjadi seorang anggota dari grup lain apa pun pada suatu server.

Cara mudah untuk melihat semua grup dan anggota-anggotanya adalah dengan melihat file /etc/group pada suatu server. Kami tidak akan mencakup pengelolaan grup di dalam artikel ini, tetapi Anda dapat menjalankan perintah ini apabila Anda ingin tahu tentang grup Anda:

cat /etc/group

Sekarang Anda mengetahui apa itu pengguna/user dan apa itu grup, mari bicara mengenai kepemilikan file dan izinnya!

Melihat Kepemilikan dan Izin

Dalam Linux, setiap dari masing-masing file dimiliki oleh satu pengguna tunggal dan satu grup tunggal, dan memiliki izin aksesnya sendiri. Mari lihat mengenai bagaimana melihat kepemilikan dan izin dari suatu file.

Cara yang paling umum untuk melihat izin dari suatu file adalah menggunakan ls dengan opsi long listing, misal, ls -l filesaya. Apabila Anda ingin melihat izin dari semua file di dalam direktori Anda saat ini, jalankanlah perintah tanpa suatu argumen, seperti ini:

ls -l

Petunjuk: Apabila Anda ada di dalam suatu direktori home yang kosong, dan Anda belum menciptakan file apa pun untuk dilihat, Anda dapat mencoba melihat direktori /etc dengan menjalankan perintah: ls -l /etc

Tipe File

Dalam Linux, ada dua tipe dasar file: normal dan spesial. Tipe file ditandakan dengan karakter pertama dari mode dari suatu file. Di dalam panduan ini, kami merujuk ini sebagai bidang tipe file.

File normal dapat diidentifikasi sebagai file dengan tanda hipen (-) di bagian tipe filenya. File normal adalah file biasa yang dapat memuat data. File-file itu disebut file normal atau regular agar dapat dibedakan dari file spesial.

File spesial dapat diidentifikasi oleh file yang memiliki suatu karakter non-hipen, seperti huruf, pada bidang tipe filenya, dan ditangani oleh OS secara berbeda ketimbang file normal. Karakter yang muncul di dalam bidang tipe file mengindikasikan jenis dari file spesial adalah file istimewa. Misal, suatu direktori, yang merupakan jenis yang lazim dari file spesial, diidentifikasi oleh karakter d yang muncul di dalam bidang tipe filenya (seperti di dalam tangkapan layar yang lalu). Ada beberapa jenis lain dari file spesial tetapi tidak esensial untuk dipelajari di sini.

Kelas Permisi/Izin

Dari diagram tersebut, kita mengetahui bahwa kolom Mode mengindikasikan tipe file, diikuti oleh tiga serangkai, atau kelas, dari izin/permisi: user (pemilik), grup, dan other/lain. Urutan dari kelas tersebut adalah konsisten di semua distribusi Linux.

Mari kita lihat pada kelas mana izin setiap pengguna:

User: Pemilik dari suatu file adalah milik dari kelas ini<br />
Grup: Anggota dari grup file adalah milik kelas ini<br />
Other: Pengguna manapun yang bukan merupakan bagian dari kelas user atau grup adalah milik kelas ini.<br /><br />

Membaca Izin Simbolik

Hal berikutnya untuk diperhatikan adalah tiga serangkai, karena menunjukkan izin, dalam bentuk simbolik, yang mana setiap kelas memilikinya untuk suatu file yang diberikan.

Dalam setiap rangkai, izin read, write, dan execute disajikan dalam cara berikut:

- Read: Ditandakan dengan huruf r pada posisi pertama<br />
- Write: Ditandakan dengan huruf w di dalam posisi kedua<br />
- Execute: Ditandakan oleh x dalam posisi ketiga. Di dalam beberapa kasus khusus, mungkin ada huruf yang berbeda di sini

Suatu tanda hipen (-) yang berada di tempat salah satu dari tiga karakter ini menandakan bahwa masing-masing izin tidak tersedia untuk masing-masing kelas. Misal, apabila grup rangkaian untuk suatu file adalah r–, file tersebut adalah “read-only” atau hanya dapat dibaca bagi grup yang ditautkan dengan file tersebut.

Memahami Read, Write, dan Execute

Sekarang Anda mengetahui bagaimana membaca izin apa yang ada pada suatu file, Anda mungkin ingin mengetahui apa saja sebenarnya yang diizinkan oleh masing-masing permisi tersebut. Kami akan menjelaskan setiap izin secara tersendiri, tetapi ingatlah bahwa izin-izin tersebut sering digunakan dalam kombinasi satu sama lain untuk membolehkan akses yang berarti kepada file dan direktori.

Berikut adalah rincian cepat dari akses yang diberikan oleh tiga tipe izin dasar kepada suatu user.

Read

Untuk suatu file normal, izin read membolehkan seorang user untuk melihat isi dari file tersebut. Untuk suatu direktori, izin read membolehkan suatu user untuk melihat nama dari file yang berada di dalam direktori tersebut.

Write

Untuk suatu file normal, izin write membolehkan suatu user untuk merubah dan menghapus file.

Untuk suatu direktori, izin write membolehkan seorang user untuk menghapus direktori tersebut, merubah isinya (membuat, menghapus, dan menamai-ulang (rename) file di dalamnya), dan merubah isi dari file yang user tersebut punyai izinnya untuk ia tulisi.

Execute

Untuk suatu file normal, izin execute membolehkan seorang user untuk mengeksekusi suatu file (user tersebut juga harus memiliki izin read). Dengan demikian, izin execute harus diberikan untuk program-program yang dapat dieksekusi dan skrip-skrip shell sebelum suatu user dapat menjalankan skrip-skrip itu.

Untuk suatu direktori, izin execute membolehkan suatu user untuk mengakses, atau melintasi (misal dengan perintah cd) dan mengakses metadata mengenai file-file di dalam direktori tersebut (termasuk informasi yang didaftar di dalam suatu perintah ls -l).

Contoh dari Mode (dan Permisi)

Sekarang, setelah mengetahui bagaimana cara membaca mode dari suatu file, dan memahami arti dari setiap izin, kami akan menyajikan sedikit contoh dari beberapa mode yang lazim, dengan penjelasan singkat, untuk menghadirkan konsep tersebut secara keseluruhan.

    -rw-------: Suatu file yang hanya dapat diakses oleh pemiliknya
    -rwxr-xr-x: Suatu file yang dapat dieksekusi oleh setiap user pada sistem tersebut. Suatu file yang “world-executable”
    -rw-rw-rw-: Suatu file yang terbuka untuk dirubah oleh setiap user pada sistem tersebut. Suatu file yang “world-writable”
    drwxr-xr-x: Suatu direktori yang setiap user pada sistem tersebut dapat baca dan akses
    drwxrwx---: Suatu direktori yang dapat dirubah (termasuk isinya) oleh pemilik dan grupnya
    drwxr-x---: Suatu direktori yang dapat diakses oleh grupnya

Seperti yang Anda perhatikan, pemilik dari suatu file biasanya menikmati semua izin, ketika dibandingkan dengan dua kelas yang lain. Secara khas, Anda dapat melihat bahwa grup dan kelas lain hanya memiliki suatu bagian dari izin-izin yang dimiliki oleh pemiliknya (sama atau kurang). Ini masuk akal karena file hendaknya hanya dapat diakses oleh para pengguna yang perlu mengakses file-file itu untuk suatu keperluan.

Hal lain untuk dicatat adalah bahwa, bahkan walaupun banyak kombinasi izin yang dimungkinkan, hanya izin tertentu yang masuk akal dalam banyak situasi. Misal, akses write atau execute hampir selalu ditemani oleh akses read, karena sulit untuk merubah, dan tidak mungkin untuk mengeksekusi, sesuatu yang tidak dapat Anda baca.

Merubah Kepemilikan dan Izin-izinnya

Untuk menjaga tutorial ini tetap sederhana, kami tidak akan mencakup bagaimana merubah kepemilikan file dan izin di sini. Untuk mempelajari bagaimana menggunakan chown, chgrp, dan chmod untuk menyelesaikan tugas-tugas ini, rujuklah pada panduan ini: _Dasar-dasar Izin di Linux.

Kesimpulan

Sekarang Anda hendaknya memiliki suatu pemahaman mengenai bagaimana kepemilikan dan izin bekerja di Linux. Apabila Anda ingin mempelajari lebih banyak mengenai dasar-dasar Linux, sangat direkomendasikan Anda membaca tutorial berikutnya di dalam rangkaian ini.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Scroll to Top