BASSH

Bulk Automatic SSH (BASSH) führt eine definierte Befehlsliste sequenziell auf einer Liste von SSH-Hosts aus — Host für Host, Kommando für Kommando, mit kontrollierten Wartebedingungen, Live-Status pro Host und nachvollziehbarem Log. Alle Hostdaten und Aufgabenlisten bleiben ausschließlich lokal auf Ihrem Rechner.

Aktuelle Version
6.20
Jenkins Build
#20
Veröffentlicht
09.06.2026 15:27 UTC

So arbeitet BASSH

Wartebedingungen zwischen Befehlen

Sonderbefehl: interaktive Bestätigungen

Variablen in Befehlen

Beispiel hosts.json-Auszug:

{
  "hosts": [
    {
      "ip": "10.0.0.11", "port": 22, "user": "admin",
      "usekey": true, "keyfile": "C:\\keys\\sw.key", "keypassword": "",
      "variables": { "vlan": "10", "snmp": "public", "location": "Rack 1" }
    },
    {
      "ip": "10.0.0.12", "port": 22, "user": "admin",
      "usekey": true, "keyfile": "C:\\keys\\sw.key", "keypassword": "",
      "variables": { "vlan": "20", "snmp": "public", "location": "Rack 2" }
    }
  ]
}

Passend dazu commands.json mit Variablen:

{
  "commands": [
    { "command": "configure terminal",                       "waitto": 0, "time": 0 },
    { "command": "snmp-server community [snmp] RO",          "waitto": 0, "time": 0 },
    { "command": "vlan [vlan]",                              "waitto": 0, "time": 0 },
    { "command": "name [location]",                          "waitto": 0, "time": 0 },
    { "command": "end",                                      "waitto": 0, "time": 0 },
    { "command": "write memory",                             "waitto": 4, "time": 0 },
    { "command": "#confirm y",                               "waitto": 0, "time": 0 }
  ]
}

Während des Laufs werden die Platzhalter pro Host durch dessen Werte ersetzt — der erste Host bekommt VLAN 10, der zweite VLAN 20.

Authentifizierung

Datenschutz & Daten-Hoheit

Typische Einsatzszenarien

Lizenz