Login
dossier > Informatique > [Tuto] PAM: OneTimePassword et USB authentication

[Tuto] PAM: OneTimePassword et USB authentication

USB auth: pratique

Pam USB

 

wget http://dl.delta-xi.net/usbauth_v0.3-2_source.tar.bz2
tar xjf usbauth_v0.3-2_source.tar.bz2
cd usbauth_v0.3
make
chmod a-x /lib/security/pam_usbauth.so

 

Un message vous prévient que c'est dangereux pour votre clé USB et que le logiciel doit être considéré comme une version alpha, mais aucun soucis il vous dit:

Everything's going ok!

Pas de panique!!! ^^

 

Le module pam a été copié dans /lib/security et porte le nom : 'pam_usbauth.so'

 

Insérer votre clé USB (attention! elle sera formatée et ne pourra être utilisée que pour l'authentification!!).

MAJ: fonctionne avec une carte SD dans un adaptateur PCMCIA (le tout est d'avoir un /dev/xxx)

Il faut connaitre "l'emplacement physique de la clé":

 

fdisk -l

 

  

Vous verrez votre disque dur et les autres périphériques ayant ou non un système de fichier.

Dans mon cas, la clé USB est ici: /dev/sdb

  

Transformation de la clé USB en clé d'authentification:

 

uapasswd -d /dev/sdb -u votre_login -p votre_password -w
exemple:
uapasswd -d /dev/sdb -u maxime -p jlovekookyoo -w
###################### ######################
As you have told me, I'll write the password for
        User maxime, with
        Password 0fTisaRZeYne3, at
        Device /dev/sdb

Make sure this device is not pointing to a harddisk, or somewhere else wheredata is stored.
Is this correct? (y/N).y
Config file successfully written.

 

Voilà, ma clé est prête!

On continu!

 

Il reste à configurer PAM pour ne plus à avoir taper de mot de passe (ou avoir les deux!)

Nous allons donc configurer l'authentification pour un module.

 

vim /etc/pam.d/MODULE
 auth    PARAMETRE     pam_usbauth.so
 auth    required      pam_unix.so nullok_secure

 

Il va falloir maintenant faire un choix! PAM gère les authentifications de cette manière:

SUFFICIENT: le succès d'un module est suffisant

REQUIRED: obligatoire

OPTIONAL: optional ^^

 

L'ordre est important (pour les connaisseurs, comme les ACL), c'est à dire, de haut en bas!

Pam va lire le fichier de haut en bas, si il tombe sur un "required", il va demander le password et si echec, il s'arrete.

Si il y a un 'sufficient" après le required, il va demander à son tour un mot de passe et si echec il s'arretera aussi!

Mais! Si il y a un "sufficient" puis un "required, si le sufficient est OK, l'authentification est OK, on ne traite pas le "required".

A vous de voir!

Bon je vous aide!!!

 

 

Clé USB + Mot de passe:

 

vim /etc/pam.d/MODULE
 auth    required      pam_usbauth.so
 auth    required      pam_unix.so nullok_secure

 

Clé USB ou Mot de passe:

 

vim /etc/pam.d/MODULE
 auth    sufficient    pam_usbauth.so
 auth    required      pam_unix.so nullok_secure

 

 Evidemment, si vous faites de l'authentification par clé USB pour l'utilisateur 'root', vous choisirez Clé USB + Password.

Si c'est pour votre utilisateur personnel, vous pouvez à la limite faire Clé USB ou password.

A votre bon coeur!

 

 

Concernant le MODULE, il est formelement INTERDIT (c'est votre pc mais bon!), c'est TRES DANGEREUX de faire ceci dans "common-auth" !!!!

Je viens de tester, et le problème:

- clé USB dans port usb du serveur ssh

- le client (pas de clé dans ses ports): ssh maxime@IP > paf , logué sans aucune demande!

 

 

 

Je conseille d'utiliser:  Clé USB + Password pour le module de votre gestionnaire graphique.

 

Encore un gros mot :S 

 

Simplement, "login" est utilisé pour le login en console hors, vous, utilisateur en mode graphique (moi aussi einh ^^ mais la pluspart du temps en console Xterm!) vous arriver au démarrage sur une page d'authentification graphique.

 

 

Il y a plusieurs gestionnaires:

gdm, xdm kdm ......

Pour ma part: "gdm".

 

N'oubliez pas, qu'il faut garder l'odre que l'on veut pour l'authentification!!!

Donc, le "common-auth" on ne le touche pas! Mais dedant il y a un "required", donc il faudra mettre le "required" ou "sufficient" de "pam_usbauth.so" dans le fichier du module (ici: "gdm"), juste avant : "@include common-auth".

 

vim /etc/pam.d/gdm
 ...
 auth    required      pam_usbauth.so
 @include common-auth
 ...

 

 

 

INFORMATION:

 

Si vous perdez votre Clé USB, quelle rende l'âme, que le chien l'ai prit pour une croquette, que votre enfant l'ai pris pour un marteau ou autre.....

NO SOUCIS!!!! Il existe des moyens très simples (relativement) pour changer son mot de passe, le mode d'authentification ou ce que vous voulez!!!

Je sens que ça interessera un autre public..... bref!

Ca sera l'occasion d'un prochain article!

N'oubliez pas! Si il y a accès physique d'un PC (par un méchant du mal), considérez le comme compromis.


Réalisation

Code & Design : Sébastien Cardona

Page générée en : 0.016524s