Я люблю 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 Користувач). В основному є спосіб зберегти здатність системного адміністрування, але обмежити доступ до деяких системних файлів.
visudo
file (як кореневий типvisudo
) додати групу, щоб дозволити конкретні команди sudo. Це принаймні трохи потрапляє туди. Це не попереджає вас, що ви збираєтеся зробити щось нерозумне, але я думаю, якщо вам буде запропоновано ввести пароль для запуску команди, ви повинні переконатися, що ви знаєте, що він робить.