Puis-je utiliser un jeton logiciel RSA SecurID sur Ubuntu Linux?

14

J'ai des ordinateurs Windows, Mac et Linux; mais je ne peux actuellement me connecter à certains sites Web de mon entreprise via les machines Windows et Mac que parce qu'ils sont les seuls à disposer de jetons logiciels RSA SecurID. Je suis curieux: est-il possible de configurer un token logiciel SecurID pour fonctionner sur un système Linux (dans mon cas, Ubuntu)?

Dan Tao
la source
Y a-t-il autre chose qui se passe ici? Une sorte de système d'authentification unique en plus des jetons?
Cher
@PriceChild: Pour être honnête, je ne pense pas comprendre comment les jetons RSA fonctionnent assez bien pour même obtenir ce que vous demandez. Tout ce que je sais, c'est que pour accéder à certains sites de mon entreprise, je dois saisir la chaîne affichée par mon jeton logiciel dans une zone de saisie. Ensuite, je peux me connecter. Comme je n'ai pas un tel jeton sur ma machine Linux, je considère les sites Web comme inaccessibles. C'est peut-être grossièrement inexact; comme je l'ai dit, je ne comprends pas assez bien tout le système pour le savoir.
Dan Tao

Réponses:

8

Il n'y a pas de jeton logiciel RSA pour Linux, vous devrez donc utiliser Wine (ou exécuter des fenêtres sur une machine virtuelle). Il y a un fil ici où la version Wine et la version du logiciel RSA détaillées ont été trouvées pour fonctionner.

Une autre alternative serait d'obtenir un jeton basé sur le téléphone afin de ne pas dépendre d'un bureau spécifique et de la fragilité du vin. La plupart des plateformes téléphoniques sont prises en charge.

Paul
la source
2
La solution par téléphone était toujours devant moi et j'étais trop stupide pour le remarquer!
Dan Tao
Voir la réponse ci-dessous concernant stoken , je l'ai essayé et je suis très impressionné. En ce qui concerne le logiciel Wine + RSA, je ne peux même pas obtenir les nouvelles versions à installer ou à exécuter sans planter et / ou geler (bien que j'utilise Wine staging 2.2). Seul RSA SecurID v410 semble fonctionner et c'est très maladroit.
Jonathan Neufeld
16

Les versions récentes d'Ubuntu proposent le package stoken , une implémentation native open source SecurID qui comprend une CLI, une interface graphique GTK + et une API de bibliothèque.

Pour plus d'informations, consultez la page d'accueil du projet .

Kevin Cernekee
la source
C'est un produit très impressionnant. Il semble professionnel, facile à utiliser et entraîne très peu de configuration ou de surcharge. Fonctionnant très bien pour moi, Windows RSA SecurID est très lourd et va beaucoup trop loin par rapport à l'interface utilisateur pour un outil aussi simple. Cette complexité supplémentaire le rend extrêmement fragile et les versions plus récentes ne fonctionneront pas.
Jonathan Neufeld
9

Personnellement, je suis trop paresseux pour prendre mon téléphone, ouvrir l'application RSA, entrer mon code PIN, puis le saisir sur la page de connexion. Je n'aime pas non plus traiter avec Wine. Donc, au lieu de cela, j'ai créé une solution totalement folle à ce problème. J'ai écrit un script qui va SSH dans une machine Windows, lancer l'application RSA, entrer votre code PIN, copier le résultat et le mettre dans le presse-papiers de votre machine Linux locale. Pour ce faire, vous avez besoin d'une machine Windows à laquelle vous pouvez accéder via SSH avec le logiciel RSA installé. J'ai utilisé freesshd comme serveur SSH sous Windows. Vous aurez également besoin d' AutoHotKey et PsExec .

Compilez le script AHK suivant sur la machine Windows (je mets l'exe résultant dans C: \ Program Files \ RSA SecurID Software Token \ rsa-securid.exe):

TokenName = %1%
Pin = %2%
Run, "C:\Program Files\RSA SecurID Software Token\SecurID.exe"
WinWait, %TokenName% - RSA SecurID Token, 
IfWinNotActive, %TokenName% - RSA SecurID Token, , WinActivate, %TokenName% - RSA SecurID Token, 
WinWaitActive, %TokenName% - RSA SecurID Token, 
Send, %Pin%
Sleep, 100
Send, {Enter}
Sleep, 100
Send, ^c
Passcode = %Clipboard%
Sleep, 100
Send, {AltDown}{F4}{AltUp}
ExitApp %Passcode%

Utilisez ensuite le script shell suivant côté Linux:

#!/bin/bash
NAME=<the rsa token name>
PIN=<your pin>
HOST=<windows host>
USER=<windows user>
PASSWORD=<windows password>
SESSION=1
PASSCODE=$(ssh $HOST "cmd /c \"C:\Program Files (x86)\Sysinternals\PsExec.exe\" /accepteula \\\127.0.0.1 -u $USER -p $PASSWORD -i $SESSION  C:\\PROGRA~1\\RSASEC~1\\rsa-securid.exe $NAME $PIN" | grep "error code" | sed "s/.*error code \([0-9]*\).*/\1/")
echo -n $PASSCODE | xclip -selection clipboard -in
notify-send --hint=int:transient:1 -i "rsa-securid.png" "Passcode: $PASSCODE"

Lorsque le script a fini de parler à la machine Windows, il mettra le mot de passe dans votre presse-papiers et affichera une petite notification. Donc, fondamentalement, vous appuyez sur un bouton, attendez quelques secondes et le tour est joué, vous pouvez coller le mot de passe.

J'espère que cela pourra aider.

nxmehta
la source
4

Je me suis fait un script pour générer le mot de passe à partir de la ligne de commande, donc je n'ai pas à gérer une application Windows. Il exécute essentiellement wine en arrière-plan, saisit la sortie et l'imprime sur la console.

mariusz
la source