我可以在Ubuntu Linux上使用RSA SecurID软件令牌吗?


14

我有Windows,Mac和Linux计算机;但目前我只能通过Windows和Mac计算机连接到我公司的某些网站,因为它们是唯一使用RSA SecurID软件令牌的网站。我很好奇:是否可以设置SecurID软件令牌以在Linux系统上工作(在我的情况下为Ubuntu)?


这里还有其他事情吗?除了令牌之外,还有某种单点登录系统吗?
昂贵的

@PriceChild:老实说,我不认为我了解RSA令牌的工作原理,足以满足您的要求。我所知道的是,通常,要访问公司内部的某些站点,我必须在输入框中输入软件令牌显示的字符串。然后,我可以登录。由于我的Linux机器上没有这样的令牌,因此我认为这些网站无法访问。也许那是很不准确的。就像我说的那样,我不太了解整个系统。
丹涛

Answers:


8

没有针对Linux的RSA软件令牌,因此您将需要使用Wine(或在虚拟机中运行Windows)。这里有一个线程可以其中找到Wine版本和RSA Software版本的详细信息。

另一种选择是获取基于电话的令牌,这样您就不必依赖于特定的桌面和酒的香气。支持大多数电话平台。


2
一直以来,基于电话的解决方案就摆在我眼前,我太愚蠢了,没注意到!
丹涛

请参阅以下有关stoken的答案,我已经尝试过了,印象深刻。至于Wine + RSA软件,即使没有崩溃和/或冻结,我什至无法安装或运行较新的版本(尽管我使用的是Wine Stage 2.2)。似乎只有RSA SecurID v410可以正常工作,而且非常笨拙。
乔纳森·诺伊费尔德

16

Ubuntu的最新版本提供了stoken软件包,这是一个本地开源SecurID实现,其中包括CLI,GTK + GUI和库API。

有关更多信息,请参见项目主页


这是一个非常令人印象深刻的产品。它看起来很专业,易于使用,并且几乎不需要配置或开销。对于我来说,Windows RSA SecurID非常有效,它非常笨重,并且相对于UI这样简单的工具而言,它已经过时了。这种额外的复杂性使其非常脆弱,而新版本将无法使用。
乔纳森·诺伊菲尔德

9

就个人而言,我懒得拿起电话,打开RSA应用程序,输入我的PIN,然后将其键入登录页面。我也不喜欢与葡萄酒打交道。因此,我为这个问题创建了一个完全疯狂的解决方案。我编写了一个脚本,该脚本将SSH到Windows计算机中,启动RSA应用程序,输入PIN,复制结果,然后将其放入本地Linux计算机的剪贴板中。为此,您需要一台Windows计算机,该计算机可以在安装了RSA软件的情况下通过SSH访问。我将freesshd用作Windows中的SSH服务器。您还将需要AutoHotKeyPsExec

在Windows计算机上编译以下AHK脚本(我将生成的exe放在C:\ Program Files \ RSA SecurID软件令牌\ 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%

然后在Linux端使用以下shell脚本:

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

当脚本与Windows计算机通信完成后,它将把密码放入剪贴板并弹出一个小通知。因此,基本上,您只需按一下按钮,等待几秒钟,然后就可以粘贴密码了。

希望能有所帮助。


4

我已经为自己编写了一个脚本,可以从命令行生成密码,因此不必处理Windows应用程序。它基本上在后台运行wine,获取输出并将其打印到控制台。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.