Ubuntu 14.04 在 ssh 时不断要求输入密码

Ubuntu 14.04 在 ssh 时不断要求输入密码

我的实验室安装了 ubuntu 14.04 工作站。现在我遇到了 rsa 密钥密码问题。

以下是我的实验室里的东西

  • SVN服务器(12.04): 我已经安装了 svn 服务器,任何想要访问 svn 的人都必须在authorized_keyssvn 服务器的文件中拥有他们的密钥。
  • 家庭服务器(12.04): 它安装/home在客户端上
  • Ubuntu 桌面 12.04: 有超过 5 个客户端连接到我的 ubuntu 实验室(使用多年)
  • Ubuntu 桌面 14.04: 我刚刚安装了 14.04 版本进行测试

这是我的问题,

  • Ubuntu 桌面 12.04它不要求输入密码,但是Ubuntu 14.04是的。每次我使用 SVN 命令时,它都会要求输入密码。
  • 我尝试重新创建 rsa 密钥,但没有作用。
  • 我测试了没有密码的密钥,它没有要求我输入密码。这不是我想要的,因为它不安全。

有任何想法吗?

答案1

您可能会受到这个错误

如果是这种情况,则说明您错误地将 ssh-agent 设置为活动状态。您可以使用命令检查这一点

$ echo $SSH_AUTH_SOCK

如果代理值以 开头/tmp/ssh,则命令ssh-agent行将充当您的代理。

作为一种解决方法,您可以使用旧式 shell 命令

$ ssh-add

将密钥添加到密钥环。但是,这并非适用于所有图形程序。

答案2

我可以通过在“~/.bashrc”中添加以下几行来解决这个问题

eval `gnome-keyring-daemon --start`
用户名=“雷诺”
导出 SSH_AUTH_SOCK="$(ls /run/user/$(id -u $USERNAME)/keyring*/ssh|head -1)"
导出 SSH_AGENT_PID="$(pgrep gnome-keyring)"

答案3

我终于找到了解决这个恼人的问题的方法(Ubuntu server 14.04)。Atlassian 支持- 步骤#4。看起来 ssh-agent 默认正在运行。

打开终端窗口并输入以下命令来查看代理是否正在运行:

ps -e  | grep [s]sh-agent

如果代理未运行,请使用以下命令手动启动它:

ssh-agent /bin/bash

使用 ssh-add 命令将您的新身份加载到 ssh-agent 管理程序中。

$ ssh-add ~/.ssh/id_rsa
Enter passphrase for /Users/manthony/.ssh/id_rsa: 
Identity added: /Users/manthony/.ssh/id_rsa (/Users/manthony/.ssh/id_rsa)

用于ssh-add列出代理正在管理的密钥。

$ ssh-add -l

相关内容