Що не так із використанням судо?


37

У коментарі тут мені сказали, що зайвого використання sudoслід уникати. Хоча в цьому конкретному випадку він не був потрібний, я не бачу шкоди в його використанні.

Я думаю, що при виконанні тривіальних програм, таких catяк використання root sudo, загальний ризик потрапити на помилку, яка якось погіршить безпеку системи, дуже низька.

Тож може хтось, будь ласка, вказати на можливі наслідки, окрім введення ще 4 символів та пробілу?


12
"Зауважте, що якщо я можу змусити вас" щось сказати ", просто запитавши, у вас є дуже серйозна проблема безпеки у вашій системі, і ви повинні розглянути це". (Автор Пол Віксі, нотатки про встановлення vixie-cron 3.0.1)

8
Вікі спільноти також говорить: "Ви можете неправильно ввести команду та знищити систему"
Pandya

3
Пишучи це запитання, я ненавмисно забув виключити погану свідомість або повністю дурити, вибачте за це. Будучи людиною, яка користується Linux з 14 років, мені здалося очевидним, що при виконанні команд, що використовують sudoабо як root, ви повинні проявляти обережність і насправді знати, що ви робите, і перевіряти, що ви вводите. Я хотів видалити питання, але я усвідомлюю, що цей Q / A допомагає користувачам з меншим досвідом, тому я просто дозволю йому стояти.
січня


5
sudo rm -rf /<accidental enter>Отримати картину?
jpmc26

Відповіді:


70

Ризик помилки помилок більше, ніж ризик помилки.

Ризик здобути звичку "це не працює, дотримуйся sudo!" набагато вище, ніж ризик помилки.

Оскільки системний адміністратор, який бачив, як люди виконують всілякі випадкові команди, sudoякі їм не потрібні, я завжди застерігаю від зайвого використання sudo.

Хоча catце не шкідливо, звичка ця заохочує.


8
@BenCrowell закрити (але sudoне застосовуватиметься до переадресації).
муру

13
Звичка просто додавати sudoнасправді дуже небезпечна. Швидше варто зупинитися і запитати "для чого мені тут потрібне судо?" І якщо ви не знаєте вагомих причин, швидше за все, ви зробили якусь іншу помилку в команді. Просто додавання всього необхідного для усунення повідомлень про помилки призводить до таких помилок: serverfault.com/questions/587102/… (Мій улюблений коментар - це запитання "Як ви навіть випадково вводите --no-save-root ? ")
kasperd

22
svn update. Ефф конфлікти. Я знаю. sudo svn update. Я насправді це бачив ...
Борис Павук

8
Я не використовую підрив, але я б здогадався, що використання чогось подібного sudo svn updateтакож повністю зіпсує дозволи - залишаючи вас у гіршому стані, ніж ви повинні почати.
даборосс

5
@DaboRoss Я думаю, що це слід включити у відповідь @ muru, тому що це одна з підводних помилок використання sudo: ви можете в кінцевому підсумку створити файли, доступні лише після sudoповторного виклику .
Санчіз

15

Я думаю, є ще одна проблема, яка ще не згадана: sudoстатус кешується для оболонки за замовчуванням 15 хвилин. Це означає, що вам не доведеться вводити свій пароль протягом наступних 15 хвилин, щоб виконати потенційно небезпечну команду.

Я думаю, що всі ми можемо придумати більш-менш ймовірні проблеми безпеки, які можуть бути наслідком цього: невідомі помилки програм, які це використовують, або забувши заблокувати екран із випадковими людьми або колегами навколо.

Це справді моя основна причина того, що я не використовую, sudoколи мені не потрібно, і навіть якщо мені доведеться, для часто закривання снарядів після того, як я закінчу з sudoроботою.


1
Цей ризик можна зменшити, скориставшись tty_ticketsопцією в sudoersта sudo --remove-timestamp.
Відновити Моніку - М. Шредер

1
@ MartinSchröder я вже tty_ticketsврахував. Але ви можете встановити timestamp_timeout. Тому я написав "за замовчуванням". Я впевнений, що більшість користувачів ніколи не змінить жоден із цих варіантів, але, звичайно, це міркування з мого боку.
musiKk

9

sudoНадмірне використання - це еквівалент Linux старої звички Windows для запуску всього під обліковим записом адміністратора. Цього обговорювали і критикували до пекла і назад, тому ви можете прочитати все, що говорить про те, чому людина не повинна керувати своїм комп’ютером Windows як адміністратор, і кожен окремий момент стосуватиметься звичного використання sudoLinux.


4

ну, це просто тому, що ви можете випадково зіпсуватись із чутливими частинами вашої файлової системи, завдаючи собі багато клопоту. Будьте обережні, ніколи не буває достатньо, тому краще не піддавати себе зайвим небезпекам


-1

Якщо ви робите що-небудь із судо , це означає, що ви надаєте повні права на нього, це кореневий доступ, який іноді стає дуже ризикованим, якщо ненавмисне додаток, який працює з дозволом root, може зробити щось не так, це призведе до збоїв у роботі системи корупція ОС. Так чи інакше, для Кішки це добре з коренем.


sudo може бути налаштований для забезпечення обмеженого доступу. За замовчуванням він забезпечує еквівалент повного доступу до кореня, але це не потрібно.
мерехтіння

-1

Немає нічого поганого в тому, що зайво використовувати судо. Судо (у його конфігурації / цілі за замовчуванням на Ubuntu) забезпечує повністю підвищені привілеї. Якщо користувачеві надано ці права, вони повинні виконувати його так, як він хоче (в тому числі і без необхідності!) . Однак використання Судо, коли це не потрібно, збільшує ставки. Це зайвий ризик. Простий друк може стати катастрофічним, і саме тому більшість людей уникають використання підвищених дозволів, коли вони не потрібні. Однак, тому що це звичайна практика уникати зайвого використання судо, не означає, що неправильно йти іншим шляхом. Судо до змісту вашого серця!

У контексті AskUbuntu я зовсім не здивований, що вам доручили уникати зайвого використання судо. Мета цього сайту - дозволити експертам задавати питання та отримувати відповіді експертів, але насправді тут багато початківців користувачів, які знають достатньо, щоб потрапити в біду. Плакати зазвичай намагаються захистити цих користувачів від себе. Зловживання судовим шляхом поширене серед початківців користувачів, оскільки вони насправді не розуміють, що є, чи не роблять, не потребують часу, щоб навчитися. Також цей сайт пишається створенням якісного контенту. Непотрібні команди неефективні, а тому знижують якість публікації.


1
Погана порада: використовуйте судо дуже обережно! Якщо вам потрібні привілеї для судо, це зазвичай означає, що ви робите щось небезпечне ...
Fabby

2
@Fabby OP не пропонує одноразово використовувати судо, а скоріше вказує, що зайве використання не прирівнюється до небезпечного використання.
Гіпно Жаба

2
@Rinzwind Немає нічого поганого в тому, щоб використовувати ракету для вбивства мурашки, доки ви обережні, щоб не підірвати нічого іншого в процесі. Непотрібне не є синонімом небезпечних.
Гіпно Жаба

1
Так, є. Приклад №1 askubuntu.com/questions/751339/…
Rinzwind

2
@HypnoToad Хоча я особисто уникаю використання судо, якщо мені не потрібні кореневі дозволи, і закликаю інших робити те саме, ви правильно. Непотрібне і небезпечне - це не одне і те ж. Немає нічого поганого в тому, щоб використовувати судо для кожного завдання, яке ви виконуєте, доки ви безпечно його використовуєте. Але, як було сказано, я б не пропонував нікому цього робити, оскільки це ставить вашу систему під зайвий ризик.
Дін Z
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.