У меня есть компьютеры Windows, Mac и Linux; но на данный момент я могу подключаться к некоторым веб-сайтам моей компании только через машины Windows и Mac, потому что они единственные с программными токенами RSA SecurID. Мне любопытно: можно ли настроить программный токен SecurID для работы в системе Linux (в моем случае Ubuntu)?
Могу ли я использовать программный токен RSA SecurID в Ubuntu Linux?
4 ответа
там нет программного маркера RSA для linux, так что вам нужно будет прибегнуть к использованию Wine (или запуск windows на виртуальной машине). Существует нить здесь где Вин версии и версии РГА подробно, что было обнаружено на работу.
Другой альтернативой было бы получить токен на основе телефона, чтобы вы не зависели от конкретного рабочего стола и flakiness вина. Большинство телефонных платформ поддерживаются.
последние версии Ubuntu предлагают пакета stoken, собственная реализация SecurID с открытым исходным кодом, которая включает CLI, графический интерфейс GTK+ и API библиотеки.
для получения дополнительной информации см. Домашняя страница проекта.
лично я слишком ленив, чтобы забрать свой телефон, открыть приложение RSA, ввести свой PIN-код, а затем ввести его на страницу входа в систему. Я также не люблю иметь дело с вином. Вместо этого я придумал совершенно безумное решение этой проблемы. Я написал сценарий, который будет SSH на машине Windows, запустите приложение RSA, введите свой PIN-код, скопируйте результат и поместите его в буфер обмена вашей локальной машины Linux. Для этого вам нужна машина Windows, к которой вы можете получить доступ через SSH с установленным программным обеспечением RSA. Я использовано freesshd как SSH-сервер в Windows. Вам также понадобится AutoHotKey и PsExec.
скомпилировать следующий АХК скрипт на Windows-машину (я положил полученный exe в C:\Program файлы\по RSA SecurID маркер\ОГА-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:
#!/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 \7.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]*\).*//")
echo -n $PASSCODE | xclip -selection clipboard -in
notify-send --hint=int:transient:1 -i "rsa-securid.png" "Passcode: $PASSCODE"
когда сценарий закончит говорить с машиной Windows, он поместит код доступа в ваш буфер обмена и всплывающее небольшое уведомление. Таким образом, в основном вы нажимаете кнопку, подождите пару секунд, и вуаля вы можете вставить код доступа.
надеюсь, что это поможет.
Я сделал себе скрипт для создания пароля из командной строки, поэтому мне не нужно иметь дело с приложением windows. Он в основном запускает wine в фоновом режиме, захватывает вывод и печатает его на консоль.
Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]