使用亚马逊的 EC2 服务,它在各方面都很棒。
唯一的问题是,我无法使用他们自动生成的 SSH 密钥登录。我不知道问题是什么,但不想再进一步研究,因为我需要回去处理我的应用程序。...
总结;那么,SSH 密钥比 20+字符长的密码强得多,这会带来哪些安全隐患?据我所知,SSH 密钥主要用于防止暴力攻击 - 但是如果我创建了一个包含 20 或 64+ 个字符的用户名和密码...使用密钥会安全多少?
答案1
嗯,典型的 SSH 密钥大约为 1024 或 2048 字节。这比您在合理时间内输入的任何密码都要长。ssh 密钥的全部优势在于您的密钥密码(您确实在 ssh 密钥上设置了密码,对吗?)实际上是密钥更高安全性的代理。
密钥的一大优势是您的密码永远不会通过网络。一种相对常见的攻击是安装带有木马的 ssh 服务器;当人们输入密码时,经过修改的服务器会记录这些密码并将其发送到其他地方。这是一个特别的问题,因为这些相同的密码通常用于访问许多系统/服务。
ssh 密钥在很大程度上消除了这个问题。
SSH 密钥通常很容易设置。您可以将公钥粘贴到远程系统的相应文件中authorized_keys
,然后配置本地 SSH,以便在连接时显示相应的私钥。如果您遇到某些特定问题,我们可能可以帮助您解决问题。
答案2
20 个字符的密码最多有 640 位熵(4 字节字符,20 个字符),这是假设使用完全随机的 Unicode 密码(涉及 4 字节字符)。对于 Ye Olde 8 位 ASCII,该值接近 140 位。而且大多数密码都不是完全随机的。
生成的 SSH 密钥对比这长得多,通常在 1024 到 2048 位之间但不限于此,并且可以通过密码保护来获得额外的保护。
答案3
实际上,如果系统有合理的速率限制,那么使用大小写、数字和符号的 20 个以上字符的密码实际上是牢不可破的。SSH 密钥是显著地更难破解,毫无疑问它们更安全。如果系统没有速率限制,你就要冒很大的风险(我不会冒这个风险,即使是我的家用电脑)。但有时你只需要足够好。还有其他因素需要考虑,一定要使用唯一的密码,并应用其他正常的密码预防措施