Führen Sie diese Befehle im selben Agent-Konto und Build-Kontext wie der fehlschlagende SSH-Schritt aus:

id -un
ssh -G deploy-target

Ersetzen Sie deploy-target durch den exakten SSH-Namen, den der Build verwendet. Vergleichen Sie den resultierenden Hostnamen, Port und proxycommand mit dem funktionierenden interaktiven Start.

Zu prüfender UnterschiedWirkung
OS-Benutzer und HomeWählt die SSH-Dateien und Berechtigungen des Benutzers
ZielnameWählt Host-Abschnitte und eingebundene Einstellungen
ProxyCommand-Programm/PfadBestimmt, ob der Helper in dieser Umgebung starten kann
SSH-KommandozeilenoptionenKönnen eine andere Konfigurationsdatei wählen oder einen Wert überschreiben

Eine ausführliche SSH-Diagnose kann zeigen, welche Dateien gelesen wurden, wenn der Unterschied unklar bleibt. JENKINS_HOME ist Jenkins' Datenablage, kein allgemeines Home-Verzeichnis für Benutzer entfernter Agenten. Stellen Sie die vorgesehene SSH-Konfiguration, Authentifizierung und Hostschlüssel-Daten auf der Maschine und dem Konto bereit, die den Befehl tatsächlich ausführen.

Bei Ncat --proxy ist der Proxy-Port ein ausgehendes Ziel, kein lokaler Listener, den der Helper bindet. Ein Erfolg nur als root belegt für sich genommen kein Problem mit einem privilegierten Listening-Port.

Ähnliche Artikel