Jangan biarkan pengguna reboot saat root login

9

Di sistem saya pengguna dapat reboot dan mematikan sistem. Dari waktu ke waktu saya perlu memperbarui perangkat lunak (atau melakukan hal lain) dan saya tidak ingin pengguna me-reboot / mematikan sistem sampai saya selesai.

Apakah ada cara untuk mencegah sistem me-reboot / mematikan ketika root login (lokal atau melalui SSH)?

Tak berguna
sumber
Bagaimana Anda mencegah orang menggunakan metode brute force?
Bernhard
@ Bernhard mungkin sesuatu dengan/etc/acpi/powerbtn.sh
PMint

Jawaban:

11

Coba Molly guard:

$ sudo apt-get install molly-guard

Paket ini akan mencegah shutdown / reboot / suspend / hibernate yang tidak diinginkan dengan secara interaktif meminta Anda untuk memasukkan nama host sistem.

Namun, itu sepele untuk mengkonfigurasi molly-guard untuk sepenuhnya menonaktifkan shutdown / reboot / suspend / hibernate. Cukup buat file yang dapat dieksekusi di /etc/molly-guard/run.d/99-prevent-all yang memiliki ini di dalamnya:

#!/bin/sh
exit 1

(Anda tidak menyebutkan OS, ini untuk Ubuntu).

Sejarah

Jika Anda penasaran istilah molly-guard adalah apa yang disebut penutup tombol merah. Lihat artikel wikipedia di Tombol Merah Besar jika Anda penasaran.

kutipan

Big Red Switch sering menyertakan molly-guard, penutup yang harus diangkat untuk trip switch. Penjaga molly asli dibuat juri dari Plexiglas untuk mencegah anak perempuan programmer, Molly, menekan BRS pada server IBM 4341, setelah dia melakukannya dua kali dalam satu hari.

Distro lainnya

Anda dapat mengambil .debpaket dan menggunakannya alienuntuk mengubahnya menjadi RPM yang cocok untuk Fedora / RHEL / CentOS.

$ sudo yum install alien
$ alien -r molly-guard*.deb
PMint
sumber
1
+1 tidak pernah mendengar alat ini, akan menginstalnya di beberapa server 8-).
slm
1
Alat yang sangat rapi. Demi pertanyaan dan kelengkapan khusus, dapat menentukan .bashrc / .bash_logout root untuk mengaktifkan / menonaktifkan semua-berhenti. Suatu persyaratan dalam skrip molly-guard yang memeriksa UID! = 0 mungkin juga sesuai.
Joshua Miller