rumah - Antivirus
Server Ubuntu - hak pengguna administratif. Ubuntu Server - hak pengguna administratif Memberikan hak penuh kepada pengguna ubuntu

Manajemen pengguna adalah bagian penting dari keamanan sistem. Pengguna yang tidak efektif dan manajemen hak istimewa sering kali menyebabkan banyak sistem disusupi. Oleh karena itu, penting bagi Anda untuk memahami cara melindungi server Anda menggunakan teknik manajemen akun pengguna yang sederhana dan efektif.

Di mana pengguna supernya?

Pengembang Ubuntu secara sadar membuat keputusan untuk mengunci akun root administratif (root) secara default di semua instalasi Ubuntu. Ini tidak berarti bahwa akun root telah dihapus atau tidak dapat diakses. Itu hanya diberi kata sandi yang tidak cocok dengan nilai terenkripsi apa pun, sehingga tidak dapat digunakan untuk masuk secara langsung.

Sebaliknya, pengguna didorong untuk menggunakan alat yang disebut sudo untuk mengalihkan tugas administratif. Sudo memungkinkan pengguna yang berwenang untuk sementara meningkatkan hak istimewa mereka dengan menggunakan kata sandi mereka sendiri alih-alih mengetahui kata sandi yang ditetapkan untuk pengguna super. Teknik sederhana namun efektif ini memastikan akuntabilitas untuk semua tindakan pengguna dan memberikan kontrol administratif atas tindakan apa yang dapat dilakukan oleh pengguna dengan hak istimewa tertentu.

1. Jika karena alasan tertentu Anda ingin mengizinkan akun pengguna super, cukup setel kata sandi untuk akun tersebut:

Sudo sandi

Sudo akan menanyakan kata sandi Anda dan kemudian meminta Anda untuk menginstal kata sandi baru untuk root seperti di bawah ini:

Kata sandi untuk nama pengguna: (masukkan kata sandi Anda sendiri) Masukkan kata sandi UNIX baru: (masukkan kata sandi pengguna super baru) Ketik ulang kata sandi UNIX baru: (ulangi kata sandi pengguna super baru) passwd: kata sandi berhasil diperbarui

2. Untuk mengunci akun root, gunakan sintaks passwd berikut:

Sudo passwd -l root

Astaga

Secara default, pengguna awal yang dibuat oleh penginstal Ubuntu adalah anggota grup "admin", yang ditambahkan ke file /etc/sudoers sebagai pengguna yang diberi izin sudo. Jika Anda ingin mengizinkan akses pengguna super penuh ke akun lain melalui sudo, tambahkan saja dia ke grup admin.

Menambah dan menghapus pengguna

Proses pengelolaan pengguna dan grup lokal sederhana dan tidak jauh berbeda dengan kebanyakan sistem operasi GNU/Linux lainnya. Ubuntu dan distribusi berbasis Debian lainnya mendorong penggunaan paket "adduser" untuk manajemen akun.

1. Untuk menambahkan akun pengguna, gunakan sintaks berikut dan ikuti petunjuk untuk kata sandi dan kredensial seperti nama lengkap, telepon, dll.:

Nama pengguna tambahan Sudo

2. Untuk menghapus pengguna dan grup utamanya, gunakan sintaks berikut:

Nama pengguna Sudodeluser

Menghapus pengguna tidak menghapus direktori home terkaitnya. Terserah pada kebijaksanaan Anda apakah Anda ingin menghapus direktori secara manual atau membiarkannya sesuai dengan kebijakan penyimpanan Anda.

Ingatlah bahwa setiap pengguna yang ditambahkan kemudian dengan UID/GID yang sama dengan pengguna sebelumnya akan mendapatkan akses ke direktori ini kecuali Anda melakukan tindakan pencegahan yang diperlukan.

Anda mungkin ingin mengubah nilai UID/GID direktori ini ke sesuatu yang lebih sesuai, seperti nilai pengguna super, dan mungkin memindahkan direktori untuk mencegah konflik di masa mendatang:

Sudo chown -R root:root /home/nama pengguna/ sudo mkdir /home/archived_users/ sudo mv /home/nama pengguna /home/archived_users/

3. Untuk memblokir atau membuka blokir sementara, gunakan sintaks berikut:

Sudo passwd -l nama pengguna sudo passwd -u nama pengguna

4. Untuk menambah atau menghapus grup pribadi, gunakan sintaks berikut masing-masing:

Sudo tambahkan nama grup grup sudo delgroup nama grup

5. Untuk menambahkan pengguna ke grup, gunakan:

Sudo adduser nama grup nama pengguna

Keamanan Profil Pengguna

Saat dibuat Pengguna baru, utilitas adduser akan membuat direktori bernama baru /home/nama pengguna. Profil default dihasilkan dari konten yang terletak di direktori /etc/skel, yang mencakup semua dasar-dasar untuk membuat profil.

Jika server Anda dihuni oleh banyak pengguna, Anda harus memperhatikan dengan cermat izin pada direktori beranda pengguna untuk menjaga kerahasiaan. Secara default, direktori home pengguna dibuat dengan izin baca/eksekusi untuk semua orang. Ini berarti semua pengguna dapat melihat dan mengakses konten dari direktori home lainnya. Ini mungkin tidak cocok untuk lingkungan Anda.

1. Untuk memeriksa hak akses ke direktori home pengguna yang ada, gunakan sintaks berikut:

Ls -ld /home/nama pengguna

Output berikut menunjukkan bahwa direktori /home/nama pengguna memiliki akses baca untuk semua orang:

Drwxr-xr-x 2 nama pengguna nama pengguna 4096 02-10-2007 20:03 nama pengguna

2. Anda dapat menghapus izin baca untuk semua orang menggunakan sintaks berikut:

Sudo chmod 0750 /home/nama pengguna

Beberapa orang cenderung menggunakan opsi rekursi (-R) tanpa pandang bulu, yang mengubah semua direktori dan file anak, meskipun hal ini tidak diperlukan dan mungkin menimbulkan konsekuensi lain yang tidak diinginkan. Direktori induk itu sendiri akan melarang akses tidak sah ke segala isinya.

Pendekatan yang lebih efisien terhadap masalah ini adalah dengan mengubah izin global default Tambahkan pengguna saat membuat direktori home. Cukup edit file /etc/adduser.conf, ubah variabel DIR_MODE menjadi sesuatu yang lebih sesuai, dan semua direktori home baru akan memiliki izin yang benar.

DIR_MODE=0750

3. Setelah memperbaiki izin direktori menggunakan salah satu teknik yang disebutkan sebelumnya, periksa hasilnya menggunakan perintah berikut:

Ls -ld /home/nama pengguna

Output di bawah ini menunjukkan bahwa izin baca telah dihapus untuk semua orang:

Drwxr-x--- 2 nama pengguna nama pengguna 4096 02-10-2007 20:03 nama pengguna

Kebijakan Kata Sandi

Kebijakan kata sandi yang kuat adalah salah satu aspek terpenting dari pendekatan keamanan Anda. Banyak pelanggaran keamanan yang berhasil menggunakan serangan brute force dan tebakan kamus terhadap kata sandi yang lemah. Jika Anda berniat menggunakan formulir apa pun akses jarak jauh menggunakan sistem kata sandi lokal Anda, pastikan Anda menetapkan yang memadai persyaratan minimum ke kata sandi Anda, masa pakai kata sandi maksimum, dan periksa sistem otentikasi Anda sesering mungkin.

Panjang kata sandi minimum

Secara default, Ubuntu memerlukan panjang kata sandi minimal 6 karakter, serta beberapa pemeriksaan pencar dasar. Pengaturan ini dikendalikan oleh file /etc/pam.d/common-password dan tercantum di bawah ini:

Kata sandi pam_unix.so tidak jelas sha512

Jika Anda ingin mengatur panjang minimum menjadi 8 karakter, ubah variabel terkait menjadi min=8. Perubahannya ada di bawah ini:

Kata sandi pam_unix.so tidak jelas sha512 min=8

Pemeriksaan kualitas dasar dan pemeriksaan panjang kata sandi minimum tidak berlaku untuk administrator yang menggunakan perintah tingkat sudo untuk menyiapkan pengguna baru.

Kata sandi seumur hidup

Saat membuat akun pengguna, Anda harus membuat kebijakan kata sandi seumur hidup minimum dan maksimum untuk memaksa pengguna mengubah kata sandi mereka setelah waktu tertentu.

1. Untuk melihat status akun pengguna saat ini dengan mudah, gunakan sintaks berikut:

Sudo chage -l nama pengguna

Output di bawah ini menunjukkan Fakta Menarik tentang akun pengguna yaitu tidak ada kebijakan yang diterapkan:

Perubahan kata sandi terakhir: 20 Jan 2008 Kata sandi kedaluwarsa: tidak pernah Kata sandi tidak aktif: tidak pernah Masa berlaku akun: tidak pernah Jumlah hari minimum antara perubahan kata sandi: 0 Jumlah hari maksimum antara perubahan kata sandi: 99999 Jumlah hari peringatan sebelum kata sandi kedaluwarsa: 7

2. Untuk menetapkan nilai-nilai ini, cukup gunakan perintah berikut dan ikuti petunjuk interaktif:

Sudo mengubah nama pengguna

Berikut ini juga merupakan contoh bagaimana Anda dapat secara manual mengubah tanggal kedaluwarsa kata sandi eksplisit (-E) menjadi 31/01/2008 (tanggal AS - kira-kira), jangka waktu minimum masa berlaku kata sandi (-m) adalah 5 hari, masa berlaku maksimum (-M) adalah 90 hari, masa tidak aktif (-I) adalah 5 hari setelah masa berlaku kata sandi berakhir, dan masa peringatan (-W) adalah 14 hari sebelum masa berlaku kata sandi berakhir.

Sudo chage -E 31/01/2011 -m 5 -M 90 -I 30 -W 14 nama pengguna

3. Untuk memeriksa perubahan, gunakan perintah yang sama seperti yang disebutkan di atas:

Sudo chage -l nama pengguna

Output perintah di bawah ini menunjukkan kebijakan baru yang diterapkan pada akun:

Perubahan kata sandi terakhir: 20 Jan 2008 Masa berlaku kata sandi: 19 Apr 2008 Kata sandi tidak aktif: 19 Mei 2008 Masa berlaku akun: 31 Jan 2008 Jumlah hari minimum antara perubahan kata sandi: 5 Jumlah hari maksimum antara perubahan kata sandi: 90 Jumlah hari peringatan sebelum kata sandi kedaluwarsa: 14

Pertimbangan Keamanan Lainnya

Banyak aplikasi menggunakan mekanisme autentikasi alternatif yang mudah diabaikan bahkan oleh pengguna berpengalaman. administrator sistem. Oleh karena itu, penting untuk memahami dan mengontrol cara pengguna masuk dan mendapatkan akses ke layanan dan aplikasi di server Anda.

Akses SSH oleh pengguna yang diblokir

Shutdown/pemblokiran normal tidak mengecualikan koneksi jarak jauh pengguna ke server jika sebelumnya dia telah diautentikasi oleh kunci publik RSA. Pengguna tersebut akan memiliki akses ke shell konsol di server tanpa harus memasukkan kata sandi apa pun. Ingatlah untuk memeriksa direktori beranda pengguna untuk file yang mengizinkan jenis otorisasi SSH ini, seperti /home/nama pengguna/.ssh/authorized_keys.

Menghapus atau mengganti nama direktori .ssh/ di direktori home pengguna akan mencegah kemampuan otentikasi SSH lebih lanjut.

Pastikan untuk memeriksa koneksi SSH yang dibuat oleh pengguna yang diblokir, karena mungkin masih ada koneksi masuk atau keluar. Bunuh semua yang Anda temukan.

Batasi akses SSH hanya pada akun pengguna yang memerlukannya. Misalnya, Anda dapat membuat grup bernama "sshlogin" dan menambahkan nama grup sebagai nilai untuk variabel AllowGroups yang terletak di file /etc/ssh/sshd_config.

Izinkan Grup sshlogin

Kemudian tambahkan pengguna Anda yang mengizinkan akses SSH ke grup "sshlogin" dan mulai ulang layanan SSH.

Sudo adduser nama pengguna sshlogin sudo layanan ssh restart

Otentikasi menggunakan database eksternal

Mayoritas jaringan perusahaan memerlukan otentikasi terpusat dan kontrol akses untuk semua sumber daya sistem. Jika Anda telah mengonfigurasi server Anda untuk mengautentikasi pengguna terhadap database eksternal, pastikan Anda menonaktifkannya Akun baik eksternal maupun lokal, sehingga Anda akan yakin bahwa kembalikan ke otentikasi lokal mustahil.

Karena Linux adalah sistem multi-pengguna, masalah pengorganisasian kontrol akses ke file dan direktori adalah salah satu masalah penting yang harus diselesaikan oleh sistem operasi. Mekanisme kontrol akses dirancang untuk sistem UNIX di tahun 70-an (mungkin, bagaimanapun, diusulkan oleh seseorang sebelumnya), sangat sederhana, tetapi ternyata sangat efektif sehingga telah ada selama lebih dari 30 tahun dan hingga hari ini berhasil memenuhi tugasnya.

Mekanisme kontrol akses didasarkan pada nama pengguna dan nama grup pengguna. Anda sudah tahu bahwa di Linux setiap pengguna memilikinya nama yang unik, di mana dia masuk ke sistem (log masuk). Selain itu, sejumlah grup pengguna dibuat dalam sistem, dan setiap pengguna dapat dimasukkan dalam satu atau lebih grup. Pengguna super membuat dan menghapus grup, dan dia juga dapat mengubah komposisi anggota grup tertentu. Anggota grup yang berbeda mungkin memiliki hak yang berbeda untuk mengakses file; misalnya, grup administrator mungkin memiliki hak lebih dari grup pemrogram.

Inode setiap file berisi nama pemilik file dan grup yang memiliki hak atas file tersebut. Awalnya, ketika sebuah file dibuat, pemiliknya dinyatakan sebagai pengguna yang membuat file tersebut. Lebih tepatnya, pengguna yang atas namanya proses pembuatan file diluncurkan. Grup juga ditetapkan saat file dibuat - sesuai dengan pengidentifikasi grup dari proses pembuatan file. Pemilik dan grup file dapat diubah selama pekerjaan selanjutnya menggunakan perintah chown Dan chgrp(lebih lanjut tentang mereka akan dibahas nanti).

Sekarang mari kita jalankan perintahnya lagi aku -l. Tapi mari kita beri nama file tertentu sebagai parameter tambahan, misalnya file yang menentukan perintah itu sendiri aku. (Omong-omong, perhatikan opsi perintah ini aku -l— mendapatkan informasi tentang file tertentu, dan bukan tentang semua file dalam direktori sekaligus).

$ ls -l /bin/ls

Anda dapat melihat bahwa dalam hal ini pemilik file adalah pengguna root dan grup root. Namun sekarang pada keluaran perintah ini kita lebih tertarik pada kolom pertama, yang menentukan jenis file dan hak akses ke file tersebut. Bidang dalam contoh di atas diwakili oleh serangkaian karakter -rwxr-xr-x. Simbol-simbol ini dapat dibagi menjadi 4 kelompok.

Grup pertama, terdiri dari satu karakter, mengidentifikasi jenis file. Simbol ini, sesuai dengan kemungkinan jenis file yang dibahas di bagian sebelumnya, dapat memiliki nilai berikut:

    - = - file biasa;

    d =- katalog;

    b =— memblokir file perangkat;

    c =— file perangkat karakter;

    s =— soket domain;

    hal =— bernama pipa (pipa);

    aku =— tautan simbolis (tautan).

Selanjutnya ikuti tiga kelompok yang terdiri dari tiga karakter, yang menentukan hak akses ke file, masing-masing, untuk pemilik file, untuk grup pengguna yang terkait dengan file ini, dan untuk semua pengguna sistem lainnya. Dalam contoh kita, izin untuk pemilik didefinisikan sebagai rwx, yang berarti pemilik ( akar) berhak membaca file (r), menulis ke file ini (w), dan meluncurkan file untuk dieksekusi (x). Mengganti salah satu karakter ini dengan tanda hubung berarti pengguna kehilangan hak terkait. Dalam contoh yang sama, kita melihat bahwa semua pengguna lain (termasuk mereka yang termasuk dalam grup akar) dicabut haknya untuk menulis ke file ini, yaitu mereka tidak dapat mengedit file atau mengubahnya dengan cara apa pun.

Secara umum, hak akses dan informasi jenis file pada sistem UNIX disimpan dalam inode dalam struktur terpisah yang terdiri dari dua byte, yaitu 16 bit (hal ini wajar, karena komputer beroperasi pada bit, bukan karakter r, w, x). Empat dari 16 bit ini dicadangkan untuk rekaman jenis file yang disandikan. Tiga bit berikutnya disetel properti khusus file yang dapat dieksekusi, yang akan kita bicarakan nanti. Dan terakhir, 9 bit sisanya menentukan izin file. 9 bit ini dibagi menjadi 3 kelompok yang terdiri dari tiga bit. Tiga bit pertama menentukan hak pengguna, tiga bit berikutnya menentukan hak grup, dan 3 bit terakhir menentukan hak semua pengguna lainnya (yaitu, semua pengguna kecuali pemilik file dan grup file).

Dalam hal ini, jika bit yang bersangkutan bernilai 1, maka hak diberikan, dan jika sama dengan 0, maka hak tidak diberikan. Dalam bentuk simbolis notasi hak, 1 diganti dengan simbol yang sesuai (r, w atau x), dan 0 diwakili oleh tanda hubung.

Izin file baca (r) berarti pengguna dapat melihat konten file menggunakan berbagai perintah tampilan, seperti perintah lagi atau menggunakan apa pun editor teks. Namun jika Anda mengedit konten file dalam editor teks, Anda tidak akan dapat menyimpan perubahan pada file di disk kecuali Anda memiliki izin menulis (w) ke file tersebut. Izin Jalankan (x) berarti Anda dapat memuat file ke dalam memori dan mencoba menjalankannya sebagai program yang dapat dieksekusi. Tentu saja, kecuali file tersebut benar-benar sebuah program (atau skrip cangkang), maka file ini tidak dapat diluncurkan untuk dieksekusi, tetapi, sebaliknya, meskipun file tersebut benar-benar sebuah program, tetapi hak untuk mengeksekusinya tidak ditetapkan, maka file tersebut juga tidak akan berjalan.

Jadi kami menemukan file mana yang dapat dieksekusi di Linux! Seperti yang Anda lihat, ekstensi nama file tidak ada hubungannya dengan itu, semuanya ditentukan dengan mengatur atribut "dapat dieksekusi", dan tidak semua orang diberikan hak untuk mengeksekusi!

Jika Anda menjalankan perintah yang sama aku -l, tetapi sebagai argumen terakhir, bukan nama file yang harus diberikan, tetapi nama direktori, kita akan melihat bahwa hak akses juga ditentukan untuk direktori, dan ditentukan dengan simbol rwx yang sama. Misalnya saja dengan menjalankan perintah aku -l /, kita akan melihat bahwa direktori bin sesuai dengan baris:

Secara alami, dalam kaitannya dengan direktori, interpretasi konsep “baca dengan benar”, “tulis dengan benar” dan “eksekusi dengan benar” agak berubah. Izin baca sehubungan dengan direktori mudah dipahami jika Anda ingat bahwa direktori hanyalah sebuah file yang berisi daftar file dalam direktori tertentu. Oleh karena itu, jika Anda memiliki izin membaca pada suatu direktori, maka Anda dapat melihat isinya (daftar file dalam direktori ini). Hak menulis juga jelas - dengan memiliki hak seperti itu, Anda akan dapat membuat dan menghapus file di direktori ini, yaitu, cukup menambah atau menghapus entri yang berisi nama file dan tautan terkait dari direktori. Hak eksekusinya kurang intuitif. Dalam hal ini, berarti hak untuk pindah ke direktori ini. Jika Anda, sebagai pemilik, ingin memberikan akses kepada pengguna lain untuk melihat file di direktori Anda, Anda harus memberi mereka izin untuk mengakses direktori tersebut, yaitu memberi mereka "izin jalankan direktori". Selain itu, Anda harus memberikan hak kepada pengguna untuk mengeksekusi semua direktori yang terletak di pohon di atas direktori ini. Oleh karena itu, pada prinsipnya, semua direktori memiliki izin eksekusi default yang ditetapkan untuk pemilik dan grup, serta untuk semua pengguna lainnya. Dan, jika Anda ingin memblokir akses ke suatu direktori, hilangkan hak semua pengguna (termasuk grup) untuk masuk ke direktori ini. Hanya saja, jangan menghilangkan hak ini, jika tidak, Anda harus beralih ke pengguna super! (Catatan 11)

Setelah membaca paragraf sebelumnya, sepertinya direktori read right tidak memberikan sesuatu yang baru dibandingkan dengan hak eksekusi. Namun, masih terdapat perbedaan dalam hak-hak tersebut. Jika Anda hanya mengatur izin eksekusi, Anda akan dapat masuk ke direktori, tetapi tidak akan melihat file apa pun di sana (efek ini terutama terlihat jika Anda menggunakan semacam pengelola file, misalnya Midnight Commander). Jika Anda memiliki hak akses ke salah satu subdirektori dari direktori ini, Anda dapat membukanya (dengan perintah CD), tetapi, seperti yang mereka katakan, "secara membabi buta", dari memori, karena Anda tidak akan melihat daftar file dan subdirektori dari direktori saat ini.

Algoritma pengecekan hak pengguna pada saat mengakses suatu file dapat digambarkan sebagai berikut. Sistem terlebih dahulu memeriksa apakah nama pengguna cocok dengan nama pemilik file. Jika nama-nama ini cocok (yaitu, pemilik mengakses filenya), maka diperiksa apakah pemilik memiliki hak akses yang sesuai: membaca, menulis, atau mengeksekusi (jangan kaget, pengguna super dapat mencabut sebagian pemilik file hak). Jika hak tersebut ada, maka operasi terkait diperbolehkan. Jika hukum yang benar pemiliknya tidak memilikinya, maka pemeriksaan hak yang diberikan melalui grup atau melalui grup atribut akses untuk pengguna lain bahkan tidak lagi diperiksa, dan pengguna diberikan pesan tentang ketidakmungkinan melakukan tindakan yang diminta (biasanya sesuatu seperti "Izin ditolak").

Jika nama pengguna yang mengakses file tidak sesuai dengan nama pemiliknya, maka sistem akan memeriksa apakah pemiliknya termasuk dalam grup yang terkait dengan file tersebut (selanjutnya kita cukup menyebutnya grup file). Jika dimiliki, atribut khusus grup digunakan untuk menentukan apakah file dapat diakses, dan atribut untuk pemilik dan semua pengguna lainnya diabaikan. Jika pengguna bukan pemilik file dan bukan anggota grup file, maka haknya ditentukan oleh atribut pengguna lain. Dengan demikian, atribut kelompok ketiga yang menentukan hak akses file berlaku untuk semua pengguna kecuali pemilik file dan pengguna dalam grup file.

Untuk mengubah izin file, gunakan perintah chmod. Ini dapat digunakan dengan dua cara. Pada pilihan pertama, Anda harus dengan jelas menunjukkan kepada siapa Anda memberikan hak apa atau kepada siapa Anda merampas hak ini:

$ chmod wXp nama file

di mana, bukan simbol w diganti

    atau simbol kamu(yaitu pengguna yang merupakan pemiliknya);

    atau G(kelompok);

    atau Hai(semua pengguna yang bukan anggota grup tempat file ini berada);

    atau A(semua pengguna sistem, yaitu pemilik, grup, dan semua orang).

Alih-alih X meletakkan:

    atau + (kami memberikan hak);

    atau - (kami menghilangkan hak terkait);

    atau = (pasang hak yang ditentukan alih-alih hak yang sudah ada),

Alih-alih P— simbol yang menunjukkan hak yang bersangkutan:

    R(membaca);

    w(catatan);

    X(pertunjukan).

Berikut beberapa contoh penggunaan perintah tersebut chmod:

$ chmod a+x nama_file

memberikan semua pengguna sistem hak untuk mengeksekusi file ini.

$ chmod go-rw nama_file

menghapus izin baca dan tulis untuk semua orang kecuali pemilik file.

$ chmod ugo+rwx nama_file

Memberi semua orang izin membaca, menulis, dan mengeksekusi.

Jika kita menghilangkan indikasi siapa yang diberikan hak ini, maka dapat dipahami bahwa kita berbicara tentang semua pengguna secara umum, yaitu bukan $ chmod a+x nama_file

dapat ditulis secara sederhana

$ chmod +x nama_file

Opsi kedua untuk menentukan perintah chmod(lebih sering digunakan) didasarkan pada representasi hak secara digital. Untuk melakukan ini, kita mengkodekan karakter r dengan angka 4, karakter w dengan angka 2, dan karakter x dengan angka 1. Untuk memberikan seperangkat hak tertentu kepada pengguna, kita perlu menambahkan angka yang sesuai . Setelah memperoleh nilai numerik yang diperlukan untuk pemilik file, untuk grup file, dan untuk semua pengguna lainnya, kami menetapkan tiga digit ini sebagai argumen untuk perintah chmod(kami menempatkan angka-angka ini setelah nama perintah sebelum argumen kedua, yang menentukan nama file). Misalnya, jika Anda perlu memberikan semua hak kepada pemilik (4+2+1=7), hak membaca dan menulis kepada grup (4+2=6), dan tidak memberikan hak apa pun kepada orang lain, maka Anda harus memberikan perintah berikut:

$ chmod 760 nama_file

Jika Anda familiar dengan pengkodean biner angka oktal, maka Anda akan memahami bahwa angka setelah nama perintah dalam bentuk representasi ini tidak lebih dari representasi oktal dari 9 bit yang menentukan hak bagi pemilik file, file grup file, dan untuk semua pengguna.

Ubah izin file menggunakan perintah chmod Hanya pemilik file atau pengguna super yang dapat melakukan ini. Agar dapat mengubah hak suatu grup, pemilik juga harus menjadi anggota grup yang ingin diberi hak atas file ini.

Untuk melengkapi cerita tentang hak akses file, kita perlu membicarakan tiga kemungkinan atribut file lagi yang dapat diatur menggunakan perintah yang sama chmod. Ini adalah atribut yang sama untuk file yang dapat dieksekusi yang menempati posisi 5-7 dalam inode file dalam struktur dua byte yang menentukan hak atas file, segera setelah kode jenis file.

Atribut pertama adalah apa yang disebut "ubah bit ID pengguna". Arti dari bit ini adalah sebagai berikut.

Biasanya, ketika pengguna menjalankan suatu program, program tersebut menerima hak akses yang sama terhadap file dan direktori yang dimiliki oleh pengguna yang meluncurkan program tersebut. Jika "ubah bit ID pengguna" diatur, maka program akan mendapatkan hak akses ke file dan direktori yang dimiliki pemilik file program (jadi, atribut yang dimaksud lebih baik disebut "ubah bit ID pemilik"). Hal ini memungkinkan Anda menyelesaikan beberapa tugas yang mungkin sulit diselesaikan. Contoh paling umum adalah perintah perubahan kata sandi kata sandi. Semua kata sandi pengguna disimpan dalam file /etc/passwd, yang dimiliki oleh pengguna super akar. Oleh karena itu, program yang diluncurkan oleh pengguna biasa, termasuk perintah kata sandi, tidak dapat menulis ke file ini. Artinya pengguna tidak dapat mengubah kata sandinya sendiri. Tetapi file /usr/bin/passwd memiliki set "ubah ID pemilik bit", yaitu pengguna akar. Oleh karena itu, program perubahan kata sandi kata sandi berjalan dengan hak akar dan menerima hak untuk menulis ke file /etc/passwd (program itu sendiri memastikan bahwa pengguna hanya dapat mengubah satu baris dalam file ini).

Pengguna super dapat mengatur "ubah bit ID pemilik" menggunakan perintah

# chmod +s nama_file

"Bit perubahan ID grup" bekerja dengan cara yang sama.

Atribut lain yang mungkin dari file yang dapat dieksekusi adalah "task save bit" atau "sticky bit". Bit ini memberitahu sistem untuk menyimpannya ke RAM setelah program selesai. Lebih mudah untuk mengaktifkan bit ini untuk tugas-tugas yang sering diminta untuk dieksekusi, karena dalam hal ini bit ini menghemat waktu memuat program setiap kali diluncurkan. Atribut ini diperlukan pada model komputer lama. Ini jarang digunakan pada sistem kecepatan tinggi modern.

Jika opsi digital untuk menentukan atribut dalam perintah digunakan chmod, maka nilai digital dari atribut ini harus mendahului angka yang menentukan hak pengguna:

# chmod 4775 nama_file

Dalam hal ini, bobot bit-bit tersebut untuk mendapatkan hasil total yang diinginkan ditetapkan sebagai berikut:

    4 — “sedikit perubahan ID pengguna”,

    2 — “bit perubahan pengidentifikasi grup”,

    1 - "bit penghemat tugas (bit lengket)".

Jika salah satu dari tiga bit ini disetel ke 1, keluaran perintah sedikit berubah aku -l dalam hal menampilkan atribut hak akses yang dipasang. Jika "ubah bit ID pengguna" disetel ke 1, karakter "x" dalam grup yang menentukan hak pemilik file diganti dengan karakter "s". Apalagi jika pemilik mempunyai hak untuk mengeksekusi file tersebut, maka simbol “x” diganti dengan huruf “s” kecil, dan jika pemilik tidak mempunyai hak untuk mengeksekusi file tersebut (misalnya file tidak dapat dieksekusi). sama sekali), maka “S” ditempatkan sebagai pengganti “x”. Penggantian serupa terjadi ketika menentukan "bit perubahan pengidentifikasi grup", tetapi karakter "x" dalam grup atribut yang menentukan hak grup diganti. Jika "bit lengket tugas" adalah 1, maka karakter "x" dalam grup atribut yang menentukan hak untuk semua pengguna lain diganti, dan "x" diganti dengan karakter "t" jika semua pengguna dapat menjalankan file , dan dengan simbol "T" jika mereka tidak mempunyai hak tersebut.

Jadi, meskipun keluaran perintah aku -l Tidak ada posisi terpisah untuk menampilkan nilai bit perubahan pengidentifikasi dan bit penyimpanan tugas; Berikut ini contoh kecil tampilannya:

# ls -l prim1

V. Kostromin (kos di rus-linux dot net) - 4.5. Izin file dan direktori

Manajemen pengguna adalah bagian penting dalam menjaga keamanan sistem. Manajemen pengguna dan hak istimewa yang tidak efektif sering kali menyebabkan banyak sistem disusupi. Oleh karena itu, penting bagi Anda untuk memahami bagaimana Anda dapat melindungi server Anda melalui teknik manajemen akun pengguna yang sederhana dan efektif.

Pengembang Ubuntu membuat keputusan hati-hati untuk menonaktifkan akun root administratif secara default di semua instalasi Ubuntu. Ini tidak berarti bahwa akun root telah dihapus atau tidak dapat diakses. Itu hanya diberi kata sandi yang tidak cocok dengan nilai terenkripsi yang mungkin, oleh karena itu tidak dapat masuk secara langsung dengan sendirinya.

Sebaliknya, pengguna didorong untuk menggunakan alat bernama sudo untuk melaksanakan tugas administratif sistem. Sudo memungkinkan pengguna yang berwenang untuk sementara waktu meningkatkan hak istimewa mereka menggunakan kata sandi mereka sendiri daripada harus mengetahui kata sandi milik akun root. Metodologi yang sederhana namun efektif ini memberikan akuntabilitas untuk semua tindakan pengguna, dan memberikan kontrol granular kepada administrator atas tindakan mana yang dapat dilakukan pengguna dengan hak istimewa tersebut.

    Jika karena alasan tertentu Anda ingin mengaktifkan akun root, cukup berikan kata sandinya:

    Konfigurasi dengan kata sandi root tidak didukung.

    sudo passwd

    Sudo akan meminta kata sandi Anda, dan kemudian meminta Anda memberikan kata sandi baru untuk root seperti yang ditunjukkan di bawah ini:

    Kata sandi untuk nama pengguna: (masukkan milikmu kata sandi) Masukkan kata sandi UNIX baru: (masukkan kata sandi baru untuk root) Ketik ulang kata sandi UNIX baru: (ulangi kata sandi baru untuk root) passwd: kata sandi berhasil diperbarui

    Untuk menonaktifkan kata sandi akun root, gunakan sintaks passwd berikut:

    sudo passwd -l akar

    Namun, untuk menonaktifkan akun root itu sendiri, gunakan perintah berikut:

    mod pengguna --kedaluwarsa 1

    Anda harus membaca lebih lanjut tentang Sudo dengan membaca halaman manual:

    kawan sudo

Secara default, pengguna awal yang dibuat oleh penginstal Ubuntu adalah anggota grup "sudo" yang ditambahkan ke file /etc/sudoers sebagai pengguna sudo resmi. Jika Anda ingin memberikan akses root penuh pada akun lain melalui sudo , cukup tambahkan mereka ke grup sudo.

Menambah dan Menghapus Pengguna

Proses untuk mengelola pengguna dan grup lokal sangatlah mudah dan sedikit berbeda dari kebanyakan sistem operasi GNU/Linux lainnya. Ubuntu dan distribusi berbasis Debian lainnya mendorong penggunaan paket "adduser" untuk manajemen akun.

    Untuk menambahkan akun pengguna, gunakan sintaks berikut, dan ikuti petunjuk untuk memberikan kata sandi dan karakteristik yang dapat diidentifikasi pada akun tersebut, seperti nama lengkap, nomor telepon, dll.

    sudo nama pengguna tambahan

    Untuk menghapus akun pengguna dan grup utamanya, gunakan sintaks berikut:

    sudo nama pengguna deluser

    Menghapus akun tidak menghapus folder utamanya masing-masing. Terserah Anda apakah Anda ingin menghapus folder secara manual atau menyimpannya sesuai dengan kebijakan penyimpanan yang Anda inginkan.

    Ingat, setiap pengguna yang ditambahkan nanti dengan UID/GID yang sama dengan pemilik sebelumnya kini akan memiliki akses ke folder ini jika Anda belum melakukan tindakan pencegahan yang diperlukan.

    Anda mungkin ingin mengubah nilai UID/GID ini ke sesuatu yang lebih sesuai, seperti akun root, dan bahkan mungkin memindahkan folder untuk menghindari konflik di masa mendatang:

    sudo chown -R root:root /home/nama pengguna/ sudo mkdir /home/archived_users/ sudo mv /home/nama pengguna /home/archived_users/

    Untuk mengunci atau membuka kunci akun pengguna untuk sementara, gunakan sintaksis berikut:

    sudo passwd -l nama pengguna sudo passwd -u nama pengguna

    Untuk menambah atau menghapus grup yang dipersonalisasi, gunakan sintaks berikut masing-masing:

    sudo nama grup addgroup sudo nama grup delgroup

    Untuk menambahkan pengguna ke grup, gunakan sintaks berikut:

    sudo adduser nama pengguna nama grup

Keamanan Profil Pengguna

Ketika pengguna baru dibuat, utilitas adduser membuat direktori home baru bernama /home/username . Profil default dimodelkan setelah konten ditemukan di direktori /etc/skel , yang mencakup semua dasar-dasar profil.

Jika server Anda akan menjadi rumah bagi banyak pengguna, Anda harus memperhatikan izin direktori home pengguna untuk memastikan kerahasiaan. Secara default, direktori home pengguna di Ubuntu dibuat dengan izin baca/eksekusi dunia. Ini berarti bahwa semua pengguna dapat menelusuri dan mengakses konten direktori home pengguna lain. Ini mungkin tidak cocok untuk lingkungan Anda.

    Untuk memverifikasi izin direktori home pengguna Anda saat ini, gunakan sintaks berikut:

    ls -ld /home/nama pengguna

    Output berikut menunjukkan bahwa direktori /home/nama pengguna memiliki izin yang dapat dibaca dunia:

    drwxr-xr-x 2 nama pengguna nama pengguna 4096 02-10-2007 20:03 nama pengguna

    Anda dapat menghapus izin yang dapat dibaca dunia menggunakan sintaks berikut:

    sudo chmod 0750 /home/nama pengguna

    Beberapa orang cenderung menggunakan opsi rekursif (-R) tanpa pandang bulu yang mengubah semua folder dan file anak, namun hal ini tidak perlu, dan mungkin menghasilkan hasil lain yang tidak diinginkan. Direktori induk saja sudah cukup untuk mencegah akses tidak sah ke apa pun di bawah induknya.

    Pendekatan yang jauh lebih efisien terhadap masalah ini adalah dengan mengubah izin default global adduser saat membuat folder beranda pengguna. Cukup edit file /etc/adduser.conf dan modifikasi variabel DIR_MODE menjadi sesuatu yang sesuai, sehingga semua direktori home baru akan menerima izin yang benar.

    Setelah memperbaiki izin direktori menggunakan salah satu teknik yang disebutkan sebelumnya, verifikasi hasilnya menggunakan sintaks berikut:

    ls -ld /home/nama pengguna

    Hasil di bawah ini menunjukkan bahwa izin yang dapat dibaca dunia telah dihapus:

    drwxr-x--- 2 nama pengguna nama pengguna 4096 02-10-2007 20:03 nama pengguna

Kebijakan Kata Sandi

Kebijakan kata sandi yang kuat adalah salah satu aspek terpenting dari postur keamanan Anda. Banyak pelanggaran keamanan yang berhasil melibatkan kekerasan sederhana dan serangan kamus terhadap kata sandi yang lemah. Jika Anda bermaksud menawarkan segala bentuk akses jarak jauh yang melibatkan sistem kata sandi lokal Anda, pastikan Anda memenuhi persyaratan kompleksitas kata sandi minimum, masa pakai kata sandi maksimum, dan audit berkala terhadap sistem autentikasi Anda secara memadai.

Panjang Kata Sandi Minimum

Secara default, Ubuntu memerlukan panjang kata sandi minimal 6 karakter, serta beberapa pemeriksaan entropi dasar. Nilai-nilai ini dikontrol dalam file /etc/pam.d/common-password , yang diuraikan di bawah ini.

kata sandi pam_unix.jadi tidak jelas sha512

Jika Anda ingin menyesuaikan panjang minimum menjadi 8 karakter, ubah variabel yang sesuai menjadi min=8. Modifikasinya diuraikan di bawah ini.

kata sandi pam_unix.so tidak jelas sha512 minlen=8

Pemeriksaan entropi kata sandi dasar dan aturan panjang minimum tidak berlaku untuk administrator yang menggunakan perintah level sudo untuk menyiapkan pengguna baru.

Kedaluwarsa Kata Sandi

Saat membuat akun pengguna, Anda harus membuat kebijakan untuk memiliki usia kata sandi minimum dan maksimum yang memaksa pengguna untuk mengubah kata sandi mereka ketika masa berlakunya habis.

    Untuk melihat status akun pengguna saat ini dengan mudah, gunakan sintaks berikut:

    sudo chage -l nama pengguna

    Output di bawah ini menunjukkan fakta menarik tentang akun pengguna, yaitu tidak ada kebijakan yang diterapkan:

    Perubahan kata sandi terakhir: 20 Jan 2015 Masa berlaku kata sandi: tidak pernah Kata sandi tidak aktif: tidak pernah Masa berlaku akun: tidak pernah Jumlah hari minimum antara perubahan kata sandi: 0 Jumlah hari maksimum antara perubahan kata sandi: 99999 Jumlah hari peringatan sebelum masa berlaku kata sandi habis: 7

    Untuk menetapkan nilai-nilai ini, cukup gunakan sintaksis berikut, dan ikuti petunjuk interaktif:

    sudo ubah nama pengguna

    Berikut ini juga contoh bagaimana Anda dapat secara manual mengubah tanggal kedaluwarsa eksplisit (-E) menjadi 31/01/2015, usia kata sandi minimum (-m) 5 hari, usia kata sandi maksimum (-M) 90 hari, tidak aktif periode (-I) 5 hari setelah masa berlaku kata sandi habis, dan jangka waktu peringatan (-W) 14 hari sebelum masa berlaku kata sandi berakhir:/home/username/.ssh/authorized_keys .

    Hapus atau ganti nama direktori .ssh/ di folder beranda pengguna untuk mencegah kemampuan otentikasi SSH lebih lanjut.

    Pastikan untuk memeriksa koneksi SSH yang dibuat oleh pengguna yang dinonaktifkan, karena mungkin saja mereka sudah memiliki koneksi masuk atau keluar. Bunuh semua yang ditemukan.

    siapa | grep nama pengguna (untuk mendapatkan terminal pts/#) sudo pkill -f pts/#

    Batasi akses SSH hanya pada akun pengguna yang seharusnya memilikinya. Misalnya, Anda dapat membuat grup bernama "sshlogin" dan menambahkan nama grup sebagai nilai yang terkait dengan variabel AllowGroups yang terletak di file /etc/ssh/sshd_config .

    Izinkan Grup sshlogin

    Kemudian tambahkan pengguna SSH yang diizinkan ke grup "sshlogin", dan mulai ulang layanan SSH.

    sudo adduser nama pengguna sshlogin sudo systemctl restart sshd.layanan

    Otentikasi Basis Data Pengguna Eksternal

    Sebagian besar jaringan perusahaan memerlukan otentikasi terpusat dan kontrol akses untuk semua sumber daya sistem. Jika Anda telah mengonfigurasi server Anda untuk mengautentikasi pengguna terhadap database eksternal, pastikan untuk menonaktifkan akun pengguna baik secara eksternal maupun lokal. Dengan cara ini Anda memastikan bahwa otentikasi fallback lokal tidak dimungkinkan.

DI DALAM sistem operasi Linux memiliki banyak fitur keamanan yang hebat, tetapi salah satu yang terpenting adalah sistem izin file. Linux, sebagai pengikut ideologi kernel Linux, tidak seperti Windows, pada awalnya dirancang sebagai sistem multi-pengguna, sehingga hak akses file di Linux dipikirkan dengan sangat baik.

Dan ini sangat penting karena akses lokal ke file untuk semua program dan semua pengguna akan membiarkan virus dengan mudah menghancurkan sistem. Tetapi pengguna baru mungkin menganggap izin file baru di Linux sangat membingungkan, yang sangat berbeda dari apa yang biasa kita lihat di Windows. Pada artikel ini kita akan mencoba memahami cara kerja izin file di Linux, serta cara mengubah dan mengaturnya.

Awalnya, setiap file memiliki tiga parameter akses. Di sini mereka:

  • Membaca- memungkinkan Anda menerima konten file, tetapi tidak mengizinkan penulisan. Untuk sebuah direktori, memungkinkan Anda mendapatkan daftar file dan direktori yang terletak di dalamnya;
  • Catatan- memungkinkan Anda menulis data baru ke file atau mengubah data yang sudah ada, dan juga memungkinkan Anda membuat dan mengubah file dan direktori;
  • Pertunjukan- Anda tidak dapat menjalankan suatu program jika program tersebut tidak memiliki tanda eksekusi. Atribut ini disetel untuk semua program dan skrip; dengan bantuannya sistem dapat memahami bahwa file ini perlu dijalankan sebagai sebuah program.

Namun semua hak ini tidak akan ada artinya jika diterapkan pada semua pengguna sekaligus. Oleh karena itu, setiap file memiliki tiga kategori pengguna yang dapat Anda atur kombinasi hak aksesnya berbeda:

  • Pemilik- seperangkat hak untuk pemilik file, pengguna yang membuatnya, atau sekarang ditetapkan oleh pemiliknya. Biasanya pemilik memiliki semua hak, membaca, menulis dan mengeksekusi.
  • Kelompok- grup pengguna apa pun yang ada di sistem dan dikaitkan dengan file. Namun ini hanya dapat berupa satu grup dan biasanya merupakan grup pemilik, meskipun grup lain dapat ditetapkan ke file tersebut.
  • Istirahat- semua pengguna kecuali pemilik dan pengguna yang termasuk dalam grup file.

Dengan bantuan set izin inilah izin file diatur di Linux. Setiap pengguna hanya dapat memperoleh akses penuh ke file yang mereka miliki atau yang diizinkan untuk mereka akses. Hanya pengguna Root yang dapat bekerja dengan semua file, terlepas dari izin yang ditetapkan.

Namun seiring berjalannya waktu, sistem seperti itu menjadi tidak mencukupi dan beberapa tanda lagi ditambahkan yang memungkinkan Anda membuat file tidak dapat diubah atau menjalankannya sebagai pengguna super, kita akan melihatnya di bawah:

Izin file khusus di Linux

Untuk memungkinkan pengguna biasa untuk menjalankan program atas nama pengguna super tanpa mengetahui kata sandinya, diciptakanlah bit SUID dan SGID. Mari kita lihat lebih dekat kekuatan-kekuatan ini.

  • SUID- jika bit ini disetel, maka ketika program dijalankan, id pengguna yang meluncurkannya diganti dengan id pemilik file. Akibatnya, hal ini memungkinkan pengguna biasa untuk menjalankan program sebagai pengguna super;
  • SGID- bendera ini bekerja dengan cara yang sama, satu-satunya perbedaan adalah bahwa pengguna dianggap sebagai anggota grup tempat file tersebut dikaitkan, dan bukan grup tempat dia sebenarnya berada. Jika flag SGID disetel pada direktori, semua file yang dibuat di dalamnya akan dikaitkan dengan grup direktori, bukan grup pengguna. Perilaku ini digunakan untuk mengatur folder bersama;
  • Sedikit lengket- bit ini juga digunakan untuk membuat folder bersama. Jika sudah terpasang, pengguna hanya dapat membuat, membaca, dan mengeksekusi file, namun tidak dapat menghapus file milik pengguna lain.

Sekarang mari kita lihat cara melihat dan mengubah izin file di Linux.

Cara melihat izin file di Linux

Tentu saja Anda dapat mencari izin file di Linux dengan manajer file. Semuanya mendukung fitur ini, tetapi ini akan memberi Anda informasi yang tidak lengkap. Untuk maksimal Informasi rinci Untuk semua flag, termasuk flag khusus, Anda perlu menggunakan perintah ls dengan parameter -l. Semua file dalam direktori akan dicantumkan dan semua atribut serta bit akan ditampilkan di sana.

Untuk mengetahui haknya file linux jalankan perintah berikut di folder tempat file ini berada:

Tanda hubung bertanggung jawab atas izin file di Linux. Yang pertama adalah jenis file, yang dibahas pada artikel tersendiri. Lalu ada kelompok hak, pertama untuk pemilik, untuk kelompok, dan untuk semua orang. Hanya ada sembilan tanda hubung untuk lisensi dan satu untuk tipe.

Mari kita lihat lebih dekat apa arti nilai kondisional dari bendera hak:

  • --- - tidak ada hak sama sekali;
  • --X- hanya mengeksekusi file sebagai program yang diperbolehkan, tetapi tidak mengubah atau membaca;
  • -w-- hanya menulis dan mengubah file yang diperbolehkan;
  • -wx- modifikasi dan eksekusi diperbolehkan, tetapi dalam kasus direktori, Anda tidak dapat melihat isinya;
  • R--- hak hanya-baca;
  • rx- hanya membaca dan mengeksekusi, tidak ada izin menulis;
  • rw-- hak membaca dan menulis, tetapi tanpa eksekusi;
  • rwx- semua hak;
  • --S- Bit SUID atau SGID diatur, yang pertama ditampilkan di bidang untuk pemilik, yang kedua untuk grup;
  • --T- sticky-bit diinstal, yang berarti pengguna tidak dapat menghapus file ini.

Dalam contoh kita, file test1 memiliki izin program yang khas, pemilik dapat melakukan segalanya, grup hanya dapat membaca dan mengeksekusi, dan semua orang hanya dapat mengeksekusi. Untuk test2, flag SUID dan SGID juga disetel. Dan untuk folder test3 Sticky-bit diinstal. File test4 tersedia untuk semua orang. Sekarang Anda tahu cara melihat hak atas file linux.

Cara mengubah izin file di Linux

Untuk mengubah izin file di Linux Anda dapat menggunakan utilitas chmod. Ini memungkinkan Anda untuk mengubah semua bendera, termasuk yang khusus. Mari kita lihat sintaksnya:

$ chmod options kategori file bendera tindakan

Pilihan tidak akan menarik minat kita sekarang, kecuali mungkin hanya satu. Dengan opsi -R Anda dapat memaksa program untuk menerapkan perubahan pada semua file dan direktori secara rekursif.

  • kamu- pemilik file;
  • G- grup file;
  • Hai- pengguna lain.

Tindakannya dapat berupa salah satu dari dua hal, menambahkan tanda “+”, atau menghapus tanda “-”. Adapun hak aksesnya sendiri mirip dengan keluaran utilitas ls: r - baca, w - tulis, x - eksekusi, s - suid/sgid, bergantung pada kategori yang Anda atur, t - set lengket -sedikit. Misalnya, semua pengguna memiliki akses penuh ke file test5:

chmod ugo+rwx test5

Atau kami akan mengambil semua hak dari grup dan pengguna lain:

chmod go-rwx test5

Mari beri grup hak untuk membaca dan mengeksekusi:

chmod g+rx tes5

Untuk pengguna lain hanya baca:

Untuk file test6, atur SUID:

Dan untuk test7 - SGID:

Mari kita lihat apa yang terjadi:

Seperti yang Anda lihat, mengubah izin file di Linux sangat sederhana. Selain itu, Anda dapat mengubah hak dasar menggunakan pengelola file.

kesimpulan

Itu saja, sekarang Anda tidak hanya tahu apa saja izin file di Linux, tetapi juga cara melihatnya, dan bahkan cara mengubahnya. Ini adalah topik yang sangat penting yang harus dipahami oleh pemula agar dapat menggunakan sistem mereka secara lebih maksimal. Jika Anda memiliki pertanyaan, tanyakan di komentar!

Sebagai penutup, saya ingin menawarkan video bagus tentang hak akses di Linux:

Sekarang mari kita bahas sedikit tentang membedakan hak akses ke berbagai elemen. Mekanisme yang dijelaskan dalam artikel ini sangat mendasar di Linux dan, oleh karena itu, di Ubuntu, jadi bacalah dengan cermat.

Pengguna dan grup

Linux pada umumnya dan Ubuntu pada khususnya adalah sistem multi-pengguna, yaitu. mungkin ada beberapa di satu komputer pengguna yang berbeda, masing-masing memiliki pengaturan, data, dan hak aksesnya sendiri ke berbagai fungsi sistem.

Selain pengguna di Linux, ada kelompok yang membedakan hak. Setiap grup, seperti halnya pengguna individu, memiliki seperangkat hak akses tertentu ke berbagai komponen sistem, dan setiap pengguna anggota grup ini secara otomatis menerima semua hak grup. Artinya, grup diperlukan untuk mengelompokkan pengguna berdasarkan prinsip persamaan kewenangan untuk melakukan tindakan apa pun, misalnya tautologi. Setiap pengguna dapat menjadi anggota grup dalam jumlah tidak terbatas dan setiap grup dapat memiliki pengguna sebanyak yang diinginkan.

Misalnya, Ubuntu punya satu yang sangat kelompok yang bermanfaat: admin. Setiap anggota grup ini menerima hak administratif tanpa batas. Saya sudah membahas tentang peran administrator di Ubuntu, jadi jika Anda lupa siapa dia, Anda bisa menyegarkan pengetahuan Anda. Dibuat kapan menginstal Ubuntu pengguna secara otomatis menjadi anggota grup admin.

Anda dapat mengelola pengguna dan grup menggunakan alat khusus terletak di menu Sistem→Administrasi→Pengguna dan grup.

Secara umum, area utama penerapan mekanisme pengguna dan grup bukanlah pembatasan akses ke berbagai fungsi sistem, melainkan pembatasan akses ke file di hard drive. Inilah yang akan saya coba bicarakan lebih lanjut.

Izin di Linux

Setiap file dan direktori di Linux memiliki pengguna pemilik dan grup pemilik. Artinya, file dan direktori apa pun milik beberapa pengguna sistem dan beberapa grup. Selain itu, setiap file dan direktori memiliki tiga grup izin: satu untuk pengguna pemilik, satu untuk anggota grup pemilik, dan satu untuk semua pengguna lain di sistem. Setiap kelompok terdiri dari hak untuk membaca, menulis, dan mengeksekusi suatu file. Untuk direktori, eksekusi dan baca selalu berjalan bersamaan dan memiliki arti yang sama.

Artinya, dengan mengubah pemilik file tertentu dan berbagai kelompok hak aksesnya, Anda dapat mengontrol akses ke file ini secara fleksibel. Misalnya, dengan menjadikan diri Anda pemilik suatu file dan sepenuhnya menolak akses ke file tersebut kepada semua orang kecuali pengguna pemilik, Anda dapat menyembunyikan konten dan mencegah semua pengguna lain mengubah file tersebut. Hal yang sama juga terjadi pada katalog. Anda dapat, misalnya, melarang penulisan file ke direktori, atau bahkan menyembunyikan isinya dari pengintaian.

DI DALAM saat ini Kami tertarik pada satu konsekuensi yang sangat penting dari pengorganisasian hak akses dalam sistem. Pengguna Ubuntu tertentu hanya memiliki direktori home dan semua isinya. Pada sistem, direktori ini terletak di /home/nama pengguna. Semua file sistem lainnya, termasuk semua aplikasi, pengaturan sistem, dll., yang terletak di luar /home , terutama dimiliki oleh root . Ingat, saya mengatakan bahwa root adalah pengguna dengan hak tidak terbatas, yang tidak diperbolehkan untuk digunakan secara langsung di Ubuntu. Jadi, semua file dan direktori sistem adalah milik root karena suatu alasan; semuanya memiliki hak modifikasi hanya untuk pengguna pemilik, jadi tidak ada seorang pun kecuali root yang dapat mengganggu pengoperasian sistem dan mengubah apa pun di file sistem.

Hal ini tentu saja sangat baik untuk keamanan, namun bagaimana jika Anda perlu mengubah beberapa file sistem? Ada dua cara: pertama, mayoritas diperlukan bagi pengguna pengaturan sistem dapat diubah dengan hak administrator dari konfigurator grafis, ini adalah metode yang paling disukai. Dan kedua, Anda dapat meningkatkan hak root untuk sementara dan melakukan apa pun yang Anda inginkan.

Hal ini dilakukan dengan menggunakan utilitas sudo dan turunannya. sudo adalah utilitas konsol. Ini memungkinkan Anda untuk "berpura-pura" menjadi root ketika menjalankan perintah tertentu, sehingga mendapatkan hak tak terbatas. Misalnya perintah

Pembaruan bakat Sudo

akan memperbarui data tentang aplikasi yang tersedia untuk Anda (saya akan menjelaskan mengapa ini diperlukan di artikel tentang manajemen program). Tim itu sendiri

Pembaruan bakat

hanya berfungsi jika dijalankan oleh root. Namun, dengan menjalankannya menggunakan sudo, Anda meniru root tanpa menjadi root. Tentu saja, Anda harus memiliki hak administrator untuk menggunakan sudo. Pada saat yang sama, ketika Anda menjalankan perintah melalui sudo, sistem akan menanyakan kata sandi Anda, tetapi untuk tujuan keamanan, ketika Anda memasukkannya, tidak ada yang akan ditampilkan kepada Anda, tidak ada bintang, tidak ada tanda hubung, tidak ada burung, tidak ada apa pun. Jangan khawatir, memang seharusnya begitu, ketik saja sampai akhir dan tekan Enter. Jika Anda seorang administrator dan telah memasukkan kata sandi dengan benar, perintah yang ditentukan setelah sudo akan dijalankan sebagai root.

Anda dapat melakukan apa saja melalui terminal, jadi dengan kemampuan menjadi root Anda dapat melakukan semua pengaturan yang Anda perlukan. Namun, terkadang nyaman digunakan aplikasi grafis, sambil memiliki hak root. Misalnya, jika Anda perlu menyalin file ke direktori sistem. Untuk menjalankan aplikasi grafis sebagai root, buka dialog peluncuran GNOME dengan Tombol alternatif+ F2 dan masuk

Nama_aplikasi Gksudo

Misalnya, untuk meluncurkan pengelola file Nautlus, Anda harus masuk

Gksudo nautilus

Melalui Nautilus yang diluncurkan dengan cara ini, Anda dapat mengubah file apa pun di komputer Anda sesuka Anda.

Berhati-hatilah saat menggunakan Nautilus dengan hak root! Anda dapat menghapusnya secara permanen berkas sistem, yang dapat dengan mudah menyebabkan tidak dapat dioperasikannya seluruh sistem.

Mengedit file konfigurasi

Contoh paling penting dari penggunaan teknologi "berpura-pura menjadi" root yang dijelaskan di atas adalah mengedit file konfigurasi sistem. Saya sudah mengatakan bahwa semua pengaturan sistem dan semua aplikasi di Linux disimpan sebagai file teks. Jadi, Anda hanya dapat mengedit file milik Anda, yaitu hanya pengaturan yang berkaitan dengan pengguna Anda. Dan untuk mengedit parameter sistem, Anda memerlukan hak administrator.

Anda akan dapat membuka banyak file, tetapi Anda tidak akan dapat mengubah apa pun di dalamnya; Anda tidak akan memiliki akses ke operasi penyimpanan:

Tentu saja, Anda dapat membuka file konfigurasi dengan hak root melalui dialog peluncuran aplikasi dengan perintah

Gksudo gedit /path/ke/file

Gedit adalah editor teks standar Ubuntu.

Namun, pelengkapan otomatis tidak berfungsi pada dialog peluncuran, jadi Anda harus memasukkan jalur ke file secara manual, yang tidak selalu nyaman. Oleh karena itu, Anda dapat menggunakan terminal untuk meluncurkan editor teks sebagai pengguna super, misalnya:

Harap dicatat bahwa sudo adalah utilitas konsol murni, jadi Anda tidak dapat menggunakannya dalam dialog peluncuran aplikasi, meskipun Anda dapat meluncurkan aplikasi grafis dari terminal melaluinya. Sebaliknya, gksudo adalah utilitas grafis, jadi tidak boleh digunakan di terminal, meskipun hal ini tidak dilarang.

Hasilnya, editor akan terbuka dengan kemampuan untuk menyimpan perubahan.



 


Membaca:



Cara mengatur melodi Anda ke kontak yang diinginkan pada smartphone Nokia X2 dengan dua kartu SIM

Cara mengatur melodi Anda ke kontak yang diinginkan pada smartphone Nokia X2 dengan dua kartu SIM

ibnlive.in.com Bagaimana cara menyetel melodi di Nokia Lumia? Orang-orang menanyakan pertanyaan ini segera setelah membeli telepon. Lagi pula, biasanya, di semua zaman modern...

Program gratis untuk Windows diunduh secara gratis

Program gratis untuk Windows diunduh secara gratis

Microsoft .NET Framework dirancang untuk program yang berjalan pada arsitektur ".NET". Versi pertamanya dirilis pada tahun 2002 sebagai analog...

Cara membakar image ISO apa pun ke USB flash drive

Cara membakar image ISO apa pun ke USB flash drive

Halo teman teman! Hari ini kita akan membahas lagi tentang membuat flash drive USB yang dapat di-boot. Bagaimana cara membuat perangkat USB yang dapat di-boot? Untuk tujuan apa itu harus digunakan...

Panggilan dari nomor tak dikenal

Panggilan dari nomor tak dikenal

Baru-baru ini di Rusia, pengguna menemukan jenis "spam" baru, di mana pelanggan terus-menerus dipanggil dan dikeluarkan dari alamat yang tidak diketahui...

gambar umpan RSS