Siapa yang mendapat akses root?

8

Saya sedang mengerjakan aplikasi web yang menangani beberapa data sensitif. Kami semakin ketat dalam hal keamanan, dan menyusun kebijakan untuk mengunci akses ke mesin, dan mencatat semuanya untuk tujuan audit teknis.

Pertanyaan yang terus kami kemukakan adalah: Siapa yang berakar?

Contoh server kami akan memiliki pengguna root. Pengguna root itu akan memiliki kata sandi. Siapa yang seharusnya memiliki akses ke ini? Apakah mungkin / diinginkan untuk memiliki mesin di mana tidak ada yang dapat memiliki akses root?

Saya menghargai pemikiran Anda tentang masalah ini.

Ross McFarlane
sumber
Ini menarik perhatian saya. Sepertinya latihan yang bagus.
Ross McFarlane

Jawaban:

14

Tidak ada Buat mereka digunakan sudosehingga semua perintah tingkat root dicatat dan dikaitkan dengan orang tertentu.

ceejayoz
sumber
6
+1. Ubah kata sandi root menjadi sesuatu yang sangat acak, cetak dan segel dalam amplop untuk penggunaan darurat saja.
EEAA
4
juga, ubah akun root .bashrc Anda sehingga PROMPT_COMMAND disetel untuk mencatat semuanya sebagai pengguna root biasa ke syslog. Berguna.
Sirex
1
pengguna dapat menggunakan sudo untuk menjalankan shell, maka perintah tidak akan masuk (hanya login bash)
ooshro
benar, kecuali mereka "sudo bash -l" - yang seharusnya. jika Anda mengatur root .bashrc prompt_command itu akan mencatat ini juga, yang merupakan salah satu alasan nilainya dilakukan.
Sirex
+1 Juga, pastikan untuk mengatur sudo untuk tingkat akses yang lebih tinggi. Di satu tempat, semua kata sandi root disimpan dalam amplop tertutup hanya untuk alasan berjaga-jaga, jika segel rusak harus dilaporkan untuk keamanan dan kata sandi diubah.
st3v3o
3

Tidak seorang pun kecuali mungkin administrator perangkat keras mendapatkan kata sandi root! Kata sandi root seharusnya hanya dapat digunakan di konsol, bukan melalui SSH atau layanan lainnya.

Gunakan grup untuk menentukan akses ke set program yang berbeda dengan peningkatan prioritas menggunakan sudo. Misalnya grup roda biasanya untuk orang yang mendapatkan root privat, tetapi semuanya dicatat sebagai pengguna mereka. Jika orang tidak memerlukan privat root penuh tetapi hanya beberapa perintah seperti beberapa pengguna lain, buat grup lain.

Caleb
sumber
-1

Jika Anda menggunakan dan menggunakan selinux, mungkin untuk menghapus akun dewa "semua yang melihat, semua yang tahu" yang merupakan pengaturan root normal, dan mengubahnya menjadi akun yang lebih memperhatikan keamanan.

Sirex
sumber
1
bagaimana? Jawabannya tidak benar-benar berguna asalkan tidak memberikan petunjuk bagaimana;)
0xC0000022L
Ini topik yang terlalu besar untuk ditampung dalam satu jawaban. Namun setahu saya selinux dapat (dan sering) digunakan untuk tujuan ini.
Sirex
-5

Pendapat saya adalah bahwa orang tidak boleh menjalankan perintah yang membutuhkan izin root, kecuali tentu saja ketika mereka benar-benar masuk sebagai root.

Saya akan merekomendasikan menggunakan su (beralih ke root pengguna) daripada sudo (sementara meningkatkan izin ke level root untuk satu perintah) karena alasan ini. Jika mereka membutuhkan izin root, buat perubahan ke pengguna root.

Pertanyaan saya adalah, apa yang pengguna Anda lakukan yang menurut mereka perlu di-root?

pengguna76897
sumber
4
@ user76897: Saya tidak setuju. sudosangat cocok untuk tujuan tersebut dan mencatat setiap perintah yang dikeluarkan langsung dengan sudoprepended. Di mana, ketika su digunakan, Anda mendapatkan shell dan tidak ada di dalam shell yang dicatat. /etc/sudoersdapat disetel sangat banyak. Anda dapat mengetahui perintah mana yang dapat dieksekusi sebagai pengguna apa oleh pengguna apa dan apakah perlu kata sandi atau tidak, ditambah sejumlah opsi bermanfaat lainnya. Salah satu alasan seseorang mungkin membutuhkan root adalah untuk me-restart daemon. Ini mudah dicapai dengan sudotanpa memberikan akses penuh ke akun root.
0xC0000022L
Jawaban ini tidak masuk akal atau menjawab pertanyaan. Preferensi suover sudotidak dipertahankan dan, menurut sebagian besar suara lain di sini, sebenarnya akan menjadi bagian dari masalah asli orang, bukan solusi.
Caleb