Memahami beberapa poin tentang hak akses root

3

Saya hanya ingin mengkonfirmasi pemahaman saya tentang beberapa hal yang berkaitan dengan root privilege. Benarkah itu:

  • Nama pengguna "administrator" bukan nama yang dilindungi undang-undang dengan hak istimewa tersirat, itu hanya nama pengguna dan saya dapat menggunakannya tanpa secara tidak sengaja mengalahkan keamanan yang melekat?
  • Efek menggunakan perintah SU di terminal terbatas pada aktivitas dalam sesi terminal itu. Misalnya, menjadi root di sesi terminal itu tidak akan mem-bypass permintaan kata sandi dalam aplikasi bersamaan yang diluncurkan dari, katakanlah, menu aplikasi, atau beri saya hak istimewa root jika saya secara bersamaan membuka sesi terminal lain.

Juga, perintah apa yang akan memberitahu saya apakah saya saat ini memiliki hak akses root?

fixer1234
sumber
whoamiakan memberi tahu Anda pengguna saat ini dan memberi tahu Anda apakah Anda pengguna biasa atau pengguna root.
Ramesh
Terima kasih. Saya mencobanya dan yang saya lihat hanyalah nama pengguna saya. Apa yang menunjukkan apakah saya pengguna normal atau pengguna root?
fixer1234
@ fixer1234: Anda akan melihat rootapakah Anda adalah pengguna root.
chrk
Apakah saya hanya "satu pengguna" sekaligus? Saya tidak mewarisi hak root untuk nama pengguna saya (muncul sebagai nama pengguna dan root), saya berhenti menjadi nama pengguna dan menjadi root (hanya root yang muncul)?
fixer1234
Hanya menjawab komentar saya sendiri dengan bereksperimen, yang juga mengkonfirmasi peluru kedua.
fixer1234

Jawaban:

1

Nama pengguna "administrator" bukan nama yang dilindungi undang-undang dengan hak istimewa tersirat, itu hanya nama pengguna dan saya dapat menggunakannya tanpa secara tidak sengaja mengalahkan keamanan yang melekat?

Anda mendapatkan hak akses root dengan memiliki nomor ID pengguna 0. Jika "administrator" pengguna memiliki nomor ID yang berbeda, itu hanya akan menjadi pengguna biasa

Efek menggunakan perintah SU di terminal terbatas pada aktivitas dalam sesi terminal itu.

Efeknya adalah untuk shell yang dihasilkan oleh su(atau perintah apa pun yang dijalankan dengan -copsi). Dan setiap proses yang merupakan keturunan dari shell / perintah itu akan mempertahankan hak-hak istimewa tersebut (kecuali jika mereka secara eksplisit menjatuhkannya).

Juga, perintah apa yang akan memberitahu saya apakah saya saat ini memiliki hak akses root?

idakan memberi tahu Anda pengguna / grup yang Anda jalankan, ditambah nomor ID pengguna / grup. Jika nomor ID untuk pengguna adalah 0, Anda memiliki hak akses root.

Matthew Cline
sumber
3

Nama "administrator" berasal dari dunia Windows. Di dunia Unix, "administrator sistem" adalah deskripsi pekerjaan, tetapi "administrator" tidak berarti sesuatu yang istimewa sehubungan dengan akun.

Tidak seperti Windows, akun Unix secara intrinsik tidak memiliki hak istimewa. Hak istimewa dalam akun diberikan oleh file yang dapat mereka akses, dengan perintah setuid yang dapat mereka jalankan, dengan aturan sudo yang mereka boleh gunakan, oleh kebijakan SELinux yang berlaku, dll. Ini dapat diberikan langsung kepada pengguna, atau ke grup yang menjadi milik pengguna.

Ada satu pengecualian: akun yang ID penggunanya 0 mendapat banyak izin tambahan (pada dasarnya, izin untuk melakukan apa saja). Akun ini secara konvensional disebut root(akan mungkin untuk menggunakan nama lain, sejauh menyangkut kernel, karena kernel tidak tahu tentang nama pengguna, tetapi itu akan merusak banyak perangkat lunak yang berhubungan dengan administrasi).

Akun root tidak dimaksudkan untuk pengguna untuk masuk ke dalam operasi normal. Ini akun sistem. Administrator hanya menjalankan perintah sebagai root untuk melakukan tugas konfigurasi sistem, bukan untuk melakukan pekerjaan lain. Administrator mungkin login sebagai root kadang-kadang untuk melakukan instalasi atau perbaikan sistem, tetapi tidak akan menggunakan akun root untuk tugas-tugas yang tidak terkait sistem seperti browsing web dan email, mereka akan menggunakan akun pribadi mereka untuk itu.

Secara informal, akun administrator adalah akun pengguna yang dapat menjalankan perintah sebagai root. Seringkali ini dilakukan melalui sudo , sebuah program yang memungkinkan pengguna untuk menjalankan perintah sebagai pengguna lain (termasuk root) jika mereka diizinkan untuk melakukannya dengan konfigurasi sudo.

Hak istimewa terkait dengan suatu proses dan diwarisi oleh proses anak mereka. Ketika Anda menjalankan suatu proses dengan hak istimewa yang ditinggikan (misalnya melalui suatau sudo), hanya proses itu dan proses yang dimulai memiliki hak yang lebih tinggi. Sisa sesi tidak terpengaruh.

Gilles
sumber