We are seeing an intermittent (infrequent) issue with public key authentication from a PowerShell script wrapper. The message is "Server refused public-key signature despite accepting key!" however one the vast majority of occasions, the authentication is successful. The log entries below are for two successive jobs using exactly the same credentials:
. 2018-11-16 00:03:56.948 We claim version: SSH-2.0-WinSCP_release_5.13.3
. 2018-11-16 00:03:57.104 Server version: SSH-2.0-mod_sftp/0.9.9
. 2018-11-16 00:03:57.198 Server offered these authentication methods: publickey,password
. 2018-11-16 00:03:57.198 Offered public key
. 2018-11-16 00:03:57.198 Offer of public key accepted
! 2018-11-16 00:03:57.198 Authenticating with public key "* Key for *"
. 2018-11-16 00:03:57.198 Prompt (passphrase, "SSH key passphrase", <no instructions>, "Passphrase for key "* Key for *": ")
. 2018-11-16 00:03:57.198 Using configured passphrase.
. 2018-11-16 00:03:57.776 Sent public key signature
! 2018-11-16 00:04:02.011 Server refused public-key signature despite accepting key!
. 2018-11-16 00:04:02.011 Server refused public-key signature despite accepting key!
. 2018-11-16 00:04:02.011 Server offered these authentication methods: password
. 2018-11-16 00:04:02.011 Prompt (password, "SSH password", <no instructions>, "&Password: ")
. 2018-11-16 00:04:02.011 Disconnected: Unable to authenticate
Then a few seconds later the next job runs with exactly the same user details and works:
. 2018-11-16 00:04:04.011 Sent public key signature
. 2018-11-16 00:04:05.386 Access granted
There is a very similar issue described here:
Following through the various reports suggest that the underlying problem was resolved in ProFTP version 0.9.9 which is the server version in use.
Keen to resolve this as it results in errors which need to be investigated but on a repeated job run the error does not occur.