web-dev-qa-db-fra.com

Verrouiller et déverrouiller à partir d'un disque USB (clé USB)

Existe-t-il un programme permettant de verrouiller et de déverrouiller ma machine Ubuntu à l'aide d'un lecteur flash?

Par exemple, lorsque je sors le lecteur flash USB, l'ordinateur se verrouille automatiquement et lorsque je le mets dans le lecteur flash, l'ordinateur se déverrouille automatiquement.

Merci d'avance.

14
Prabin Dahal

Je sais que c'est une réponse terriblement tardive, je pensais que cela pourrait aider les futurs lecteurs. J'ai posté la réponse à l'adresse Verrouillage avec clé USB

Eh bien, un module appelé PAM (module d’authentification enfichable) peut être personnalisé pour répondre à vos besoins. Un bel article est disponible sur linuxconfig décrivant cela en détail.

Les étapes sont les suivantes:

  1. Installer PAM

    $ Sudo apt-get install pamusb-tools libpam-usb
    
  2. Ajouter un périphérique USB à la configuration de PAM

    $ Sudo pamusb-conf --add-device <my-usb-stick>
    
  3. Sélectionnez votre volume et "Y" pour enregistrer

  4. Définir l'utilisateur pour l'authentification PAM

    $ Sudo pamusb-conf --add-user <ubuntu-user>
    
  5. Sélectionnez et "Y" pour enregistrer

  6. Configurer PAM

    $ Sudo gedit /etc/pam.d/common-auth
    
  7. Ajoutez la ligne ci-dessous et enregistrez

    auth    sufficient      pam_usb.so
    
  8. Tester l'authentification PAM

    $ su ubuntu-user
    
  9. Verrouiller lorsque déconnecté

    $ Sudo gedit /etc/pamusb.conf
    
  10. Modifiez le bloc "utilisateur" pour qu'il ressemble à ceci:

    <user id="ubuntu-user"> 
          <device> 
                  my-usb-stick 
          </device> 
          <agent event="lock">gnome-screensaver-command -l</agent> 
          <agent event="unlock">gnome-screensaver-command -d</agent> 
     </user>*
    
10
Fr0zenFyr

Dans

/etc/udev/rules.d/

vous pouvez écrire un script

SUBSYSTEM=="usb", SYSFS{idProduct}=="PPPP", SYSFS{idVendor}=="VVVV", RUN+="/usr/sbin/usb-locking"

où PPPP et VVVV sont des valeurs que vous pouvez extraire avec lsusb.

Chaque produit identique correspondra, mais le verrouillage USB peut monter le périphérique et examiner le lecteur lui-même pour une légitimation supplémentaire - un fichier, un bytecode, la date ...

C'est vulnérable si quelqu'un d'autre a accès au bâton, bien sûr.

Le script pourrait en outre regarder chaque minute, si le stick est toujours monté, et verrouiller sinon.

5
user unknown

Merci pour votre suggestion. J'ai écrit un script simple utilisant la commande lsusb et mis dans le système -> préférences -> applications de démarrage. Le script est comme suit ..

 #!/bin/sh 
 # Script pour verrouiller et déverrouiller automatiquement l'ordinateur lorsque ma clé USB est retirée 
 
 LSUSB = `quel lsusb` 
 
 if [-z $ LSUSB]; then 
 echo "Aucune commande lsusb trouvée. sortie ..\n" 
 sortie 56 
 fi 
 
 
 pendant que: 
 faire 
 dormir 3 
 echo "Running in loop" 
 # Vérifiez le lecteur USB 
 
 USB = `lsusb | grep Logitech` 
 
 if [-n "$ {USB}"]; then 
 echo "Périphérique USB: Transcend trouvé" 
 # trouver et tuer tout écran de veille trouvé. 
 gnome-screensaver-command --deactivate 
 continuer 
 fi 
 
 # Périphérique USB introuvable. 
 # Vérifiez si l'économiseur d'écran est en cours d'exécution ou non 
 # s'il ne fonctionne pas, lancez l'économiseur d'écran 
 gnome-screensaver Commande
3
Prabin Dahal