パスワードを暗号化したり設定ファイルを生成したりせずに、BashでRemmina RDP接続を使用できますか?

パスワードを暗号化したり設定ファイルを生成したりせずに、BashでRemmina RDP接続を使用できますか?

Remminaを使用してRDPを介してコンピュータにどのように接続しますか?私はこれができることを理解しています:

remmina -c "rdp://[email protected]"

しかし、望ましくないパスワードを入力する必要があります。

Remminaは次の形式もサポートしているようです。

remmina -c rdp://username:encrypted-password@server

しかし、私のBashスクリプトは完全に自動化する必要があり、対話なしでパスワードを暗号化する方法を見つけることができません。それに加えて、パスワード暗号化は必ずしも利用可能かどうかわからない他のシステムサービスに依存しているようです。remmina --encrypt-password初めて実行すると、次のメッセージのみが印刷されます。

Load modules from /usr/lib64/remmina/plugins
Remmina plugin glibsecret (type=Secret) has been registered, but is not yet initialized/activated. The initialization order is 2000.
The glibsecret secret plugin  has been initialized and it will be your default secret plugin

パスワードを暗号化する代わりに。

また、これに対するプロファイルの作成を避けたいと思います。

ところで、パスワードを暗号化することは、重要ではないVMへのローカル接続にのみ使用されるため、役に立ちません。私がパスワードを使用する唯一の理由は、WindowsがパスワードなしのRDPを許可しないためです。

編集する:

これまで私が考えることができる最善の方法は次のとおりです。

RDP_USER=Administrator
RDP_PASSWORD=admin
RDP_HOST=192.168.122.2

# Run it once because the first time it prints a useless message instead of actually encrypting
echo "$RDP_PASSWORD" | remmina --encrypt-password &>/dev/null

# Run it again, hoping it always works the second time
ENCRYPTED_PASSWORD="$(echo "$RDP_PASSWORD" | remmina --encrypt-password | grep 'Encrypted password: ' | cut -d':' -f2- | tr -d ' ')"

remmina -c "rdp://${RDP_USER}:${ENCRYPTED_PASSWORD}@${RDP_HOST}"

ベストアンサー1

RemminaはDBUSを使用して、説明に従って実行されている他のインスタンスと通信します(アプリケーショントレイの確認)。別のセッションで実行してみてください。

dbus-run-session remmina --encrypt-password <<< "password"

DBUSとの接続が失われた場合でも:

DBUS_SESSION_BUS_ADDRESS= remmina --encrypt-password <<< "password"

グラフィカル環境を実行せずにopensslを使用してこれを実行することもできます。バラよりこの回答

おすすめ記事