Kann ich ein RSA SecurID-Software-Token unter Ubuntu Linux verwenden?

13

Ich habe Windows-, Mac- und Linux-Computer. Derzeit kann ich jedoch nur über Windows- und Mac-Computer eine Verbindung zu einigen Websites meines Unternehmens herstellen, da nur diese über RSA SecurID-Software-Token verfügen. Ich bin neugierig: Ist es möglich, ein SecurID-Software-Token für die Verwendung auf einem Linux-System (in meinem Fall Ubuntu) einzurichten?

Dan Tao
quelle
Ist hier noch was los? Eine Art Single-Sign-On-System zusätzlich zu den Token?
Teuer
@PriceChild: Um ehrlich zu sein, glaube ich nicht zu verstehen, wie RSA-Token gut genug funktionieren, um überhaupt das zu bekommen, was Sie verlangen. Ich weiß nur, dass ich für den Zugriff auf bestimmte Websites in meinem Unternehmen in der Regel die von meinem Software-Token angezeigte Zeichenfolge in ein Eingabefeld eingeben muss. Dann kann ich mich einloggen. Da ich auf meinem Linux-Rechner kein solches Token habe, sehe ich die Websites als unzugänglich an. Vielleicht ist das grob ungenau; Wie gesagt, ich verstehe das ganze System nicht gut genug, um es zu kennen.
Dan Tao

Antworten:

8

Es gibt kein RSA-Software-Token für Linux, daher müssen Sie Wine verwenden (oder Windows in einer virtuellen Maschine ausführen). Es gibt hier einen Thread , in dem die Wine-Version und die detaillierte RSA-Softwareversion als funktionsfähig befunden wurden.

Eine andere Alternative wäre, ein telefonbasiertes Token zu erhalten, damit Sie nicht auf einen bestimmten Desktop und die Flakigkeit von Wein angewiesen sind. Die meisten Telefonplattformen werden unterstützt.

Paul
quelle
2
Die telefonische Lösung war die ganze Zeit direkt vor mir und ich war zu dumm, um es zu bemerken!
Dan Tao
Siehe die Antwort unten in Bezug auf Stoken . Ich habe es versucht und bin sehr beeindruckt. Was die Wine + RSA-Software betrifft, kann ich nicht einmal die neueren Versionen installieren oder ausführen, ohne dass sie abstürzen und / oder einfrieren (obwohl ich Wine Staging 2.2 verwende). Nur RSA SecurID v410 scheint zu funktionieren und das ist sehr klobig.
Jonathan Neufeld
16

Aktuelle Versionen von Ubuntu bieten das Stoken-Paket , eine native Open-Source-SecurID-Implementierung, die eine CLI, eine GTK + -GUI und eine Bibliotheks-API enthält.

Weitere Informationen finden Sie auf der Projekthomepage .

Kevin Cernekee
quelle
Dies ist ein sehr beeindruckendes Produkt. Es sieht professionell aus, ist einfach zu bedienen und erfordert nur sehr wenig Konfiguration oder Overhead. Die Windows RSA SecurID funktioniert für mich hervorragend, ist sehr schwer und geht in Bezug auf die Benutzeroberfläche für ein so einfaches Tool weit über Bord. Diese zusätzliche Komplexität macht es extrem spröde und neuere Versionen funktionieren nicht.
Jonathan Neufeld
9

Persönlich bin ich zu faul, um mein Telefon abzuholen, die RSA-App zu öffnen, meine PIN einzugeben und sie dann auf der Anmeldeseite einzugeben. Ich beschäftige mich auch nicht gern mit Wein. Also habe ich stattdessen eine völlig verrückte Lösung für dieses Problem geschaffen. Ich habe ein Skript geschrieben, das SSH auf einem Windows-Computer ausführt, die RSA-App startet, Ihre PIN eingibt, das Ergebnis kopiert und in die Zwischenablage Ihres lokalen Linux-Computers kopiert. Dazu benötigen Sie einen Windows-Rechner, auf den Sie mit installierter RSA-Software über SSH zugreifen können. Ich habe freesshd als SSH-Server in Windows verwendet. Sie benötigen außerdem AutoHotKey und PsExec .

Kompilieren Sie das folgende AHK-Skript auf dem Windows-Computer (ich habe die resultierende Exe unter C: \ Programme \ RSA SecurID Software Token \ rsa-securid.exe abgelegt):

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%

Verwenden Sie dann das folgende Shell-Skript auf der Linux-Seite:

#!/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"

Wenn das Skript mit dem Windows-Computer fertig ist, wird der Passcode in Ihre Zwischenablage eingefügt und eine kleine Benachrichtigung eingeblendet. Im Grunde genommen drückst du also einen Knopf, wartest ein paar Sekunden und voila kannst du den Passcode einfügen.

Ich hoffe, das hilft.

nxmehta
quelle
4

Ich habe mir ein Skript erstellt , um den Passcode über die Befehlszeile zu generieren, sodass ich mich nicht mit einer Windows-App befassen muss. Im Grunde läuft Wein im Hintergrund, erfasst die Ausgabe und druckt sie auf die Konsole.

Mariusz
quelle