SFTP是否安全地发送用户名和密码?

6

如果您登录到sftp服务器,用户名和密码是否安全地发送?

或者您必须使用基于证书的身份验证来确保整个传输被加密吗?

如果这取决于客户端,则您是否知道Tumbleweed和WinSCP是否可以配置为安全地发送用户名和密码?

3个回答

4

SFTP(Secure File Transfer Protocol)基于SSH(Secure Shell)协议,通过交换密钥建立安全通道(您在首次连接时被提示接受并存储密钥是这个原因吗?)。一旦安全通道建立,所有通过它的通讯都会被加密。用户名和密码通过通道发送,因此它们是安全的。


3

根据您对SFTP的理解,有所不同。对于“真正”的SFTP,即SSH文件传输协议,认证是在SSH层上完成的,因此非常安全。有些人将“SFTP”用作FTP-over-TLS的同义词,在这种情况下,情况取决于-在大多数情况下,在发送用户名和密码之前,命令通道都是加密的(这仅适用于SSL / TLS安全连接,而不是普通FTP!),但也可以明文认证(例如用于调试目的)。


3
SFTP本身不进行身份验证。根据其规范,它假定运行在安全通道上。因此,它期望底层通道处理身份验证(如果有的话)。
那么问题是,您特定的SFTP实例运行在哪个通道上。在99%的情况下,它运行在SSH上(端口22),可以安全地发送用户名和密码。请注意,大多数SFTP客户端(WinSCP肯定)和服务器甚至不支持除SSH之外的任何其他通道。
严格来说,即使是SSH也可以配置为无加密或使用较差的加密。尽管在大多数情况下它是安全的。再次强调,大多数SSH客户端(WinSCP肯定)和服务器不允许无加密的SSH设置。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接