首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >交换系统服务器ssh-键安全吗?

交换系统服务器ssh-键安全吗?
EN

Server Fault用户
提问于 2015-09-08 19:52:11
回答 3查看 370关注 0票数 2

与通过电子邮件交换ftp/sftp凭据不同,通过电子邮件交换系统ssh密钥是否更安全?如果一个人没有物理ssh私有文件,黑客能够通过只知道公共ssh键字符串就可以访问服务器吗?

EN

回答 3

Server Fault用户

回答已采纳

发布于 2015-09-08 19:53:48

公钥密码体制的目的是在不影响系统安全性的前提下,对公钥进行广泛的公开。因此,不,如果黑客能够拦截服务器的公钥,那么试图获得对系统的访问是没有好处的。

票数 7
EN

Server Fault用户

发布于 2015-09-08 22:23:09

正如在“妇女回答”中已经提到的,如果攻击者拦截了密钥,您是安全的。这就是非对称密码学的目的。

但是,如果攻击者不仅能够拦截密钥,而且还能够操纵您的通信通道,那么他就可以用自己的密钥替换发送的公钥,并访问您的系统。它通常被称为身份验证问题。

如果你疑神疑鬼,并且知道对方的声音,这会给你发钥匙,你也应该核实手机上的钥匙指纹,因为语音通讯比电子邮件难得多。

票数 3
EN

Server Fault用户

发布于 2015-09-08 23:17:00

是的,共享服务器的公钥是完全安全的,它用于识别服务器和处于中间保护中的man。一旦您“接受”了公钥,您的客户将记住它,并警告您,如果它改变。(在中间人攻击的情况下,情况会是这样。)

根据rfc4255:http://www.ietf.org/rfc/rfc4255.txt的说法,通常我们可以更进一步,在DNS中发布密钥的指纹。

这允许客户端在实际连接到ssh守护进程通过端口22接收公钥之前检索密钥的指纹。

如果指纹与服务器提供的公钥匹配,则连接将继续。

这是一些关于强制执行的基本说明。https://simon.butcher.name/archives/2011/01/16/SSH-key-fingerprints-in-DNS

对于私钥,无论是由您生成的还是由您的客户生成的,都应该绝对保密,并使用强大的密码进行存储。

通常,我建议在SSH上禁用密码,使用/etc/ssh/sshd_config选项:PasswordAuthentication no

这将只允许具有~/..ssh/authorized_ keys中列出的私钥的客户端连接。是的,您仍然可以在sudo/su提示符下使用密码,它根本不允许您在SSH上使用用户名和密码登录。需要私钥。

如果你想不出一个好的密码,我建议你停下来。

(是的,密码可能包含空格,比如“高贵姐妹保护”(Noble Sister protection )之类的内容可以很容易记住,而且仍然携带足够的熵来进行足够的保护--参见XKCD漫画#936,题为“密码强度”。)

当私钥与密码相关联时,客户端保存的.ppk或id_rsa文件将被加密。一般的想法是,您(服务器管理员)永远不会知道用于加密客户端密钥的密码/密码。一旦客户端解锁/解密密钥,将其作为数学问题提交给您(服务器),身份验证就会继续进行。根本没有办法从服务器上恢复客户端的密码(除非他们愚蠢到上传自己的私钥--不要这样做!)使用SSH代理转发,或在windows上使用putty的pageant.exe密钥代理。)

票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/720997

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档