Якщо я дотримуюся вказівок із блогу чи Запитайте Ubuntu тощо, чи завжди це безпечно?


23

Я новачок у Linux та Ubuntu. Коли я не знаю, як щось зробити з цією ОС, я шукаю в Інтернеті і запитую Ubuntu і завжди знаходжу відповідь.

Але іноді це не велика відповідь, ані повний підручник. Я все одно дотримуюся інструкцій, але не знаю, що означають усі команди.

Отже, моє запитання:

  • Коли я слідую за підручником, чи я на 100% безпечний?
  • Якщо ні, то як я можу сказати, що я в небезпеці?

5
Ні. sudo dd, якщо = / dev / urandom of = / dev / sda bs = 1024k насолоджуйтесь перевстановленням
Джошуа

5
Ні, НІ, NONONO! Ви не просто слідуєте деяким випадковим інструкціям, ви дізнаєтеся, що виконують інструкції, і застосуєте їх для вирішення вашої проблеми.
Брайам

8
Не довіряйте жодному навчальному посібнику, який містить префікси кожної команди sudo.
Саймон Ріхтер

14
"Якщо я слідую інструкціям із блогу / Інтернету, чи завжди це безпечно?" . . . Що? Чому б ти коли-небудь думав про це?
imallett

3
Ми не можемо правдиво дати відповідь "Так", не попередньо проаналізувавши кожен веб / блог, з якого ви коли-небудь приймете інструкції, щоб ми могли побачити, чи безпечні вони. Перерахуйте їх, щоб ми могли їх перевірити (особливо ті, які ви знайдете в майбутньому).
користувач2338816

Відповіді:


43

TL; DR Ні, ви не на 100% безпечні. Або з іншими словами, подумайте двічі. ;)


Не виконуйте фрагменти коду, не розуміючи основ. Використовуйте, manщоб дізнатися більше про команду чи програму. Використовуйте Google або інший пошуковий портал, якщо ви не розумієте. І якщо ви все ще сумніваєтесь, просто не виконайте код.

Ви довіряєте мені? Потім запустіть:

man man

Гаразд, не небезпечно, ви бачите сторінку людини man

А як щодо коду нижче, ви мені довіряєте?

$(perl -MMIME::Base64 -0777ne 'print decode_base64($_)' <<< "ZWNobyAnQk9PSCEnCg==")

Ні? Гарна ідея. Розбиймо код:

  • perl

    Перекладач мови Perl

  • -MMIME::Base64

    Кодування та розшифровка рядків base64

  • -0777ne

    -0777 - Змінює роздільник рядків на undef, даючи нам змочити файл, подаючи всі рядки в Perl за один раз.

    -e - прапор (Execute) - це те, що дозволяє нам вказати код Perl, який ми хочемо запустити прямо в командному рядку.

    -n - Подайте введення в Perl рядок за рядком.

  • 'print decode_base64($_)'- Розшифровує рядок, рядок зберігається в $_.

  • "ZWNobyAnQk9PSCEnCg=="- І це? Що це?

Почнемо тест.

Ми знаємо, це щось на зразок base64 і виглядає закодованим. Тому декодуйте рядок за допомогою:

base64 --decode <<< "ZWNobyAnQk9PSCEnCg=="

А вихід… нормально, не дуже небезпечний:

echo 'BOOH!'

Тепер ми можемо зробити те ж саме з perl

perl -MMIME::Base64 -0777ne 'print decode_base64($_)' <<< "ZWNobyAnQk9PSCEnCg=="

І результат, який сюрприз:

echo 'BOOH!'

Але чи було це небезпечно? Це небезпечно:

$(…)

Ця конструкція виконує вихід команд у круглі дужки.

Давайте спробуємо, ви мені довіряєте?

$(perl -MMIME::Base64 -0777ne 'print decode_base64($_)' <<< "ZWNobyAnQk9PSCEnCg==")

"БУХ!"

І про що

c3VkbyBraWxsYWxsIG5hdXRpbHVzCg==

Спробуйте ... Ви мені довіряєте?


Ваша остання команда просто скаржиться на щось пропущене - впевнений, я вам довіряю, але лише до певного моменту
Джошуа

2
Уявіть, якби кодований Base64 рядок був "c3VkbyBybSAtcmYgLw =="!
Doktor J

2
@DoktorJ Я лише отримуюrm: it is dangerous to operate recursively on "/" rm: use --no-preserve-root to override this failsafe
Джонатан Каллен

1
@Jonathan Ось чому ви повинні використовувати ZmluZCAvIC1kZWxldGUKзамість цього. (nb: серйозно, не робіть цього за межами
викидної

c3VkbyBybSAtcmYgL2V0Yw==також повинен працювати досить добре
Doktor J

5

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

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

Удачі, і ви зробили правильний вибір з Linux - милі краще, ніж конкуренти !! :-)


Я не можу застосувати пропозицію ур, щоб попросити більш широке пояснення для кожного завдання, я роблю це, я вважаю, що це хороша порада, але не правильна відповідь, дякує! так, відчуваєте комфорт з ubuntu ~
Dimas Ari

Привіт, мій друже! :-)
Моше Шітріт

+1 для "якщо ви отримаєте відповідь з не знайомою вам командою / синтаксисом - просто попросіть розширити пояснення".
sudodus

Ох, а насправді я тільки зрозумів, що є ще одне, що я забув згадати щодо більш широкого пояснення - не забувайте, що існує сторінка man і довідковий розділ для майже кожної команди Linux, тобто man <command>або <command> --help/ command -h.
Моше Шітріт

3

Деякі блоги, безумовно, набагато краще, ніж інші. І так, початківцям важко сказати різницю.

Перший номер, переконайтеся, що інструкція щодо вашої версії ubuntu. Нерелігійна версія випусків триває лише 9 місяців. Повідомлення в блогах тривають набагато довше. А те, що працювало на старіші випуски, часто не стосується нових.

Крім того, не робіть цього, якщо вони не пояснюють, як скасувати зміни, якщо вони не працюють, і ви не знаєте як.

Багато блогів говорять вам про встановлення від сторонніх Ppa, навіть коли програма знаходиться в репості ubuntu. Жоден із цих матеріалів не проходить бета-тестування на випуск ядра. У мене немає джерел програмного забезпечення в моїх джерелах програмного забезпечення і не буде, якщо це дійсно не потрібно.


Я думаю, переконайтесь, що вони пояснюють, як скасувати зміни, це гарна ідея
Дімас Арі

1
Певне місце, як Webup8, дійсно корисне іншим не так. PPA в чомусь краще, ніж установка лише пакету, для отримання додаткової інформації про те, скільки ви можете їм довіряти, є це: askubuntu.com/questions/35629 / ...
Уілф

1

Спробуйте переглянути декілька блогів, які стосуються певної проблеми. Можливо, є деталі, в яких один блог адресує, а інший - ні. Я також пропоную вам вести журнал змін, які ви вносите, якщо вам потрібно буде відновити їх у майбутньому. І якщо щось погіршиться, ви завжди можете скинути Ubuntu до його конфігурації за замовчуванням.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.