【发布时间】:2012-05-15 16:43:13
【问题描述】:
如果您登录到 sftp 服务器, 用户名和密码是否安全发送?
或者您是否必须进行基于证书的身份验证以确保整个传输被加密?
如果这取决于客户端,那么您知道是否可以将 Tumbleweed 和 WinSCP 配置为安全地发送用户名和密码?
【问题讨论】:
-
几乎没有编程相关;投票关闭。但是,是的,如果 SSH 协议不加密密码以及所有其他流量,那么它们将毫无意义。
标签: sftp
如果您登录到 sftp 服务器, 用户名和密码是否安全发送?
或者您是否必须进行基于证书的身份验证以确保整个传输被加密?
如果这取决于客户端,那么您知道是否可以将 Tumbleweed 和 WinSCP 配置为安全地发送用户名和密码?
【问题讨论】:
标签: sftp
SFTP 通过 SSH,通过交换密钥建立安全隧道(回想一下,当您第一次连接时,系统会提示您接受并存储密钥吗?)。一旦建立了安全隧道,通过它的所有通信都会被加密。用户名和密码通过隧道发送,因此它们是安全发送的。
【讨论】:
取决于您所说的 SFTP。对于代表 SSH 文件传输协议的“真实”SFTP,身份验证是在 SSH 层上完成的,并且是安全的。有些人使用“SFTP”作为 FTP-over-TLS 的同义词,在这种情况下它取决于 - 在大多数情况下,命令通道在发送用户名和密码之前被加密(这仅适用于 SSL/TLS 安全连接,不是普通的 FTP!),但可以以明文形式进行身份验证(例如,出于调试目的)。
【讨论】:
SFTP 本身根本不进行身份验证。根据其规范assumes that it runs over a secure channel。因此,它期望底层通道处理身份验证(如果有)。
所以问题是,您的特定 SFTP 实例运行在哪个通道上。在 99% 的情况下,它通过 SSH(端口 22)运行,安全地发送用户名和密码。请注意,大多数 SFTP 客户端(绝对是 WinSCP)和服务器甚至不支持 SSH 以外的任何其他通道。
严格来说,即使是 SSH 也可以配置无加密或劣质加密。尽管在大多数情况下它也是安全的。同样,大多数 SSH 客户端(绝对是 WinSCP)和服务器不允许无加密的 SSH 设置。
【讨论】: