【发布时间】:2013-09-12 08:36:58
【问题描述】:
我必须检查一些代码并在我的 Eclipse 中运行它。我在 Windows 上工作。我有网址:
svn+ssh://somename1@subversion.host.com/GoogleCloud/10.0.0
下面是我尝试使用私钥身份验证的 Eclipse 屏幕截图
但不知何故,我不确定我应该生成什么密钥以及如何生成它?在生成之后我应该把那个文件放在哪里?
谁能给我详细介绍一下我该怎么做?谢谢
【问题讨论】:
我必须检查一些代码并在我的 Eclipse 中运行它。我在 Windows 上工作。我有网址:
svn+ssh://somename1@subversion.host.com/GoogleCloud/10.0.0
下面是我尝试使用私钥身份验证的 Eclipse 屏幕截图
但不知何故,我不确定我应该生成什么密钥以及如何生成它?在生成之后我应该把那个文件放在哪里?
谁能给我详细介绍一下我该怎么做?谢谢
【问题讨论】:
您需要为 SSH 生成一个密钥对,然后将公钥添加到您尝试登录的帐户。
要在 Windows 上生成密钥对(假设来自您的屏幕截图),您可以从 PuTTY website 下载 puttygen.exe
运行puttygen.exe,在底部您将看到一个名为Parameters 和SSH-2 RSA 的框架默认选中(如果所选值不是SSH-2 RSA 或SSH-2 DSA,请选择其中一个)。还应该有一个Number of bits in a generated key 参数。将值更改为至少 2048(编写时的默认值为 1024)。
正确设置这些值后,单击Generate 按钮。 Puttygen 将指导您将鼠标移到空白区域上。它使用这些鼠标移动来播种随机生成器。移动鼠标直到进度条完全填满。
生成密钥对后,将出现一个标记为Public key for pasting into OpenSSH authorized_keys file: 的文本字段。此窗口包含您需要附加到目标计算机上的 ~/.ssh/authorized_keys 文件的 PUBLIC KEY。整个键是一行文本,应该这样附加。
接下来,您需要将 PRIVATE KEY 保存到本地计算机。为此,您首先输入密码并在标记为Key passphrase 和Confirm passphrase 的文本字段中确认,然后单击Save private key。将文件保存在文件系统中您会记住的位置。
安全提示:您刚刚保存的文件是私钥,应小心处理。如果私钥被暴露,攻击者可以使用它以您的身份登录。如果您觉得您的私钥已被泄露,您应该从使用该密钥的~/.ssh/authorized_keys 文件中删除相应的PUBLIC KEY,并生成一个新的密钥对。
完成上述所有操作后,您就可以使用刚刚保存的 PRIVATE KEY 来验证您的 svn+ssh 会话。使用屏幕截图中的窗口,浏览密钥文件并输入您在其上设置的密码。确认 SSH 端口号正确(22 为默认端口),然后单击OK。您现在应该已经登录了。
【讨论】: