Ok, also ich habe Hudson (v1.393) läuft in einer Ubuntu VM und alles funktioniert gut. Ich versuche jedoch, einen Mac-Slave zum Ubuntu-Master hinzuzufügen, und ich habe ein paar Probleme bekommen.SSH Schlüsselauthentifizierung fehlgeschlagen beim Verbinden von Mac Hudson Slave mit Linux Master
Ich habe SSH-Schlüssel eingerichtet, so dass die Ubuntu-VM über die Befehlszeile ssh den Schlüssel in einen Benutzer namens Hudson auf dem Mac verwenden kann.
In der Hudson-Slave-Konfiguration habe ich "Slave-Agenten auf Unix-Maschinen über SSH starten" ausgewählt und die Host-IP, den Benutzernamen des Benutzers auf dem Slave und den Speicherort meiner privaten Schlüsseldatei auf dem Master eingegeben wurde zur autorisierten Schlüsseldatei am Slave hinzugefügt).
Der Master kann jedoch keine Verbindung zum Slave herstellen. Mit Blick auf das Protokoll (unten) versucht es, sich mit einem Passwort zu authentifizieren.
Ist dies ein Rückfall für einen fehlgeschlagenen Schlüssel basierte SSH-Versuch?
Versucht Hudson nur mit einem Passwort zu authentifizieren, und ich muss etwas anderes ändern, damit es die Schlüsseldatei verwendet, die in der Konfiguration definiert ist?
Ist es nicht möglich, Slave-Agenten über ssh auf einem Mac zu starten? (Ich weiß, dass der Name dieser Art von Slave-Startmethode explicity Unix heißt es, aber ich dachte (sprich: der Hoffnung), dass es mit OS X funktionieren würde)
Log
[01/14/11 10:38:07] [SSH] Opening SSH connection to 10.0.1.188:22.
[01/14/11 10:38:07] [SSH] Authenticating as hudson/******.
java.io.IOException: Password authentication failed.
at com.trilead.ssh2.auth.AuthenticationManager.authenticatePassword(AuthenticationManager.java:319)
at com.trilead.ssh2.Connection.authenticateWithPassword(Connection.java:314)
at hudson.plugins.sshslaves.SSHLauncher.openConnection(SSHLauncher.java:565)
at hudson.plugins.sshslaves.SSHLauncher.launch(SSHLauncher.java:179)
at hudson.slaves.SlaveComputer$1.call(SlaveComputer.java:184)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334)
at java.util.concurrent.FutureTask.run(FutureTask.java:166)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:636)
Caused by: java.io.IOException: Authentication method password not supported by the server at this stage.
at com.trilead.ssh2.auth.AuthenticationManager.authenticatePassword(AuthenticationManager.java:289)
... 9 more
[01/14/11 10:38:07] [SSH] Connection closed.
Wenn jemand hat es geschafft, diese Art von Setup zu erobern, oder hat irgendwelche Tipps oder Ideen, wäre ich sehr dankbar! Danke
Haben Sie versucht, ohne den privaten Schlüssel und mit einem Passwort? Sehen Sie, ob es mit dieser Methode verbindet. – Sagar
Haben Sie versucht, eine Verbindung zur OS X-Box von der VM mit jsut ssh, um zu sehen, ob Schlüsselauth aktiviert ist? Ist die OS X Box Server- oder Client-Version? Haben Sie das Passwort bei der Generierung des Schlüssels leer gelassen? – prodigitalson
@Sagar: Ich habe es nur mit einem Passwort und nicht mit einem Schlüssel versucht. Kein Glück, gleiche Nachrichten im Logbuch. – mattbilson