Ctrl-Alt-Suppr sur Linux * n'est-il pas vraiment dangereux?

55

La fonctionnalité par défaut Ctrl-Alt-Suppr shutdown -rsur les systèmes Linux est-elle une fonctionnalité dangereuse?

Il y a des années, lorsque je déployais des systèmes physiques avec des claviers et des moniteurs connectés, je modifiais parfois les /etc/inittabsystèmes Red Hat pour désactiver l'interruption de redémarrage. Cela se produit généralement après qu'un informaticien local ou un administrateur Windows ait utilisé accidentellement la combinaison de clés magiques sur un terminal / clavier / fenêtre incorrect (e) et redémarré son serveur.

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

Je ne l'ai pas fait depuis RHEL4, mais les nouveaux systèmes semblent avoir un /etc/init/control-alt-delete.conffichier pour cela.

Dans les années qui ont suivi, la plupart de mes systèmes ont été déployés sans tête ou fonctionnent en tant que machines virtuelles. Cela a réduit la fréquence des redémarrages involontaires ... Cependant, j'ai récemment eu une série d' oops ctrl-alt-delete provenant de:

1). un KVM IP branché sur le mauvais serveur par le personnel du centre de données.
2) un administrateur Windows utilisant la combinaison de touches dans une console VMware, pensant que cela était nécessaire pour la connexion.
3) moi en utilisant la macro ctrl-alt-delete dans une console HP BIT pour redémarrer un CD live ... mais il était en fait l'OIT pour un serveur de production très occupé .

entrez la description de l'image ici


  • Est-il judicieux de désactiver le redémarrage Ctrl-Alt-Suppression sous Linux par défaut?
  • Est-ce une préoccupation commune ou généralement ignorée?
  • Y a-t-il des inconvénients à le faire?
  • Comment gérez-vous cela dans votre environnement?

Edit: En fait, je viens de rencontrer ce serveur , une machine virtuelle exécutée pendant 1 115 jours, un mot de passe root inconnu et les outils VMware n’étaient pas installés ( Ctrl-Alt-Suppr serait donc la seule option d’arrêt progressif ).

ewwhite
la source
7
Non, car si vous ne pouvez pas redémarrer un ordinateur arbitraire de votre réseau, vous rencontrez de plus gros problèmes. Voir, par exemple, le singe du chaos.
dmourati
15
@dmourati C'est faux. Les systèmes métier du monde réel ne fonctionnent pas toujours comme des applications Web . C'est irresponsable de suggérer que c'est un échec architectural.
ewwhite
8
Même si vous pouviez redémarrer un système arbitraire, vous ne voudriez pas. Dans un scénario informatique réel, vous voudriez avoir des redémarrages planifiés uniquement lorsque cela est nécessaire . Les oopsies sont toujours mauvaises et doivent être évitées, et cette question concerne les oopsies.
Compagnon Geek
6
@fduff Dans le cas du système de production que j'ai redémarré ce week-end, cela a provoqué environ 13 minutes d'indisponibilité, car le serveur met beaucoup de temps à postter, et l'application ne s'est pas arrêtée proprement (elle n'est pas contrôlée par des scripts d'init à environ 45 minutes de réparation de la base de données après le redémarrage.
ewwhite
6
@ JamesRyan Peut-être. Mais pas toujours. Si les utilisateurs / administrateurs Windows sont conditionnés pour utiliser Ctrl-Alt-Suppr pour réactiver un écran ou s’authentifier, c’est une erreur compréhensible. Dans l'OIT / IPMI / situations KVM, oui, pourraient être prises plus soin d'identifier les systèmes, mais ce n'est pas toujours possible ... ( par exemple , se fondant sur les mains à distance à un centre de données )
ewwhite

Réponses:

37

Cela peut être utile pour les machines très, très rarement touchées. Des années après l’installation, si personne ne se souvient du nom de connexion de l’hôte, Ctrl-Alt-Suppr procédera au bon arrêt puis vous permettra d’utiliser GRUB (ou même LiLo!) Pour fournir rw init=/bin/bashau noyau et ainsi vous permettre de réinitialiser le mot de passe root .

Ce qui précède montre également que Ctrl-Alt-Suppr est dangereux même si l'accès physique aux commutateurs d'alimentation / de réinitialisation et aux câbles d'alimentation est empêché. Un mot de passe du chargeur de démarrage (et le mot de passe du BIOS, ainsi que la désactivation du démarrage USB / CD-ROM et de la touche du menu de démarrage) peut empêcher cela, mais rend plus difficile la restauration légitime légitime.

Alastair Irvine
la source
3
Vous avez raison. Je l' ai utilisé cette fonctionnalité ainsi dans la situation que vous avez décrite.
ewwhite
Même dans ce cas, il est plus facile de charger un support "de secours", de monter et d'entrer le hachage d'un mot de passe connu. Sur IPMI, vous chargez le support à partir d'un fichier ISO, ce qui rend tout le problème "accès physique" sans objet. Ou vous chargez depuis une configuration spéciale tftp / pxe, après avoir activé le démarrage à partir du réseau.
Dani_l
Je crois que ce que j'ai mentionné à propos des mots de passe et des options du BIOS s'applique toujours lorsque vous utilisez IPMI. Je serais heureux d'entendre si c'est inexact.
Alastair Irvine
1
Je ne suis pas d'accord sur les supports de secours. Ce n'est pas difficile de se rappeler les options du noyau que j'ai mentionnées. Votre méthode nécessite un support optique (ou un fichier ISO sous IPMI) et un hachage de mot de passe, qui doit être saisi ou copié à partir de la mémoire de stockage USB. (Si vous avez voté à la baisse, veuillez annuler.)
Alastair Irvine le
1
@AlastairIrvine Je n'ai pas voté par opposition, et vous avez raison en ce qui concerne ipmi - une console ipmi vous donnera accès à la console de l'ordinateur pendant tout le processus de démarrage, y compris la saisie du bios pour que vous fassiez face aux mêmes problèmes. Sans oublier que le serveur matériel qui se respecte doit pouvoir faciliter le changement de paramètre depuis le système d'exploitation (par exemple, l'ASU d'IBM ibm.com/support/entry/myportal/docdisplay?lndocid=TOOL-ASU ).
Dani_l
7

Si vous avez ILO / IPMI / ... Cela a un sens absolu. La seule raison pour CTRLALTDEL était un piège magique lorsque rien d'autre ne l'interrompait. Avec une carte de contrôle, vous n'en avez pas besoin - vous pouvez quand même réinitialiser la machine. Il va sans dire que si la machine se comporte correctement, vous pouvez toujours "redémarrer" / "shutdown -r now" / "init 6" / "systemctl reboot" depuis la console ou le gui.

Dani_l
la source
4

Je pense que les chances de redémarrage accidentel via ctrl-alt-suppression sont beaucoup plus grandes que les chances d'oubli du mot de passe root d'un serveur. Par conséquent, dans les environnements de production, il est logique de désactiver ctrl-alt-suppression. Je le fais personnellement sur mes systèmes de production.

Les probabilités qu'un cyclomoteur dur sur un hôte Linux en cours d'exécution provoque une corruption irrémédiable des données sont minimes. Au cours des centaines de fois où je l'ai fait au fil des ans, je ne me souviens pas d'un seul cas où le système n'a pas été en mesure de se réparer (fsck) au démarrage. Je considère donc que cette option est valide sur les hôtes dont le mot de passe root est inconnu, à l’exclusion de la disponibilité d’autres méthodes pour un arrêt en douceur.

Michael Martinez
la source
1
Comment désactiver l'option ctrl-alt-suppression sur la machine virtuelle hébergée sur le serveur Esx?
kvivek