S/Key, les mots de passe jetables

De OpenWikiBSD
Aller à : navigation, rechercher

OTP, S/Key, les mots de passe jetables...ou OTP: One Time Password, mot de passe à usage unique.

L'idée est de pouvoir se connecter depuis un poste non-sûr (= contenant virus, keyloggers, etc..) sur une ressource avec des identifiants qui ne seront pas réutilisables.

J'ai essayé Mobile OTP, mais il fallait un serveur Radius et pas n'importe lequel, XTRadius et pas le standard de fait Freeradius..

Donc, j'ai cherché un outil d'OTP avec token compatible avec le système OpenBSD nommé S/Key. Trouvé : VejOTP téléchargeable ici


Installation sur le serveur OpenBSD

phil@zopen:/:$>  su
Password:
root@zopen:/:#> skeyinit -E
root@zopen:/:#> exit
exit

Rapide, non ?

Configuration pour le compte utilisateur

phil@zopen:/:$> skeyinit 
Reminder - Only use this method if you are directly connected
           or have an encrypted channel.  If you are using telnet,
           hit return now and use skeyinit -s.
Password:
[Adding phil with md5]
Enter new secret passphrase: 
Again secret passphrase: 

ID phil skey is otp-md5 100 planck94327
Next login password: DAYS HEAL LOAM NECK LED LANE

Ce qui signifie, que je peux désormais me connecter avec un mot de passe jetable au serveur :

Test

phil@linuxette:/:$>ssh phil:skey@zopen
otp-md5 99 planck94327
S/Key Password:
.
phil@zopen:~:$> 

Ca marche ! Remarquez l'ajout de :skey au nom de connexion


Super, et comment je fais pour connaitre mon prochain mot de passe kleenex ?

phil@zopen:~:$> skeyinfo -v
otp-md5 99 planck94327
    • La méthode est md5 (oui, c'est mal md5, même qu'il y a eu des collisions et que C pu sécure, mais bons, sha-1, allez-y, c'est mieux)
    • Le compteur est à 99
    • Le challenge reste planck94327

Reste à demander au diodon la prochaine liste des 5 otp en partant de 99. Exemple du site open:

phil@zopen:~:$> otp-md5 -n 5 99 planck94327
Reminder - Do not use this program while logged in via telnet.
Enter secret passphrase:
95: SHIM SET LEST HANS SMUG BOOT
96: SUE ARTY YAW SEED KURD BAND
97: JOEY SOOT PHI KYLE CURT REEK
98: WIRE BOGY MESS JUDE RUNT ADD
99: NOOK CHUB HOYT SAC DOLE FUME

Attention : A ne pas taper depuis une ligne en clair, bref si vous utilisez (encore) telnet, ben....je ne peux plus faire grand chose pour vous !


Et mon mobile/smartphone/Bibop/IPhone4G, il me sert à quoi

Téléchargez le vejotp, entrez les compteurs/challenge/Passphrase/algorithme et la liste précédente devient caduque.

Attention! Comme je vous connais et que vous allez enregistrer la passphrase, un vol du smartphone= vol direct de la connexion SSH !

Vérrouiller la machine pur imposer l'usage de S/Key....et s'enfermer dehors ;-)

Dans /etc/ssh/sshd_config :

  • #RSAAuthentication yes -> RSAAuthentication no

Mais comme vous n'avez pas de SSHv1, ca ne sert à rien.

  • #PubkeyAuthentication yes -> PubkeyAuthentication no

Plus de connexion avec clé...Z'êtes vraiment sûr ? C'est facile, sécurisé..OK,OK j'ai rien dit!

  • #PasswordAuthentication yes -> PasswordAuthentication no

Ca, en revanche, c'est TRES bien !

  • #ChallengeResponseAuthentication yes A vérifier

Autorise l'usage de OTP

On redémarre SSH: </pre>

kill -HUP  `cat /var/run/sshd.pid`

</pre>

Et seuel la connexion OTP fonctionnera.