我可以在PuTTy以外的其他地方使用SSH密钥吗(在Mac上)?

时间:2009-02-26 18:14:13

标签: ssh-keys

Bluehost仅推荐使用PuTTy。但是,在Mac中没有任何额外的可见程序可以使用ssh键吗?

我希望能够轻松连接到我的服务器,以便我可以在终端中控制我的服务器。

6 个答案:

答案 0 :(得分:5)

当然!在Unix和OS X上,ssh-keygen命令将生成用于SSH公钥验证的公钥和私钥。调用此命令(在客户端上)的常用方法是:

ssh-keygen -t rsa

此命令将询问您将私钥放在何处;默认位置为~/.ssh/id_rsa,公钥将放置在添加了.pub扩展名的同名文件中(例如:~/.ssh/id_rsa.pub)。该命令还会要求您为私钥创建密码(“密码”);你可以把它留空,因为我没有密码,但我不推荐这种做法。

在客户端计算机上拥有公钥和私钥后,您需要让服务器识别该公钥。如果您具有对服务器的shell访问权限,则可以使用scp上载公钥文件,然后使用ssh在服务器上运行以下命令:

cat id_rsa.pub >> ~/.ssh/authorized_keys 

如果你的托管公司没有给你shell访问权限(虽然Bluehost没有),或者这个程序不起作用,它可能会为你提供一个相同功能的web界面。

一旦您的服务器设置为识别您的公钥,当客户端上的ssh尝试使用您的私钥进行身份验证时,它将允许您在没有密码的情况下进行访问。您可能仍需要输入私钥的密码,但通常只需为每个客户端登录会话执行一次此操作。

答案 1 :(得分:2)

当然,我一直这样做。只需按照these说明生成SSH密钥并将其复制到您的服务器即可。这些说明适用于Mac和Linux。

答案 2 :(得分:2)

SSHKeychain对此非常理想。它在菜单栏上不显眼地生活,并与OS X的Keychain和SSH实现无缝集成。

您需要按照其他答案中的说明使用ssh-keygen,但一旦完成,您就可以使用SSHKeychain来避免一直输入您的私钥密码。

答案 3 :(得分:1)

OS X上应该可以使用OpenSSH;打开一个终端并查看“man ssh”。 SSH密钥在〜/ .ssh中存储(格式与PuTTY不同)。在〜/ .ssh / config中配置可以让您的生活更轻松;你可以说“使用这个$ HOST使用这个$ SHORTNAME”和类似的东西。

答案 4 :(得分:1)

在终端提示符处

$ apropos ssh

您应该获得Mac OS X附带的与ssh相关的所有程序的列表。

使用ssh*工具,您的ssh密钥将存储在~/.ssh下。 PuTTY很不错,但与标准的OpenSSH工具相比,它实际上只对Windows系统有用。

答案 5 :(得分:1)

当然可以!首先运行:

ssh-keygen

然后完成这些步骤。给它一个密码等是个好主意。然后你可以:

cat ~/.ssh/id_rsa.pub

将结果复制粘贴到bluehost公钥textarea中。