SSH-Runner: Update golang.org/x/crypto/ssh to support more secure MACs (hmac-sha2-256)
The SHA1 hashing algorithm is no longer considered to be the most secure. Therefore server admins tend to disable rather old and less secure algorithms on their (SSH) servers. (see Secure Secure Shell or cipherli.st)
Using the ssh runner I get this error when trying to connect to my server:
ERROR: Build failed with: ssh: handshake failed: ssh: no common algorithms
The server log (/var/log/auth.log) shows this error:
…fatal: no matching mac found: client hmac-sha1,hmac-sha1-96 server …,hmac-sha2-256,… [preauth]
(list of server MACs truncated)
I know that adding hmac-sha1
or hmac-sha1-96
to the list of allowed MACs in my sshd_config solves the problem. But I'd rather have the ssh runner to be able to use hmac-sha2-256
or other more secure algorithms.
The bundled version of the dependency golang.org/x/crypto/ssh is somewhat outdated (bundled crypto/ssh vs latest crypto/ssh on github)
tl;dr: Could you please update the crypto/ssh dependency to a recent version? (See commit e3f150b on github)
/cc @aneumann91