相关疑难解决方法(0)

告诉 SSH 使用图形提示输入密钥密码

如何强制 SSH 使用图形提示(例如 GTK)而不是使用终端的标准提示请求密码?

我试过设置,SSH_ASKPASS=/usr/bin/ssh-askpass但似乎没有效果。

问题是 openssh 文档说的事实

如果 ssh没有与之关联的终端,但设置了 DISPLAY 和 SSH_ASKPASS,它将执行 SSH_ASKPASS 指定的程序并打开 X11 窗口以读取密码。

在命令行启动,在我的情况下的结果的SSH git push具有与其相关联的终端,所以SSH_ASKPASS逻辑似乎被忽略。

请注意,我指的不是ssh-add,而是针对存在密钥对但受密码保护的主机的通用 ssh 调用。

ssh

48
推荐指数
4
解决办法
8万
查看次数

即使它是从终端运行的,我能否让 SSH 使用 askpass 程序?

man ssh 说:

SSH_ASKPASS
   If  ssh needs a passphrase, it will read the passphrase from the
   current terminal if it was run from a terminal.  If ssh does not
   have  a  terminal associated with it but DISPLAY and SSH_ASKPASS
   are set, it will execute the program  specified  by  SSH_ASKPASS
   and open an X11 window to read the passphrase.
Run Code Online (Sandbox Code Playgroud)

我希望 SSH 使用 askpass 程序,即使它是从终端运行的。

有时,我必须连接到服务器,在那里显示密码提示会有一些延迟(可能是由于网络问题,也可能是由于尝试反向 DNS 查找,……)。我很生气并切换到其他东西,而忘记了尝试的连接。(插入关于金鱼注意力跨度的笑话。)当我终于回到它时,提示超时,即使是正确的密码也会导致连接关闭。

密钥将是一种解决方案,但并非我使用的每个系统都有我常用的 SSH 密钥。不过我一般用的是Ubuntu系统,Ubuntu默认安装了SSH askpass程序。

但是,如果弹出一个询问通行证窗口,我会立即意识到这一点。这对我来说是一个足够好的妥协,只要我能让它工作。

linux ssh openssh

9
推荐指数
2
解决办法
5336
查看次数

标签 统计

ssh ×2

linux ×1

openssh ×1