问题 如果客户端A使用TLS 1.2协议,而客户端B使用SFTP协议(SSH), 客户端A或B是否可以在它们之间发送文件而不会发生安全冲突,还是它们需要使用相同的协议?
答案 0 :(得分:0)
(SFTP是SSH协议之上的一层)
SSH协议和TLS无关。每个都是位于TCP之上的一层。两者都具有相同的功能:创建用于安全传输任意字节流的安全通道/隧道。
如果客户端正在“说” TLS,则它必须与服务器在“说” TLS协议的服务器端。
同样,如果客户端使用“ SSH”,则只能与使用“ SSH”的服务器进行对话。这就是“协议”的含义-一套明确定义的通信规则。使用一种协议的客户端无法与使用另一种协议的服务器进行通信。 FTP客户端无法与使用IMAP协议的IMAP服务器使用FTP。毫无意义,就像TLS客户端与SSH服务器对话一样毫无意义。
但是,可以通过SSH隧道TLS。 参见:https://www.example-code.com/csharp/socket_tlsSshTunnel.asp
或者您可以通过SSH隧道传输其他协议。
参见:https://www.example-code.com/csharp/sshTunnel.asp
您还可以执行其他操作,例如通过HTTP运行SSH: https://www.example-code.com/csharp/sftp_http_proxy.asp