Variations sur un login imposé

Publié le par Peck

Maintenant sur http://linux-attitude.fr/post/Variations-sur-un-login-impose

Niveau
:
Résumé: Login:

Comment se connecter à sa machine sans intervenir ?

Autologin cas 1

Si vous avez comme moi un pda que vous branchez sur l'usb pour le recharger lorsque vous rentrez chez vous, vous pouvez l'utiliser pour lancer une connexion automatique sous kdm (pour gdm, il va falloir chercher : je n'ai pas trouvé). Je donne l'exemple du branchement d'un périphérique usb, mais vous pouvez aussi utiliser n'importe quel autre événement grâce à udev.

La détection de l'événement usb se fait simplement en ajoutant une règle à udev (noyau 2.6 obligatoire). Udev n'étant pas de configuration facile voici la ligne à ajouter dans /etc/udev/rules.d/local.rules ou tout autre fichier de ce répertoire.

SUBSYSTEM=="usb_device", SYSFS{idVendor}=="03f0", SYSFS{idProduct}=="1016", RUN+="/usr/local/sbin/ipaq-event.sh"

Les valeurs idVendor et idProduct se trouvent avec la commande lsusb, périphérique branché. Ces valeurs sont les 2 parties du champ ID.

Pensez à relancer udevd
/etc/init.d/udev restart


Le script à lancer (ipaq-event.sh) ne devra pas être modifiable  ni exécutable, ni lisible par un autre que root ou vous-même étant donné son contenu, que voici :

#!/bin/sh
kdmctl -g login :0 user mdp

Notez que vous pouvez avoir autant d'autologin différents que de périphériques usb.


Autologin cas 2

Si vous ne voulez pas mettre votre mot de passe dans un script (ce qui se comprend) et que votre périphérique usb peut être vu comme un mass-storage (un appareil photo ou une clé usb ... contenant des données), vous avez alors la possibilité de mettre n'importe quoi pour le mot de passe à condition d'utiliser une authentification basée sur la clé en question. En effet, vous allez changer la configuration pam pour ignorer le mot de passe et prendre en compte le périphérique usb.

Il vous faudra pour cela utiliser libpam-usb. L'article en lien décrit bien son installation, donc je n'expliquerai pas les détails.

libpam-usb permet de créer une clé privée qui restera sur la clé usb et une clé publique qui restera sur la machine. Lors de la connexion pam vérifiera que la clé privée trouvée est valide et correspond bien à celle de l'utilisateur. Votre périphérique USB vous authentifie ! Et le cas 1 vous permet en même temps de lancer la connexion.


Autologin cas 3

Oui, mais ... et si vous aviez utilisé libpam-ssh pour entrer automatiquement votre clé ssh dans l'agent, le mécanisme ne fonctionne plus. Heureusement (sic), je n'ai pas réussi le login par clé ssh dans kdm et l'astuce actuelle n'est pas fonctionnelle pour gdm.

Pour émuler ce comportement, vous pouvez avoir une version sans passphrase sur la clé usb et de l'ajouter automatiquement au login.

Mais cela implique une grande confiance en l'absence de mécanismes de sécurité sur votre clé usb ! Que voulez vous, on ne peut pas à la fois ne rien demander à l'utilisateur et s'assurer de son identité.

Pour améliorer un peu le principe, il est possible d'utiliser le concept des demi-bits, une demi clé ssh sur la clé usb et une demi clé sur le poste de travail. En cas de perte de l'un on ne peut rien sans l'autre.

Publié dans admin

Pour être informé des derniers articles, inscrivez vous :

Commenter cet article