Freigeben über


SSH@0 – SSH v0-Aufgabe

Verwenden Sie diese Aufgabe, um Shellbefehle oder ein Skript auf einem Remotecomputer mit SSH auszuführen. Mit dieser Aufgabe können Sie eine Verbindung mit einem Remotecomputer mithilfe von SSH herstellen und Befehle oder ein Skript ausführen.

Syntax

# SSH v0
# Run shell commands or a script on a remote machine using SSH.
- task: SSH@0
  inputs:
    sshEndpoint: # string. Required. SSH service connection. 
    runOptions: 'commands' # 'commands' | 'script' | 'inline'. Required. Run. Default: commands.
    commands: # string. Required when runOptions = commands. Commands. 
    #scriptPath: # string. Required when runOptions = script. Shell script path. 
    #inline: # string. Required when runOptions = inline. Inline Script. 
    #interpreterCommand: '/bin/bash' # string. Optional. Use when runOptions = inline. Interpreter command. Default: /bin/bash.
    #args: # string. Optional. Use when runOptions = script. Arguments. 
  # Advanced
    #failOnStdErr: true # boolean. Fail on STDERR. Default: true.
    #interactiveSession: false # boolean. Enable interactive session. Default: false.
    readyTimeout: '20000' # string. Required. SSH handshake timeout. Default: 20000.
    #interactiveKeyboardAuthentication: false # boolean. Use interactive-keyboard authentication. Default: false.
# SSH v0
# Run shell commands or a script on a remote machine using SSH.
- task: SSH@0
  inputs:
    sshEndpoint: # string. Required. SSH service connection. 
    runOptions: 'commands' # 'commands' | 'script' | 'inline'. Required. Run. Default: commands.
    commands: # string. Required when runOptions = commands. Commands. 
    #scriptPath: # string. Required when runOptions = script. Shell script path. 
    #inline: # string. Required when runOptions = inline. Inline Script. 
    #interpreterCommand: '/bin/bash' # string. Optional. Use when runOptions = inline. Interpreter command. Default: /bin/bash.
    #args: # string. Optional. Use when runOptions = script. Arguments. 
  # Advanced
    #failOnStdErr: true # boolean. Fail on STDERR. Default: true.
    #interactiveSession: false # boolean. Enable interactive session. Default: false.
    readyTimeout: '20000' # string. Required. SSH handshake timeout. Default: 20000.
# SSH v0
# Run shell commands or a script on a remote machine using SSH.
- task: SSH@0
  inputs:
    sshEndpoint: # string. Required. SSH service connection. 
    runOptions: 'commands' # 'commands' | 'script' | 'inline'. Required. Run. Default: commands.
    commands: # string. Required when runOptions = commands. Commands. 
    #scriptPath: # string. Required when runOptions = script. Shell script path. 
    #inline: # string. Required when runOptions = inline. Inline Script. 
    #args: # string. Optional. Use when runOptions = script. Arguments. 
  # Advanced
    #failOnStdErr: true # boolean. Fail on STDERR. Default: true.
    readyTimeout: '20000' # string. Required. SSH handshake timeout. Default: 20000.

Eingänge

sshEndpoint - SSH-Dienstverbindung
string. Erforderlich.

Gibt den Namen einer SSH-Dienstverbindung an, die Verbindungsdetails für den Remotecomputer enthält. Der Hostname oder die IP-Adresse des Remotecomputers, die Portnummer und der Benutzername sind erforderlich, um eine SSH-Dienstverbindung zu erstellen.

  • Der private Schlüssel und die Passphrase müssen für die Authentifizierung angegeben werden.
  • Ein Kennwort kann zur Authentifizierung bei Remote-Linux-Computern verwendet werden, dies wird jedoch für macOS- oder Windows-Systeme nicht unterstützt.

runOptions - Ausführen von
string. Erforderlich. Zulässige Werte: commands, script (Skriptdatei), inline (Inlineskript). Standardwert: commands.

Führt Shellbefehle oder ein Shellskript auf dem Remotecomputer aus.


commands - Befehle
string. Erforderlich, wenn runOptions = commands.

Gibt die Shellbefehle an, die auf dem Remotecomputer ausgeführt werden sollen. Dieser Parameter ist nur verfügbar, wenn Befehle für die Option Ausführen ausgewählt ist. Geben Sie jeden Befehl zusammen mit den zugehörigen Argumenten in eine neue Zeile des mehrzeiligen Textfelds ein. Wenn Sie mehrere Befehle zusammen ausführen möchten, geben Sie sie in derselben Zeile ein, die durch Semikolons getrennt ist. Beispiel: cd /home/user/myFolder;build.

Hinweis

Jeder Befehl wird in einem separaten Prozess ausgeführt. Wenn Sie eine Reihe von Befehlen ausführen möchten, die interdependent sind (z. B. ändern Sie den aktuellen Ordner vor dem Ausführen eines Befehls), verwenden Sie stattdessen die Option Inlineskript.


scriptPath - Shellskriptpfad
string. Erforderlich, wenn runOptions = script.

Gibt den Pfad zur Shellskriptdatei an, die auf dem Remotecomputer ausgeführt werden soll. Dieser Parameter ist nur verfügbar, wenn Shellskript für die Option Ausführen ausgewählt ist.


inline - Inlineskript-
string. Erforderlich, wenn runOptions = inline.

Schreibt das Shellskript, das auf dem Remotecomputer ausgeführt werden soll.


interpreterCommand - Dolmetscherbefehl
string. Wahlfrei. Wird verwendet, wenn runOptions = inline. Standardwert: /bin/bash.

Gibt den Pfad zum Befehlsdolmetscher an, der zum Ausführen des Skripts verwendet wird. Fügt am Anfang des Skripts eine Shebang-Linie hinzu. Nur für UNIX-ähnliche Betriebssysteme relevant. Verwenden Sie eine leere Zeichenfolge für Windows-basierte Remotehosts. Erfahren Sie mehr über Shebang (#!).


args - Argumente
string. Wahlfrei. Wird verwendet, wenn runOptions = script.

Gibt die Argumente an, die an das Shellskript übergeben werden sollen. Dieser Parameter ist nur verfügbar, wenn Shellskript für die Option Ausführen ausgewählt ist.


failOnStdErr - bei STDERR- fehlschlagen
boolean. Standardwert: true.

Wenn der Wert trueist, schlägt der Build fehl, wenn die Remotebefehle oder Skripts in STDERRschreiben.


interactiveSession - Interaktive Sitzung aktivieren
boolean. Standardwert: false.

Startet eine interaktive Sitzung. Kennwortanforderungen werden durch das Kennwort des Benutzers ausgefüllt. Interaktive Sitzungen können für die Ausführung von Befehlen nützlich sein, z. B. sudo.


readyTimeout - SSH-Handshake-Timeout
string. Erforderlich. Standardwert: 20000.

Gibt an, wie lange (in Millisekunden) die Aufgabe wartet, bis der SSH-Handshake abgeschlossen ist.


interactiveKeyboardAuthentication - Verwenden der interaktiven Tastaturauthentifizierung
boolean. Standardwert: false.

Aktiviert die interaktive Tastaturauthentifizierung. Legen Sie auf true fest, wenn Ihr Ziel-SSH-Server die interaktive Tastaturauthentifizierung erfordert (PasswordAuthentication ist auf dem Zielcomputer deaktiviert/in sshd_config auf "Nein" festgelegt).


Aufgabensteuerungsoptionen

Alle Aufgaben verfügen zusätzlich zu ihren Aufgabeneingaben über Steuerungsoptionen. Weitere Informationen finden Sie unter Steuerelementoptionen und allgemeinen Aufgabeneigenschaften.

Ausgabevariablen

Keiner.

Bemerkungen

Verwenden Sie diese Aufgabe, um Shellbefehle oder ein Skript auf einem Remotecomputer mit SSH auszuführen. Mit dieser Aufgabe können Sie eine Verbindung mit einem Remotecomputer mithilfe von SSH herstellen und Befehle oder ein Skript ausführen.

Voraussetzungen

  • Die Aufgabe unterstützt die Verwendung eines SSH-Schlüsselpaars zum Herstellen einer Verbindung mit den Remotecomputern.
  • Der öffentliche Schlüssel muss vorinstalliert oder auf die Remotecomputer kopiert werden.

Unterstützte Algorithmen

Schlüsselpaaralgorithmen

  • RSA
  • DSA

Verschlüsselungsalgorithmen

  • aes256-cbc
  • aes192-cbc
  • aes128-cbc
  • Blowfish-cbc
  • 3des-cbc
  • Arcfour256
  • Arcfour128
  • cast128-cbc
  • Bogenfour

Für OpenSSL v1.0.1 und höher (für Agent):

  • aes256-ctr
  • aes192-ctr
  • aes128-ctr

Für OpenSSL v1.0.1 und höher, NodeJS v0.11.12 und höher (für Agent):

  • aes128-gcm
  • aes128-gcm@openssh.com
  • aes256-gcm
  • aes256-gcm@openssh.com

Anforderungen

Anforderung BESCHREIBUNG
Pipelinetypen YAML, Classic Build, Classic Release
Läuft auf Agent, DeploymentGroup
Anforderungen Nichts
Funktionen Dieser Vorgang erfüllt keine Anforderungen für nachfolgende Vorgänge im Auftrag.
Befehlseinschränkungen Jegliche
Settable-Variablen Jegliche
Agentversion 2.206.1 oder höher
Vorgangskategorie Einsetzen
Anforderung BESCHREIBUNG
Pipelinetypen YAML, Classic Build, Classic Release
Läuft auf Agent, DeploymentGroup
Anforderungen Nichts
Funktionen Dieser Vorgang erfüllt keine Anforderungen für nachfolgende Vorgänge im Auftrag.
Befehlseinschränkungen Jegliche
Settable-Variablen Jegliche
Agentversion 2.144.0 oder höher
Vorgangskategorie Einsetzen
Anforderung BESCHREIBUNG
Pipelinetypen YAML, Classic Build, Classic Release
Läuft auf Agent, DeploymentGroup
Anforderungen Nichts
Funktionen Dieser Vorgang erfüllt keine Anforderungen für nachfolgende Vorgänge im Auftrag.
Befehlseinschränkungen Jegliche
Settable-Variablen Jegliche
Agentversion 2.102.0 oder höher
Vorgangskategorie Einsetzen

Siehe auch