Я люблю Linux і все, за що вона виступає; проте, на жаль, я виріс у Windows. Таким чином, я вивчив дуже погані практики (такі, як влада NT захищатиме мене). У мене є кілька Linux VPS для особистих і освітніх цілей, і я керую всіма ними з командного рядка. Завдяки управлінню цими серверами я вивчив дуже болючі уроки влади користувача Root. Як от:
- rm -d -R / *
- chown www-user: www-user -R / *
- І т.д.
Я лише двічі видалив кореневий каталог, але тільки минулого тижня я змінив дозвіл всього диска - ефективно блокуючи корінь.
Тепер я знаю, що я ніколи не повинен бути зареєстрований як Root, але більшу частину часу я повинен мати справу з файлами, які володіє тільки Root, тому я sudo і запустити команду.
Тому моє питання полягає в тому, чи є спосіб підказати користувачеві (який є root або sudo'ed), коли потенційно небезпечна команда виконується, щоб користувач міг переглянути своє рішення? Можливо через сценарії в Bash, або інший sudo wrapper.
Або (я прошу, сподіваюся, і дуже спрощена) чи є спосіб налаштувати дозволи, де замість дворівневої системи користувача (користувач Root, звичайний користувач) існує трирівнева система, як у Windows (NT Authority, Administrator, Other Користувач). В основному є спосіб зберегти здатність системного адміністрування, але обмежити доступ до деяких системних файлів.
visudofile (як кореневий типvisudo) додати групу, щоб дозволити конкретні команди sudo. Це принаймні трохи потрапляє туди. Це не попереджає вас, що ви збираєтеся зробити щось нерозумне, але я думаю, якщо вам буде запропоновано ввести пароль для запуску команди, ви повинні переконатися, що ви знаєте, що він робить.