Плагин Gradle ssh не устанавливает соединение с "com.jcraft.jsch.JSchException: Auth fail" при использовании Kerberos
Я пытаюсь использовать Kerberos для входа на удаленный сервер с помощью подключаемого модуля Gradle SSH, но по какой-то причине это не удается. У меня есть 2 разных сценария: один для разработчиков (с использованием Kerberos) и один для CI-сервера (с использованием аутентификации с открытым ключом). Настройка SSH в Gradle выглядит так:
remotes {
proj {
host = 'XXX'
user = System.getProperty("user.name")
}
}
ssh.settings {
authentications = ["publickey","gssapi-with-mic"]
jschLog=true
}
ssh.run {
session(remotes.proj) {
...
При запуске я получаю следующий результат:
11:27:49.303 [DEBUG] [org.hidetake.groovy.ssh.connection.JSchLogger] [jsch] Authentications that can continue: publickey,gssapi-with-mic
11:27:49.303 [DEBUG] [org.hidetake.groovy.ssh.connection.JSchLogger] [jsch] Next authentication method: publickey
11:27:49.304 [DEBUG] [org.hidetake.groovy.ssh.connection.JSchLogger] [jsch] Authentications that can continue: gssapi-with-mic
11:27:49.304 [DEBUG] [org.hidetake.groovy.ssh.connection.JSchLogger] [jsch] Next authentication method: gssapi-with-mic
11:27:49.331 [DEBUG] [org.hidetake.groovy.ssh.connection.JSchLogger] [jsch] Disconnecting from XXX port 22
...
11:27:49.338 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] * What went wrong:
11:27:49.338 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] Execution failed for task ':project:task'.
11:27:49.338 [ERROR] [org.gradle.internal.buildevents.BuildExceptionReporter] > com.jcraft.jsch.JSchException: Auth fail
Но когда я пытаюсь войти в систему, используя ssh напрямую, он работает:
You are connected to: XXX
debug1: Authentications that can continue: publickey,gssapi-with-mic,password,keyboard-interactive
debug1: Next authentication method: gssapi-with-mic
debug1: Delegating credentials
debug1: Delegating credentials
debug1: Authentication succeeded (gssapi-with-mic).
Authenticated to XXX
Есть идеи, что мне делать? Похоже, что gradle-ssh-plugin не поддерживает gssapi-with-mic. Конечно, я мог бы переписать код, чтобы вместо этого использовать простой ssh в качестве скрипта.