Dalam konteks mekanisme kontrol akses diskresioner (DAC), akses ke sumber daya sistem, file, dan direktori, didasarkan pada identitas pengguna dan grup tempat mereka menjadi anggota. Jenis kontrol akses ini disebut "discretionary" karena pengguna dapat melakukan keputusan kebijakannya sendiri (dibatasi oleh izinnya sendiri, tentu saja). Dalam tutorial ini kita akan melihat cara menambahkan pengguna ke grup dan apa perbedaan antara grup primer dan sekunder pada sistem Linux RHEL 8 / CentOS 8.
Dalam tutorial ini Anda akan mempelajari:
- Apa perbedaan antara kelompok primer dan sekunder
- Cara menambahkan pengguna ke grup dengan menggunakan perintah usermod
- Cara menambahkan pengguna ke grup secara langsung dengan vigr
Bagaimana cara menambahkan pengguna ke grup di Rhel8
Persyaratan dan Konvensi Perangkat Lunak yang Digunakan
Kategori | Persyaratan, Konvensi, atau Versi Perangkat Lunak yang Digunakan |
---|---|
Sistem | RHEL 8 / CentOS 8 |
Perangkat Lunak | Tidak diperlukan software khusus untuk mengikuti tutorial ini |
Lainnya | Izin untuk menjalankan perintah dengan hak akses root. |
Konvensi | # – membutuhkan perintah linux yang diberikan untuk dieksekusi dengan hak akses root baik secara langsung sebagai pengguna root atau dengan menggunakan sudo perintah$ – membutuhkan perintah linux yang diberikan untuk dieksekusi sebagai pengguna biasa yang tidak memiliki hak istimewa |
Apa itu grup?
Linux, yang didasarkan pada Unix, adalah OS multi-pengguna:banyak pengguna memang ada dan berbagi sumber daya dalam sistem pada saat yang bersamaan. Pada tingkat yang paling sederhana, akses ke sumber daya ini dikelola dengan menggunakan DAC
(kontrol akses diskresioner) model. Akses ke file dan direktori, misalnya, didasarkan pada identitas pengguna dan pada groups
dia adalah anggota. Dalam tutorial ini kita akan melihat cara menambahkan pengguna ke grup yang ada di mesin Red Hat Enterprise Linux 8.
Grup primer dan sekunder
Saat ini, Red Hat, seperti hampir semua distro linux besar lainnya menggunakan skema yang disebut UPG
, atau Grup Pribadi Pengguna:setiap kali pengguna baru dibuat, secara otomatis grup baru dengan nama pengguna yang sama juga dibuat, dan pengguna menjadi anggota tunggalnya. Inilah yang disebut primary
atau private
grup.
Setiap pengguna memiliki grup utama sendiri, dinamai menurut namanya sendiri, tanpa anggota lain. Pengaturan ini memungkinkan untuk mengubah umask
default nilai:biasanya 022
(ini berarti 644
izin untuk file dan 755
untuk direktori), sekarang biasanya disetel ke 002
(664
izin untuk file dan 775
untuk direktori).
Karena, secara default, setiap file atau direktori yang dibuat oleh pengguna dibuat dengan grup utama pengguna tersebut, pengaturan ini, sambil menjaga keamanan (pengguna masih dapat memodifikasi hanya filenya sendiri), menyederhanakan berbagi sumber daya dan kolaborasi antara pengguna yang menjadi anggota grup yang sama ketika bit setgid digunakan, dengan mengizinkan izin menulis untuk grup tersebut.
Kita dapat memperoleh daftar grup tempat pengguna menjadi anggota, dengan menggunakan groups
perintah:
$ groups egdoc wheel
Seperti yang dapat kita amati dari output perintah, pengguna saat ini, egdoc, termasuk dalam egdoc
grup, yang merupakan grup utamanya sendiri, dan ke wheel
group, yang membuatnya dapat menjalankan perintah dengan sudo
, dan apa yang disebut secondary group
:grup opsional yang tidak terkait dengan pengguna secara default.
Tambahkan pengguna ke grup dengan menggunakan usermod
Sementara pengguna adalah satu-satunya anggota grup utamanya, kami mungkin ingin menambahkan pengguna ke grup sekunder, mungkin untuk memberinya akses ke beberapa jenis sumber daya. Katakanlah misalnya kita memiliki test
pengguna, dan kami ingin menambahkannya ke grup yang ada linuxconfig
:cara termudah dan direkomendasikan untuk menyelesaikan tugas ini adalah dengan menggunakan usermod
perintah:
$ sudo usermod -a -G linuxconfig test
Mari kita periksa opsi yang kita gunakan. usermod
utilitas, mari kita ubah akun pengguna; dengan menggunakannya, kami dapat melakukan berbagai operasi, seperti mengubah direktori beranda pengguna, menetapkan tanggal kedaluwarsa untuk akunnya, atau segera menguncinya. Perintah mari kita juga menambahkan pengguna ke grup yang ada. Opsi yang kami gunakan dalam hal ini adalah -G
(kependekan dari --groups
) dan -a
, (yang merupakan kependekan dari --append
).
Opsi -G atau –groups memungkinkan kami memberikan daftar grup tambahan yang dipisahkan koma yang harus menjadi anggota pengguna. Seperti yang kami katakan sebelumnya, setiap grup yang disediakan harus sudah ada di sistem. Satu hal yang sangat penting untuk diingat adalah bahwa daftar grup yang disediakan ditafsirkan secara berbeda apakah -a
opsi juga disediakan atau tidak:dalam kasus pertama, daftar tersebut ditafsirkan sebagai grup tambahan yang harus ditambahkan pengguna selain grup yang sudah menjadi anggotanya; ketika -a
opsi tidak disediakan, sebaliknya, daftar tersebut ditafsirkan sebagai daftar absolut grup yang harus menjadi anggota pengguna. Seperti yang dinyatakan dalam halaman manual perintah, dalam kasus terakhir, jika pengguna saat ini adalah anggota grup yang bukan bagian dari daftar yang disediakan untuk perintah, itu akan dihapus dari grup itu!
Pengguna "test" sekarang menjadi anggota grup "linuxconfig". Mari kita verifikasi:
$ sudo groups test test : test linuxconfig
Tambahkan pengguna ke grup secara langsung
Menggunakan usermod
adalah cara termudah untuk menambahkan pengguna ke grup. Demi kelengkapan, sekarang kita akan memeriksa cara lain untuk melakukan tugas yang sama dengan menggunakan vigr
perintah linux. Perintah ini mari kita edit /etc/group
dan /etc/gshadow
file secara langsung, juga menguncinya saat dibuka, untuk mencegah kerusakan dan memastikan konsistensi.
Versi "bayangan" dari file (/etc/gshadow) dimodifikasi hanya jika -s
opsi digunakan. Untuk menambahkan pengguna "test" ke grup "linuxconfig" dengan metode ini, kita harus menjalankan vigr
perintah sebagai pengguna super:/etc/group
file akan dibuka di editor default (biasanya vi):
[...] chrony:x:993: egdoc:x:1000: cgred:x:992: docker:x:991: apache:x:48: test:x:1001:test linuxconfig:x:1002: [...]
Sintaks yang digunakan untuk mewakili setiap grup adalah sebagai berikut:
group-name:group-password:group-id:users
Kolom dipisahkan oleh titik dua:yang pertama adalah nama grup, yang kedua adalah "kata sandi" grup (yang biasanya tidak disetel) dan yang ketiga adalah GID
atau grup-id. Bidang terakhir adalah daftar anggota grup yang dipisahkan koma. Untuk menambahkan user “test” kita ke grup “linuxconfig”, kita harus memodifikasi field ini, sehingga barisnya menjadi:
linuxconfig:x:1002:test
Setelah perubahan dilakukan, kita dapat menyimpan dan menutup file. Sebuah pesan akan muncul di terminal:
You have modified /etc/group. You may need to modify /etc/gshadow for consistency. Please use the command 'vigr -s' to do so.
Karena kami mengubah /etc/group
file, pesan tersebut menyarankan kita untuk mengubah juga file bayangan terkait, yaitu /etc/gshadow
. Bagi Anda yang tidak tahu, file bayangan, digunakan untuk menyimpan informasi versi terenkripsi yang tidak akan aman untuk disimpan dalam bentuk teks biasa. Misalnya, seperti yang kita lihat sebelumnya, sebuah x
dilaporkan dalam /etc/group
file, sebagai pengganti kata sandi grup opsional; versi hash dari kata sandi, jika ada, akan disimpan dalam file bayangan.
Sekarang, mari kita buat perubahan yang sama seperti yang kita lakukan sebelumnya, pada /etc/gshadow
file, sehingga sinkron dengan /etc/group
. Yang harus kita lakukan, adalah memberikan -s
tandai ke vigr
perintah:
$ sudo vigr -s
Setelah file dibuka, kami membuat perubahan yang diperlukan:
linuxconfig:!::test
Setelah itu, kita harus memaksa penulisan file ini, karena bersifat read-only:saat menggunakan vi
, kita dapat melakukannya dengan menjalankan w!
perintah.
Cara alternatif untuk menjaga kedua file tetap sinkron, adalah dengan menggunakan grpconv
perintah, yang membuat /etc/gshadow
file dari /etc/group
, dan secara opsional dari /etc/gshadow
yang sudah ada berkas:
$ sudo grpconv
Pada titik ini, kami dapat memverifikasi konsistensi antara dua file dengan menjalankan:
$ sudo grpck
Tidak ada keluaran yang ditampilkan pada saat ini.
Kesimpulan
Dalam tutorial ini kita melihat perbedaan antara grup primer dan sekunder dan apa perannya dalam DAC
model. Kami melihat bagaimana kami dapat menambahkan pengguna ke grup dengan menggunakan usermod
perintah, yang merupakan cara yang disarankan, atau langsung dengan menggunakan vigr
perintah dengan aman mengedit /etc/group
dan /etc/gshadow
file. Prosedur apa pun yang Anda putuskan untuk digunakan untuk melakukan tugas administratif ini, Anda harus selalu memberikan perhatian maksimal.