我尝试连接到我的SFTP服务器(prosftpd)但是当我检查其日志时,我发现:
2018-04-19 11:00:48,303 mod_sftp / 0.9.9 [18488]:找不到共享的客户端到服务器MAC算法(客户端发送' hmac-sha1,hmac-sha1-96,hmac -md5,hmac-md5-96,hmac-ripemd160,hmac-ripemd160 @ openssh.com',服务器发送' hmac-sha2-256,hmac-sha2-512,umac-64 @ openssh.com&# 39)
我尝试使用"方法"参数:
ssh2_connect("my-sftp-server.com", 443, array(
"client_to_server" => array(
"mac" => 'hmac-sha2-256,hmac-sha2-512,umac-64@openssh.com'
但它不起作用,似乎方法ssh2_connect
不支持此算法,并且在我的日志中我可以看到
客户已发送' hmac-sha1,hmac-sha1-96,hmac-md5,hmac-md5-96,hmac-ripemd160,hmac-ripemd160 @ openssh.com'
有没有办法在我的PHP SFTP客户端上安装新的MAC算法?
答案 0 :(得分:1)
PHP SSH2 package使用libssh2 library。
hmac-sha2-256
和hmac-sha2-512
需要libssh2 version 1.7.0(2016-02-23)或更高版本。不支持umac-64@openssh.com
。
或者,您可以使用自phpseclib(2014-09-12)以来支持hmac-sha2-256
的{{3}}。不支持hmac-sha2-512
,也不支持umac-64@openssh.com
。