Comparați ruta SSH a Jenkins sub contul agentului de build
Inspectați utilizatorul, configurația SSH efectivă și calea ajutorului pe agentul care execută pasul, în loc să vă bazați pe o rulare interactivă ca root.
Rulați acestea în același cont de agent și context de build ca pasul SSH care eșuează:
id -un
ssh -G deploy-targetÎnlocuiți deploy-target cu numele SSH exact folosit de build. Comparați hostname-ul, portul și proxycommand rezultate cu lansarea interactivă care funcționează.
| Diferența de verificat | Efect |
|---|---|
| Utilizatorul OS și directorul home | Selectează fișierele SSH și permisiunile utilizatorului |
| Numele destinației | Selectează secțiunile Host și setările incluse |
| Executabilul/calea ProxyCommand | Determină dacă ajutorul poate porni în acel mediu |
| Opțiunile de linie de comandă SSH | Pot selecta alt fișier de configurare sau pot suprascrie o valoare |
Diagnosticarea SSH detaliată poate arăta ce fișiere au fost citite dacă diferența rămâne neclară. JENKINS_HOME este locația datelor Jenkins, nu un director home universal pentru utilizatorii agenților la distanță. Asigurați configurația SSH, autentificarea și datele cheii de host dorite pe mașina și în contul care execută efectiv comanda.
La Ncat --proxy, portul proxy este o destinație de ieșire, nu un ascultător local pe care ajutorul îl leagă. Succesul doar ca root nu indică prin sine o problemă de port de ascultare privilegiat.