Чи насправді Ctrl-Alt-Delete в Linux * не є небезпечним?


55

Чи shutdown -rнебезпечна функція Ctrl-Alt-Delete в системах Linux?

Роки тому, коли я розгортав фізичні системи з приєднаними клавіатурами та моніторами, іноді я /etc/inittabміняв системи Red Hat, щоб відключити пастку перезавантаження. Зазвичай це трапляється після того, як місцева особа ІТ або адміністратор Windows випадково використала комбінацію магічних клавіш на неправильному терміналі / клавіатурі / вікні та перезавантажила свій сервер.

# Trap CTRL-ALT-DELETE
ca::ctrlaltdel:/sbin/shutdown -t3 -r now

Я цього не робив з RHEL4 днів, але нові системи, здається, мають /etc/init/control-alt-delete.confфайл для цього.

За минулі роки більшість моїх систем були розгорнуті без голови або працюють як віртуальні машини. Це зменшило частоту ненавмисних перезавантажень ... однак, у мене був нещодавній набір ctrl-alt-delete oopses з:

1). IP KVM підключений до неправильного сервера персоналом центру обробки даних.
2). адміністратор Windows, що використовує комбінацію клавіш на консолі VMware, вважаючи, що це потрібно для входу.
3). я використовую макрос ctrl-alt-delete в консолі HP ILO для перезавантаження живого компакт-диска ... але це насправді ILO для дуже зайнятого виробничого сервера .

введіть тут опис зображення


  • Чи має сенс відключити перезавантаження Ctrl-Alt-Delete в Linux за замовчуванням?
  • Це спільна проблема чи взагалі ігнорується?
  • Чи є якісь мінуси для цього?
  • Як ви справляєтеся з цим у своєму оточенні?

Редагувати: Насправді я щойно зіткнувся з цим сервером , віртуальною машиною, що працює 1115 днів, невідомим кореневим паролем та інструментами VMware не встановлено ( тому Ctrl-Alt-Delete буде єдиним вигідним варіантом відключення ).


7
Ні, тому що якщо ви не можете перезавантажити довільний комп'ютер у вашій мережі, у вас виникнуть більші проблеми. Дивіться, наприклад, Мавпа Хаосу.
dmourati

15
@dmourati Це неправда. Реальні бізнес-системи не завжди працюють як веб-програми . Невідповідально припускати, що це архітектурна помилка.
ewwhite

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

6
@fduff У випадку виробничої системи, яку я перезавантажив у ці вихідні, це спричинило близько 13 хвилин простою, оскільки сервер займає довго POST, плюс додаток не вийшов з ладу (це не контролюється за допомогою скриптів init), що дозволило до ~ 45 хвилин відновлення бази даних після перезавантаження.
ewwhite

6
@JamesRyan Можливо. Але не завжди. Якщо користувачів / адміністраторів Windows умовно використовувати Ctrl-Alt-Delete для пробудження екрана або автентифікації, це зрозуміла помилка. У ситуаціях ILO / IPMI / KVM, так, можна більше уваги поставити до виявлення систем, але це не завжди можливо ... ( наприклад, покладаючись на віддалені руки в центрі обробки даних )
ewwhite

Відповіді:


37

Це може бути корисно для дуже, дуже рідко торкаються машин. Через роки після встановлення, якщо ніхто не може запам’ятати логін для хоста, Ctrl-Alt-Delete виконає належне відключення, а потім дозволить вам використовувати GRUB (або навіть LiLo!) Для постачання rw init=/bin/bashядра і таким чином дасть вам можливість скинути корінний пароль .

Сказане також є тим, що Ctrl-Alt-Delete є небезпечним, навіть якщо фізичний доступ до перемикачів живлення / скидання та кабелів живлення перешкоджає. Пароль завантажувача (і пароль BIOS плюс відключення завантажувального пристрою USB / CD-ROM та клавіша меню завантаження) може запобігти цьому, але ускладнює законне відновлення в аварійних ситуаціях.


3
Ти правий. Я вже використовував це властивість таким чином , в ситуації , яку ви описали.
ewwhite

Навіть тоді простіше завантажити "рятувальний" носій, змонтувати та ввести хеш відомого пароля. Через IPMI ви завантажуєте медіа-файл із iso-файлу, роблячи весь "фізичний доступ" виданим спором. Або завантажуєтесь із спеціальної конфігурації tftp / pxe, після ввімкнення завантаження з мережі.
Dani_l

Я вважаю, що те, що я згадував про пароль і параметри BIOS, все ще застосовується при використанні IPMI. Буду рада почути, якщо це неправильно.
Аластер Ірвін

1
Я не погоджуюся щодо засобів порятунку. Не важко запам'ятати параметри ядра, які я згадав. Для вашого методу потрібні оптичні носії інформації (або файл ISO під IPMI) та хеш паролів, який потрібно ввести або скопіювати з USB-накопичувача. (Якщо ви відмовились, скасуйте.)
Аластер Ірвін

1
@AlastairIrvine Я не сказав, і ви вірно відноситесь до ipmi - консоль ipmi надасть вам доступ до консолі машини під час всього процесу завантаження, включаючи введення біографії, тому ви зіткнетеся з тими ж проблемами. Не кажучи вже про те, що самоповажаючий HW сервера повинен мати можливість полегшувати зміну параметрів із запущеної ОС (наприклад, ASU IBM ibm.com/support/entry/myportal/docdisplay?lndocid=TOOL-ASU ).
Dani_l

7

Якщо у вас ILO / IPMI / ... Це має абсолютний сенс. Єдиною причиною CTRLALTDEL була магічна пастка, коли більше нічого не перебивало б. За допомогою контрольної картки це вам не потрібно - ви все одно можете скинути машину. Потрібно сказати, що якщо машина поводиться правильно, ви завжди можете "перезавантажити" / "вимкнути -r зараз" / "init 6" / "systemctl перезавантажити" з консолі чи gui.


4

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

Шанси жорсткого кругообігу на запущеному Linux-сервері, що спричинить непошкодження даних, є невеликими. У сотні разів, коли я це робив за ці роки, я не можу згадати жодного випадку, коли система не змогла виправити себе (fsck) під час завантаження. Тому я вважаю це дійсним варіантом для хостів, де пароль root невідомий, що забороняє наявність інших методів для витонченого відключення.


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