密钥管理系统 简述密钥管理的层次结构


密钥管理系统 简述密钥管理的层次结构

文章插图
【密钥管理系统 简述密钥管理的层次结构】常用开源工具的节省时间方便方式 。-- Ben Nuttall(作者)
我经常使用 SSH 。我发现自己每天都要登录多个服务器和树莓派(与我位置在于同一房间 。并接入互联网) 。我有许多设备需要访问 。并且获得访问权限的要求也不同 。因此 。除了使用各种 ssh / scp 命令选项之外 。我还一定维护一个包含所有连接详细信息的配置文件 。
随着期间的推移 。我发现了一些节省时间的技术和工具 。你可能也会看到它们有用 。
SSH 密钥SSH 密钥是一种在不使用密码的情况下认证 SSH 连接的方法 。可以用来加快访问速度或作为一种安全措施(如果你关闭了密码访问权限并确保仅允许授权的密钥) 。要创建 SSH 密钥 。请运行以下命令:
$ ssh-keygen这将在 ~/.ssh/ 中创建一个密钥对(公钥和私钥) 。将私钥(id_rsa)保留在 PC 上 。切勿共享 。你可以与其他人共享公钥(id_rsa.pub)或将其放置在其他服务器上 。
ssh-copy-id如果我在家中或公司工作时使用树莓派 。则倾向于将 SSH 设置保留为默认设置 。因为我不担心内部信任网络上的安全保障性 。并且通常将 SSH 密钥(公钥)复制到树莓派上 。以避免每次都使用密码进行身份考证 。为此 。我使用 ssh-copy-id 命令将其复制到树莓派 。这会自动将你的密钥(公钥)添加到树莓派:
$ ssh-copy-id pi@192.168.1.20在生产服务器上 。我倾向于关闭密码身份考证 。仅允许授权的 SSH 密钥登录 。
ssh-import-id另一个差不多的工具是 ssh-import-id 。你可以使用此方法通过从 GitHub 导入密钥来授予你自己(或其他人)对计算机或服务器的访问权限 。例如 。我已经在我的 GitHub 帐户中注册了各个 SSH 密钥 。因此无需密码即可推送到 GitHub 。这些公钥是有效的 。因此 ssh-import-id 可以使用它们在我的任何计算机上授权我:
$ ssh-import-id gh:bennuttall我还可以使用它来授予其他人访问服务器的权限 。而无需询问他们的密钥:
$ ssh-import-id gh:waveform80storm我还使用了名为 Storm 的工具 。该工具可帮助你将 SSH 连接添加到 SSH 配置中 。因此你不必记住这些连接细节信息 。你可以使用 pip 安装它:
$ sudo pip3 install stormssh然后 。你可以使用以下命令将 SSH 连接信息添加到配置中:
$ storm add pi3 pi@192.168.1.20然后 。你可以只使用 ssh pi3 来获得访问权限 。差不多的还有 scp file.txt pi3: 或 sshfs pi pi3: 。
你还可以使用更多的 SSH 选项 。例如端口号:
$ storm add pi3 pi@192.168.1.20:2000你可以参考 Storm 的 文档 轻松列出、搜索和编辑已保存的连接 。Storm 实际所做的只是管理 SSH 配置文件 ~/.ssh/config 中的项目 。一旦知道了它们是如何存放的 。你就可以随便自由选择手动编辑它们 。配置中的示例连接如下所示:
Host pi3 user pi hostname 192.168.1.20 port 22结论从树莓派到大型的云基本设施 。SSH 是系统管理的重要工具 。熟悉密钥管理会很方便 。你还有其他 SSH 技术要添加吗?我希望你在评论中分享他们 。
via:

    推荐阅读