如何通过命令行输入默认密钥环密码?

Jer*_*des 12 command-line remote-access openssh

有没有办法使用命令行输入默认的密钥环密码?

例如:

您有一个设置为自动登录的 Ubuntu 10.10 的远程设置。您不想删除密钥环密码。

好吧,系统启动并自动登录,然后现在要求输入密钥环密码,此时您可以创建 ssh 连接,但不能远程桌面。

此时您可以做什么来输入密钥环密码?

此外,为了更好地说明,这是来自使用命令行的远程连接。

Ste*_*zzo 11

感谢python-gnomekeyring,这相对容易:

python -c "import gnomekeyring;gnomekeyring.unlock_sync(None, 'my password');"
Run Code Online (Sandbox Code Playgroud)

或者作为一个适当的脚本:

#!/usr/bin/env python
import gnomekeyring
gnomekeyring.unlock_sync(None, 'my password');
Run Code Online (Sandbox Code Playgroud)

我认为您不需要安装该软件包。但是尝试一下也无妨。


请记住,将密码存储在硬盘上会带来巨大的安全风险。你应该改用这个:

#!/usr/bin/env python

import gnomekeyring
import getpass

gnomekeyring.unlock_sync(None, getpass.getpass('Password: '));
Run Code Online (Sandbox Code Playgroud)

例如,您可以保存此脚本,unlock-keyring.py然后执行以下操作:

sudo mv unlock-keyring.py /usr/bin/unlock-keyring
sudo chmod a+x /usr/bin/unlock-keyring
Run Code Online (Sandbox Code Playgroud)

从那时起,您可以随时unlock-keyring输入密码并提示您输入密码。不要对包含您的密码的版本执行此操作

您可以替换None为您的钥匙圈的名称,例如'session',如果您想解锁一个不是默认的钥匙圈。


我很难正确测试它,所以如果它不起作用,请告诉我,我会立即查看它。也让我知道它是否有效:-)

  • 这个软件包不再随 Ubuntu 一起提供:( (2认同)