如何在Linux上最妥善地管理加密密钥?(3)

但是管理私钥怎么样?如果你搜索一下,找不到许多软件方案,我在上面提到了原因;私钥放在你的硬驱上,管理软件可能无法提供太多的额外安全。但是我确实使用这种方法来管理密钥:

首先,我在.ssh/config文件中有多个Host项。我有一个项用于登录的主机,但是有时候我有多个项用于单个主机。如果我要多次登录,就会出现这种情况。我有两种不同的机制来登录托管git软件库的那台服务器;一种完全用于git,另一种用于一般用途的bash访问。用于git的那种登录大大限制���那台机器上的权限。还记得我前面说的放在远程开发机器上的git密钥吗?虽然那些密钥可以用来登录进入到我的其中一台服务器,但使用的帐户受到了严重限制。

其次,大多数这些私钥包括通行码。(如果遇到非要多次输入通行码,可以考虑使用ssh-agent。)

第三,我确实有一些服务器想更认真一点地得到保护,我在Host文件中没有对应的项。这更像是社会工程学层面,因为密钥文件仍在那里,但是需要入侵者花更长一点的时间来找到密钥文件,弄清楚对哪台机器下手。那种情况下,我只要手动输入长长的ssh命令(这其实不是那么差劲)。

你能看到,我并不使用任何特殊软件来管理这些私钥。

没有一应俱全的做法

我们偶尔会接到读者抛出的问题,问有什么好的软件可用于管理密钥。但是不妨先冷静想一想。这个问题其实需要用不同的方式来表达,因为根本不存在一应俱全的解决方案。你应该根据自己的情况提出问题。你只是试图找个地方来存储密钥文件?还是在寻找一种办法来管理多个用户,每个用户有各自的公钥,这些公钥又需要插入到authorized_keys文件?

我在这篇文章中介绍了基本方面,但愿现在你能明白,只有你提出了正确的问题,才知道如何管理密钥,以及应该寻找什么样的软件(如果你果真需要额外软件的话)。

提高Ubuntu的SSH登陆认证速度的办法

开启SSH服务让Android手机远程访问 Ubuntu 14.04 

如何为Linux系统中的SSH添加双重认证

在 Linux 中为非 SSH 用户配置 SFTP 环境

Linux 上SSH 服务的配置和管理

SSH入门学习基础教程

SSH免密码登录详解 

英文:How to Best Manage Encryption Keys on Linux

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/2135ffdd4b7b7b66f7092a052599cd40.html