GNOME Keyring 不记得 autosshfs 的身份验证

GNOME Keyring 不记得 autosshfs 的身份验证

我正在运行 Ubuntu 11.10 并使用自动sshfs,使用用户的 SSH 配置和密钥为每个用户自动挂载 SSHFS。这很好用,但 Gnome Keyring 不记得身份验证,并且在重新挂载时(ssh 超时后)不断提示输入密钥的密码。

我的 RSA 密钥位于里面,~/.ssh具有非常严格的0400权限。我已将私钥添加到密钥环中,ssh-add并将公钥添加到authenticated_keys。我可以确认它们在密钥环中,因为当我运行时它们会显示出来ssh-add -l

片段auth.log如下:

Oct  5 14:01:34 flax sudo:     root : TTY=unknown ; PWD=/ ; USER=oddy ; COMMAND=/bin/bash -c \/usr\/local\/sbin\/autosshfs-ssh remotehost\.com;
Oct  5 14:13:45 flax sudo:     oddy : TTY=pts/0 ; PWD=/home/oddy ; USER=root ; COMMAND=/bin/cat /var/log/auth.log
Oct  5 14:14:51  sudo: last message repeated 2 times
Oct  5 14:17:01 flax CRON[5862]: pam_unix(cron:session): session opened for user root by (uid=0)
Oct  5 14:17:01 flax CRON[5862]: pam_unix(cron:session): session closed for user root
Oct  5 14:36:36 flax login[1309]: pam_unix(login:session): session opened for user oddy by LOGIN(uid=0)
Oct  5 14:38:11 flax login[1309]: pam_unix(login:session): session closed for user oddy

我找不到任何表明它失败的东西。通过控制台 SSH 连接到远程主机不会提示输入密码,因此密钥环确实适用于该特定密钥,只是不能与 autosshfs 一起使用。

有任何想法吗?

答案1

请注意,autosshfs 使用钥匙链设置环境变量 st ssh 可以找到ssh-agent及其身份验证套接字。如果您没有告知keychain管理要使用的密钥,sshfs它将要求您输入密码。检查 的输出keychain -q --eval,这就是autosshfs将要运行的内容。

以下是我之前遇到的问题的一些调试提示:

  • 我假设您.ssh/config指定了用于远程主机的密钥?
  • .ssh您是否有未添加到 ssh 可能提供的钥匙串中的钥匙(因此要求您解锁)?
  • 当您尝试登录使用 autosshfs 的 shell 时,您是否使用了相同的主机名(例如,您使用 autosshfs 的别名并在 shell 中尝试了完整的主机名)?
  • ssh-agent当 autosshfs 失败/要求输入密码时,您是否已验证它仍在运行且仍已加载密钥?

相关内容