Osobiście jestem zbyt leniwy, aby podnieść telefon, otworzyć aplikację RSA, wprowadzić mój kod PIN, a następnie wpisać go na stronie logowania. Nie lubię też zajmować się Wine. Zamiast tego stworzyłem całkowicie szalone rozwiązanie tego problemu. Napisałem skrypt, który prześle SSH do komputera z systemem Windows, uruchom aplikację RSA, wprowadź swój kod PIN, skopiuj wynik i umieść go w schowku na lokalnej maszynie z systemem Linux. Aby to zrobić, potrzebujesz komputera z systemem Windows, do którego można uzyskać dostęp przez SSH z zainstalowanym oprogramowaniem RSA. Użyłem freesshd jako serwera SSH w systemie Windows. Będziesz także potrzebował AutoHotKey i PsExec .
Skompiluj następujący skrypt AHK na komputerze z systemem Windows (wynikowy plik exe umieściłem w folderze 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%
Następnie użyj następującego skryptu powłoki po stronie 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"
Gdy skrypt zakończy rozmowę z komputerem z systemem Windows, umieści hasło w schowku i wyskakuje małe powiadomienie. Więc w zasadzie naciskasz przycisk, odczekaj kilka sekund i voila możesz wkleić hasło.
Mam nadzieję, że to pomaga.