web-dev-qa-db-fra.com

Connexion sur le terminal local sans mot de passe

J'ai un invité virtuel d'Ubuntu sur une KVM machine, j'ai configuré la machine pour pouvoir taper virsh console et être déposée dans une console.

Je comprends les considérations de sécurité ici, mais est-il possible de configurer l’invité de telle sorte que si un utilisateur se connecte via une console, il est automatiquement root sans qu’il soit nécessaire de saisir un mot de passe. Cependant, cela ne concerne que la console série et non le SSH ou l'accès à distance.

Ce n'est pas vraiment une question KVM, mais juste une configuration système, la console a été configurée en tant que périphérique sur /dev/ttyS0.

5
John Mitchell

éditez /etc/init/tty1.conf:

Sudo nano -w /etc/init/tty1.conf

remplacez le contenu par ce qui suit:

# tty1 - getty
#
# This service maintains a getty on tty1 from the point the system is
# started until it is shut down again.

start on stopped rc RUNLEVEL=[2345] and (
            not-container or
            container CONTAINER=lxc or
            container CONTAINER=lxc-libvirt)

stop on runlevel [!2345]

respawn
exec /sbin/getty --autologin root -8 38400 tty1

le changement important est que la dernière ligne inclut --autologin root en tant qu'argument.

Une fois le changement effectué, il peut être activé avec un redémarrage ou en exécutant Sudo stop tty1 && Sudo start tty1

7
Daniel Llewellyn

Et maintenant, la réponse de systemd.

Comme discuté, la réponse de Daniel Llewellyn est spécifique à un démarrage et oublie que c'est pour changer le login du périphérique série , pas le ) le terminal virtuel du noyau se connecte. Dans le monde système, cette distinction est importante.

Dans le monde systemd, vous devez (de manière similaire à upstart) ajuster les options de commande d’un programme getty particulier pour inclure --autologin root. Il existe deux façons de procéder avec un terminal virtuel du noyau , mais il n’ya vraiment qu’un seul pour un périphérique série , car il n'y a pas d'alias de service modifiable semblable à [email protected] pour les services de connexion de périphérique série.

Ecrivez un ou plusieurs fichiers de remplacement de fichier d'unité sous /etc/systemd/system avec systemctl edit [email protected] ou directement avec un éditeur de texte. Modifiez le paramètre ExecStart en commençant par une ligne qui l’efface puis en remplaçant une ligne:

[Service] 
 ExecStart = 
 ExecStart =/sbin/agetty --autologin root -8 --keep-baud 115200,38400,9600 ttyS0 $ TERM

Lectures complémentaires

4
JdeBP