SSH–密钥管理工具

我经常使用SSH。我发现自己每天都要登录多个服务器和树莓派(与我位于同一房间,并接入互联网)。我有许多设备需要访问,并且获得访问权限的要求也不同,因此,除了使用各种ssh/scp命令选项之外,我还必须维护一个包含所有连接详细信息的配置文件。

随着时间的推移,我发现了一些省时的技巧和工具,你可能也会发现它们有用。

SSH–密钥管理工具

SSH密钥

SSH密钥是一种在不使用密码的情况下认证SSH连接的方法,可以用来加快访问速度或作为一种安全措施(如果你关闭了密码访问权限并确保仅允许授权的密钥)。要创建SSH密钥,请运行以下命令:

$ssh-keygen

这将在~/.ssh/中创建一个密钥对(公钥和私钥)。将私钥(id_rsa)保留在PC上,切勿共享。你可以与其他人共享公钥(id_rsa.pub)或将其放置在其他服务器上。

ssh-copy-id

如果我在家中或公司工作时使用树莓派,则倾向于将SSH设置保留为默认设置,因为我不担心内部信任网络上的安全性,并且通常将SSH密钥(公钥)复制到树莓派上,以避免每次都使用密码进行身份验证。为此,我使用ssh-copy-id命令将其复制到树莓派。这会自动将你的密钥(公钥)添加到树莓派:

$ssh-copy-idpi@192.168.1.20

在生产服务器上,我倾向于关闭密码身份验证,仅允许授权的SSH密钥登录。

ssh-import-id

另一个类似的工具是ssh-import-id。你可以使用此方法通过从GitHub导入密钥来授予你自己(或其他人)对计算机或服务器的访问权限。例如,我已经在我的GitHub帐户中注册了各个SSH密钥,因此无需密码即可推送到GitHub。这些公钥是有效的,因此ssh-import-id可以使用它们在我的任何计算机上授权我:

$ssh-import-idgh:bennuttall

我还可以使用它来授予其他人访问服务器的权限,而无需询问他们的密钥:

$ssh-import-idgh:waveform80

storm

我还使用了名为Storm的工具,该工具可帮助你将SSH连接添加到SSH配置中,因此你不必记住这些连接细节信息。你可以使用pip安装它:

$sudopip3installstormssh

然后,你可以使用以下命令将SSH连接信息添加到配置中:

$stormaddpi3pi@192.168.1.20

然后,你可以只使用sshpi3来获得访问权限。类似的还有scpfile.txtpi3:或sshfspipi3:。

你还可以使用更多的SSH选项,例如端口号:

$stormaddpi3pi@192.168.1.20:2000

你可以参考Storm的文档轻松列出、搜索和编辑已保存的连接。Storm实际所做的只是管理SSH配置文件~/.ssh/config中的项目。一旦了解了它们是如何存储的,你就可以选择手动编辑它们。配置中的示例连接如下所示:

Hostpi3

userpi

hostname192.168.1.20

port22

结论

从树莓派到大型的云基础设施,SSH是系统管理的重要工具。熟悉密钥管理会很方便。你还有其他SSH技巧要添加吗?我希望你在评论中分享他们。

© 版权声明
THE END
喜欢就支持一下吧
点赞3
分享
评论 抢沙发

请登录后发表评论