Dasar Pemberian Hak Akses Direktori dan File di Linux Dengan Metode Numerik

Selamat pagi dan salam sejahtera kawan. Bertemu lagi dengan seri #tipsdantrik mengenai pemberian hak akses direktori dan file di Debian-base dan under GNU/Linux yang dilengkapi dengan implementasi studi kasus dari Materi Keamanan Jaringan Access Control.

Seri pemberian hak akses direktori dan file di Debian-base dan under GNU/Linux ini saya bagi menjadi beberapa sub-bagian, antara lain:



Sebenarnya, dalam pembuatan hak akses tidak disebutkan metode, hanya model pemberian hak akses yang bisa menggunakan angka, misal 777, 775, 664 dsb, dan huruf, misal u+w, g+r, o+rx dsb. Akan tetapi untuk lebih mudah di ingat, kita anggap saja Metode Numerik (karena menggunakan sistem angka) dan Metode Abjad (karena menggunakan sistem huruf). Mari kita mulai dengan Dasar Hak Akses Dengan Metode Numerik untuk mempelajari dasar-dasar hak akses pada direktori dan file.

Dasar Hak Akses Dengan Metode Numerik


Hak akses merupakan mekanisme perizinan untuk mengakses file ataupun direktori tertentu. salah satu sistem operasi yang menerapkan sistem perizinan ini adalah under Linux. Karena alasan tersebutlah mengapa sistem operasi GNU/Linux lebih aman daripada sistem yang lain.

Adapun hak akses yang dimaksud adalah hak akses membaca (read), hak akses menulis (write) dan hak akses untuk menjalankan program (execute). Masing-masing hak akses mempunyai nilai yang berbeda. Hak akses read mempunyai nilai 4, hak akses write mempunyai nilai 2 dan hak akses execute mempunyai nilai 1. Nilai-nilai inilah yang nantinya diolah untuk menentukan hak akses direktori maupun file.

Sistem operasi GNU/Linux merupakan sistem operasi yang sangat kompleks. Dalam pemberian hak akses pun, GNU/Linux mempunyai setidaknya tiga (3) ketentuan hak akses. Ketiganya adalah hak akses pada user (user aktif), hak akses pada group (yang digunakan user aktif maupun user non-aktif) dan hak akses pada other (hak akses untuk tamu).

Secara singkat dapat dijelaskan bahwa GNU/Linux mempunyai ketentuan dan penilaian untuk hak akses terhadap direktori dan file. untuk lebih jelasnya berikut ini contoh penggunaan hak akses di GNU/Linux:


































Nilai Hak Akses



Untuk USER



Untuk GROUP



Untuk OTHER



777


read, write, execute
4+2+1 = 7
read, write, execute
4+2+1 = 7
read, write, execute
4+2+1 = 7

775


read, write, execute
4+2+1 = 7
read, write, execute
4+2+1 = 7
read dan execute
4+1 = 5

755


read, write, execute
4+2+1 = 7
read dan execute
4+1 = 5
read dan execute
4+1 = 5

664


read dan write
4+2 = 6
read dan write
4+2 = 6
read only
4

Masih bingung? Tenang saja, mari kita lanjutkan dengan implementasi pada Debian-base. Semoga dengan implementasi anda bisa lebih memahami :)

Implementasi Hak Akses Pada Debian-base


Implementasi ini mengususung studi kasus yang terdapat di Modul Praktikum Keamanan Jaringan. adapun simulasi dan studi kasusnya adalah seperti ini:
Lakukan penambahan 2 user di sistem Debian anda, lalu buat sebuah folder bernama praktikum, lalu atur hak akses direktori tersebut dengan ketentuan berikut:

  1. Misalkan buat user A dan B kemudian atur hak akses folder praktikum dengan ketentuan hanya A yang memiliki hak akses read, write dan execute sedangkan B hanya memiliki hak akses read dan execute saja.

  2. Rubah hak akses A dan B dengan ketentuan write, read dan execute.



Mari kita selesaikan simulasi dan studi kasus diatas.

Pertama, kita membuat dua user, A dan B. Untuk membuat user baru di Debian-base gunakan perintah berikut dan lakukan juga untuk user B.
adduser A --force-badname

[caption id="" align="alignnone" width="412"]perintah dan proses pembuatan user baru Perintah dan proses pembuatan user baru[/caption]

Setelah dua user (A dan B) di buat, lanjutkan dengan membuat direktori praktikum di /home/ dan buat file praktikum.txt di /home/praktikum.
mkdir /home/praktikum
touch /home/praktikum/praktikum.txt

Lalu rubah hak akses direktori praktikum dengan ketentuan A mempunyai hak akses penuh sedangkan user B mempunyai hak akses read dan execute.
chmod 775 -R /home/praktikum

Sampai disini sayangnya user A masih bersifat Other dalam pemberian hak akses diatas, sehingga user A masih mempunyai hak akses read dan execute. Kenapa begitu? ya, karena kita memberikan hak aksesnya melalui user Root (#). Lihat lagi gambar diatas.

Agar user A dapat memiliki hak akses penuh terhadap direktori praktikum, kita masukkan user A ke dalam group yang sama dengan root (#) dengan perintah berikut.
adduser A root

[caption id="" align="alignnone" width="288"] Proses memasukkan user A ke group user Root[/caption]

Dari sini kita tidak lagi bergantung dengan root untuk melakukan read, write dan execute. silahkan logout dari root dan login dengan user A.

Pada posisi user A, lakukan editing file praktikum.txt dengan perintah berikut.
nano /home/praktikum/praktikum.txt

Setelah melakukan editing, simpan. Untuk melihat hasilnya, gunakan perintah berikut.
cat /home/praktikum/praktikum.txt

[caption id="" align="alignnone" width="398"] Perintah untuk menampilkan isi file praktikum.txt[/caption]

Disini kita telah melakukan editing (write) dan read, lalu bagaimana dengan execute? sepertinya tidak akan saya praktikkan juga, karena hak akses execute ini digunakan untuk menjalankan program saja (.sh, .pl, .py, dll). Maaf yah :).

Nah, bagaimana dengan user B? mari kita coba saja.

Logout user A dan login dengan user B. setelah berhasil login, lanjutkan dengan membaca file praktikum.txt dengan perintah berikut.
cat /home/praktikum/praktikum.txt

[caption id="" align="alignnone" width="364"] Perintah untuk menampilkan isi file praktikum.txt[/caption]

Mari kita coba untuk melakukan editing file praktikum.txt dan lihat apa yang terjadi saat kita menyimpan hasil editing.

[caption id="" align="alignnone" width="601"] Peringatan "Perission denied" saat menyimpan hasil editing oleh user B[/caption]

Nah, terdapat peringatan “Permission denied”.

Kedua, kita coba melakukan memberikan hak akses penuh direktori praktikum untuk semua user (Other). Untuk melakukannya logout dari user B dan login lagi sebagai Root (#). Berikan hak akses penuh terhadap user, group dan other (semua user selain user aktif saat ini. Termasuk user A dan B).
chmod 777 -R /home/praktikum

Silahkan login kembali dengan user B dan lakukan editing. User B pun dapat melakukan editing dengan baik.

Nah, sampai disini kita telah dapat memberikan hak akses sebagai mana mestinya. Tujuan dari pemberian hak akses ini tidak lain adalah untuk memanajemen penggunaan direktori dan file. Jangan sampai akses terhadap direktori dan file tertentu dapat digunakan dengan leluasa oleh orang lain, selain kita beri izin untuk mengaksesnya. Dengan kata lain, metode ini adalah dasar keamanan dari sistem GNU/Linux.

Bagaimana, sudah tidak bingung lagi kan?. Jika masih bingung jangan sungkan untuk bertanya melalui kolom komentar yah kawan. Bagikan juga pengalaman kalian dalam memanajemen hak akses direktori dan file di sistem GNU/Linux kesayangan kalian.

Saya juga membuka kritik dan saran untuk memperbaiki tulisan-tulisan saya di blog ini. Silahkan kirimkan kritik dan saran kalian ke email chotibulstudio@gmail.com.

Sampai jumpa di seri #tipsdantrik selanjutnya, kawan. Semoga hari anda menyenangkan. :)

Komentar

Postingan populer dari blog ini

Implementasi IPv6 TunnelBroker untuk Server WordPress Self Host

Daftar Rekomendasi Repositori Lokal Debian 11 "Bullseye"

Koneksi Internet Bermasalah di Ubuntu 18.04, Berikut Cara Memperbaikinya