我想使用所有基于密钥的身份验证来连接到多个服务器。其中一些——比如我的 VirtualBox 游乐场网络——在密钥上没有密码,有些像面向公众的密钥上有非常强的密码。在 2 个台式机系统、一台笔记本电脑和偶尔使用 live cd/dvd 之间,我需要一些方法来识别密钥(我有 7 个),并且如果我从活盘。
问题 -
什么是将密钥从某个来源传输到我从实时映像启动的任何机器的安全方法(我们的一些实验室和教室设置为 Mint 18 iso 的网络书籍)并且没有我的文件在 USB 驱动器上进行运动鞋网处理?
有没有明显不好的命名方案的提示(即主机名或函数 mail.example.com.id_rsa 或 webserver.id_rsa)?我一直在使用内部主机名(属性标签或 vmid),但我认为可能有更好的方法......
在您将私钥放到网上的那一刻,您就放弃了王国。
如果您不想随身携带所有钥匙,那么您唯一的选择就是远程存储它们。如果您有权访问服务器(或任何远程计算机),则可以将密钥存储在这台计算机上,使用密钥/密码访问这台计算机,然后检索您的其他凭据。
例如,如果您在 有一个主密钥
/media/storage/master.key
,您可以使用以下命令复制一个远程密钥或者,您可以直接通过 ssh 连接到您的服务器,然后(从该服务器)通过 ssh 连接到您的第二台服务器。更简单,只需通过多个主机 ssh即可。后面这些选项中的任何一个都具有仅将当前系统暴露给一个主密钥的附加优势。如果它遭到破坏(而且你足够快),你只需要担心更改一个主密钥。
Linux Live CD/DVD 上的文件系统不可写,任何创建的数据都存储在内存中,因此一旦会话结束就会消失。即使您可以创建 ssh 密钥并将其存储在内存中,您也必须在每次使用 Live Disc 时创建它。
实现您正在尝试做的事情的更好方法是安装到 USB 闪存驱动器并对其进行加密。这样,文件系统将是可写的,并且更改将是持久的。您只需创建连接到您的服务器的密钥,就可以随时随地使用闪存驱动器。它的功能就像一台安装了 Linux 的便携式计算机。
我不确定我是否理解这个问题,但这里有一个初步的答案:
移动私钥始终是一件敏感的事情。理想情况下,您会希望避免它。在协议方面,使用 SSH 是一个好的开始。您肯定还想在私钥上设置密码(意味着它们是加密的)。
如果您想知道如何将公钥移动到目标主机以登录...好吧,它们是公钥,因此没有被捕获的风险。
cat <file> | nc <host>:<port>
-->nc -l -p <port> > .ssh/id_rsa.pub
只有一个选项。很难为命名方案提供建议。这是一个见仁见智的问题。不过,不要费心去混淆这些名字,你什么也得不到。