情况:我有一个桌面(Debain Sid),我更喜欢开发。 我有一个macbook专业版,因为我们正在开发的Mac,我编译(使用苹果SDK的所有驱动的scons构build,所以xcode的安装,但从来没有使用过)。我们有我们的团队使用的Mercurial回购。 我无法改变这一点。
有一个公共密钥的Mac连接到HG(水银)通过SSH的回购。 因为我只连接到Mac,所以在Debian桌面上没有公共密钥。
问题:如果我坐在mac前面并键入hg pull(本质上是一个ssh连接),那么所有工作都是完美的。 如果我坐在桌面前,进入Mac并运行hg pull,我会得到:
remote: Permission denied (publickey). abort: no suitable response from remote hg!
我想它是因为某种原因在debian系统上寻找一个公钥。 有没有办法禁用这个“键传递/转发?”,我尝试了谷歌search这个,但这几乎是不可能的,因为我充斥着“如何设置pubkey”教程等。
请保存我不必使用该笔记本电脑键盘。
您不希望禁用密钥转发,您希望在从Mac连接到Debian框时启用 SSH代理转发。
从ssh手册页 :
-A启用身份validation代理连接的转发。 这也可以在每个主机的基础上在configuration文件中指定。
这将允许您的Debian主机使用您的Mac上的密钥,当您进入Debian框(通过运行它们的SSH代理(由Zoredache提及,由Apple的钥匙串服务提供))。
请注意,如果您想从Debian框的控制台上运行,您需要将密钥放在Debian框上 – 代理转发function只有在有一系列的SSH连接时才能使用适当的密钥返回到工作代理。
另请参阅: 在MacOSX Snow Leopard中记住的SSH密码