Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
sshelf — Schnelle Terminal-UI für deine SSH-Hosts: Fuzzy-Suche und Verbindung in zwei Tastendrücken, Dual-Pane-SFTP-Dateiübertragung und Port-Forwarding im Hintergrund. Verwaltet eine eigene Host-Datenbank und generiert den ssh-Befehl – bearbeitet nie ~/.ssh/config. | Kitploit
Tools/GitHubGitHub/max-rh/sshelf
Allgemeine DienstprogrammeNetzwerksicherheitDienstprogramme & FrameworksAuthentifizierungRemote-Access-Tool
GitHubmax-rh/sshelf

sshelf

Schnelle Terminal-UI für deine SSH-Hosts: Fuzzy-Suche und Verbindung in zwei Tastendrücken, Dual-Pane-SFTP-Dateiübertragung und Port-Forwarding im Hintergrund. Verwaltet eine eigene Host-Datenbank und generiert den ssh-Befehl – bearbeitet nie ~/.ssh/config.

Repository anzeigen
6689vor 3 TagenVon Kitploit geprüft
Webseite

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

sshelf

Durchsuchen Sie Ihre SSH-Hosts per Fuzzy-Suche und verbinden Sie sich mit zwei Tastendrücken.

sshelf führt eine eigene Hostliste, baut den ssh-Befehl für Sie zusammen und hält sich dann aus dem Weg. Es übergibt das Terminal an echtes OpenSSH und fasst ~/.ssh/config nie an.

crates.io CI docs built with Ratatui MSRV license

sshelf: Geben Sie ein paar Buchstaben ein, und der ssh-Befehl ist fertig

Installation

macOS und Linux, x86_64 und arm64. Die vorgefertigten Pakete benötigen keine Rust-Toolchain. Zur Laufzeit benötigt sshelf OpenSSH 8.4+, denn davon hängt die automatische Passwortbereitstellung ab.

Homebrew (macOS oder Linux):

root@kitploit:~
brew install max-rh/tap/sshelf

Shell-Installer (vorgefertigtes Binary, erkennt Ihre Plattform):

root@kitploit:~
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/max-rh/sshelf/releases/latest/download/sshelf-installer.sh | sh
Weitere Optionen (Debian/Ubuntu · Fedora/RHEL · Gentoo · cargo)

Debian/Ubuntu: Laden Sie die .deb-Datei aus dem aktuellsten Release herunter, dann sudo apt install ./sshelf_*_amd64.deb (oder *_arm64.deb).

Fedora / RHEL / Rocky / openSUSE: Laden Sie die .rpm-Datei (statischer Build, funktioniert auf jeder RPM-Distribution) aus dem aktuellsten Release herunter, dann sudo dnf install ./sshelf-*.x86_64.rpm (oder .aarch64.rpm).

Gentoo: Community-gepflegtes Overlay (inoffiziell, Dank an @masterwolf-git). Führen Sie eselect repository enable masterwolf && emerge --sync && emerge --ask app-admin/sshelf aus.

Cargo (von crates.io; benötigt Rust 1.88+): cargo install sshelf.

Shell-Tab-Vervollständigung ist in jedem Paket enthalten. Öffnen Sie nach der Installation eine neue Shell. Unter Linux verwenden Geheimnisse ein reines Rust-Secret-Service-Backend (keine libdbus/OpenSSL-Build-Abhängigkeiten).

Vollständige Details und Einrichtung der Vervollständigung: Installationsanleitung.

Warum ich das gebaut habe

Ich betreibe ein paar Dutzend Maschinen (ein Homelab, einige VPS, ein paar Rechner hinter einem Bastion), und ich tippte ständig ssh -J bastion -i ~/.ssh/some-key -p 2222 user@host aus dem Gedächtnis oder durchsuchte meine Shell-Historie danach. Jeder SSH-Manager, den ich ausprobierte, wollte entweder ~/.ssh/config besitzen oder mir ein Konto geben und meine Hosts über den Server von jemandem synchronisieren. Ich wollte beides nicht. Ich wollte einen Launcher, der seine eigene Liste führt, den Befehl zusammenbaut und sich aus dem Weg hält. Und einen Ort, um die Passwörter für die wenigen Hosts aufzubewahren, die keine Schlüssel verwenden können, ohne sie jemals in eine Datei zu schreiben. Also habe ich es gebaut.

Was Sie bekommen

Fuzzy-Launcher

Tippen zum Filtern. Enter verbindet. Ihre am häufigsten genutzten Hosts steigen von selbst nach oben (Frecency: Nutzungshäufigkeit, abgeschwächt durch Aktualität), und tag:prod / site:homelab grenzen die Liste weiter ein. Ctrl-y kopiert den erstellten Befehl, statt ihn auszuführen. Von der Shell aus verbindet sshelf prod-web per Namen und sshelf - stellt die Verbindung zum letzten Host wieder her – beides ohne die TUI zu öffnen.

Der sshelf-Launcher filtert drei Hosts während der Eingabe

Es führt exec() in Ihre ssh aus

sshelf baut das argv aus dem Host-Datensatz auf, fährt seine eigene UI herunter und ersetzt sich dann selbst durch OpenSSH. Es gibt keinen Wrapper zwischen Ihnen und der Sitzung: ein echtes TTY, Ihre ssh, Ihre config-freien Flags. Wenn die Sitzung endet, sind Sie zurück in Ihrer Shell, nicht in einem Menü. Der ausgeführte Befehl ist exakt der, den Ctrl-y Ihnen zeigt. Wie der Befehl aufgebaut wird.

Dateiübertragung mit zwei Fenstern

Ctrl-t öffnet Ihre Dateien links und die des Hosts rechts, über eine einzige authentifizierte Verbindung. Space markiert, Ctrl-a markiert alles, was der Filter anzeigt, Ctrl-s sendet die gesamte Auswahl in beide Richtungen, F7 erstellt ein Verzeichnis. Ein Name, den das Ziel bereits besitzt, wird übersprungen, niemals überschrieben.

Der Übertragungsbildschirm mit zwei Fenstern und zwei markierten Einträgen

Port-Weiterleitungen im Hintergrund

Ctrl-f öffnet einen lokalen, entfernten oder SOCKS-Tunnel, der weiterläuft, nachdem Sie sshelf beenden, und auch nachdem Sie das Terminal schließen. F4 listet alle davon über alle Hosts hinweg auf und stoppt den ausgewählten. Sie werden per PID verfolgt und mit den tatsächlich laufenden Prozessen abgeglichen, sodass nichts in einer Liste verbleibt, nachdem es beendet wurde. Kein Daemon, kein Supervisor.

Der Weiterleitungs-Manager listet zwei aktive Tunnel auf

tmux-Modus

Setzen Sie tmux = "window" oder "pane" und Enter öffnet den Host in einem neuen tmux-Fenster (benannt nach dem Host) oder in einem neuen Pane, statt sshelf zu ersetzen. Beenden Sie die Sitzung und der Picker sitzt immer noch da und läuft weiter.

Enter öffnet den Host in einem neuen tmux-Fenster; sshelf läuft weiter

Sites und Tags

F3 verwaltet Sites: Eine Site gruppiert Hosts und kann einen gemeinsamen Bastion, Benutzer, Port und Schlüssel mitführen, die ihre Mitglieder beim Verbinden erben, wobei nur die Felder ausgefüllt werden, die ein Host nicht selbst gesetzt hat. Tags sind frei definierbare Labels, nach denen Sie filtern. Beide erscheinen in der Liste, und ein geerbter Bastion erscheint im Befehl, den sshelf aufbaut.

Der Sites-Manager mit drei Sites und ihren gemeinsamen Standardwerten

Passwörter ohne sshpass

Für die Hosts, die keine Schlüssel verwenden können, speichert sshelf das Passwort in Ihrem OS-Keyring (oder einem age-verschlüsselten Tresor auf einem headless Rechner) und stellt es über SSH_ASKPASS bereit, wenn ssh danach fragt. Es antwortet nur auf Aufforderungen mit der Form eines echten Passworts oder einer Passphrase, sodass ein Server das Geheimnis nicht mit ähnlich aussehendem Text abfischen kann. Das Passwort ist nie in einer Datei, nie in ps, nie in einer Befehlszeile. Hosts, die zusätzlich einen Verifizierungscode wünschen, erhalten vor Verbindungsaufbau eine Eingabeaufforderung dafür. Passwörter, Schlüssel & 2FA · Sicherheit.

Das Add-Host-Formular im Auth-Bereich mit Schlüsselauswahl

Export nach ssh_config

sshelf export schreibt ein eigenes ssh_config-Fragment und gibt Ihnen eine einzelne Include-Zeile zum Einfügen in ~/.ssh/config selbst. Danach lösen einfaches ssh, scp, rsync, git und alles, was SSH-Config liest (VS Code Remote-SSH, JetBrains Gateway), Ihre sshelf-Hosts per Namen auf, inklusive Bastion. Die Datei aktualisiert sich, wann immer sich Ihre Hosts ändern. sshelf schreibt weiterhin nichts unter ~/.ssh.

sshelf export schreibt ein ssh_config-Fragment, und das Fragment selbst

Importieren, was Sie bereits haben

sshelf import liest ~/.ssh/config, strikt schreibgeschützt, und übernimmt die Hosts, die es modellieren kann. sshelf import --tailscale führt Ihre eigene tailscale-CLI aus und verwandelt Ihr Tailnet in durchsuchbare Hosts, mit MagicDNS-Namen, dem Tailnet als Site und ACL-Tags als Tags. Beides ist nur additiv, sodass ein erneuter Lauf immer sicher ist, und keines geschieht, ohne dass Sie danach fragen.

sshelf doctor

Ein Befehl für den Fall, dass etwas nicht funktioniert. Er prüft Ihre OpenSSH-Version, ob das Secret-Backend tatsächlich öffnet, ob hosts.toml geparst werden kann, Hosts, die auf eine nicht existierende Site zeigen, einen fehlenden Agent-Socket und einen Export, der abgewichen ist. Er nennt die Lösung für jeden Punkt. Schreibgeschützt, beendet mit Exit-Code 1, wenn etwas fehlschlug, und kontaktiert nie einen Host.

sshelf doctor listet seine Prüfungen mit einer Warnung auf

Vergleich

Zusammengestellt im September 2026 aus dem jeweiligen README der Projekte (und für Termius von dessen Website). Eine Zelle mit „nicht angegeben" bedeutet, dass die eigene Dokumentation des Projekts dazu nichts sagt.

sshelfpurpleomnysshVoltiusTermius
Läuft inTerminal (TUI)Terminal (TUI)Terminal (TUI) + Desktop-AppDesktop-App (Tauri)Desktop- + Mobile-App
Bearbeitet ~/.ssh/confignieja, direktnein, liest es beim Startn/a (eigener Speicher)n/a (eigener Speicher)
Konto erforderlichneinneinneinfür Echtzeit-Syncja
Hält Tokens für andere Diensteneinja, eines pro Cloud-Anbieterneinja, für Syncnicht angegeben
Eigene NetzwerkaufrufekeineCloud-Anbieter-SyncHost-Metrik-PollingSync, Updates, Host-MetrikenSync
Geheimnis-VerwahrungIhr OS-Keyring / age-TresorKeyring + Passwort-Managernicht angegebensein E2EE-Tresorsein verschlüsselter Tresor
Verbindenexec() in Ihre sshführt Ihren ssh-Befehl ausintegriertes Terminalintegriertes Terminalintegriertes Terminal
Port-Weiterleitungenja, überleben das Beendenja, Live-Überwachungnicht angegebenjaja
DateiübertragungSFTP mit zwei Fensterngeteilte FensterSFTP mit zwei Panelszwei Fenster, Drag & DropSFTP
Container / Metrik-Dashboardsneinjajajanicht angegeben
Team-Freigabeneinneinneinkostenpflichtige Stufenkostenpflichtige Stufen
PlattformenmacOS, LinuxmacOS, LinuxmacOS, Linux, Windows, TermuxWindows, macOS, LinuxmacOS, Windows, Linux, iOS, Android
LizenzMIT / Apache-2.0MITApache-2.0AGPL-3.0proprietär

sshelf hat keine Dashboards, kein Container-Management, keine Team-Freigabe und keinen Windows-Build. Die ersten drei sind Entscheidungen, und PRIVACY.md erklärt warum: Jede davon würde bedeuten, dass sshelf etwas von Ihnen hält oder von sich aus mit etwas spricht.

Was es niemals tun wird

  • Keine Telemetrie. Keine Analysen, keine Absturzberichte, kein Update-Check.
  • Kein Konto, keine Cloud, kein Sync-Server. Es gibt nichts, wofür man sich anmelden könnte.
  • Keine gehaltenen Tokens. sshelf speichert nie eine Cloud- oder API-Anmeldedaten.
  • Keine eigenen Netzwerkaufrufe. Der einzige Datenverkehr ist die SSH-Sitzung, die Sie angefordert haben.
  • Bearbeitet nie ~/.ssh/config und schreibt nie etwas unter ~/.ssh.
  • Keine Geheimnisse in hosts.toml. Diese Datei kann bedenkenlos committet und geteilt werden.
  • Kein Electron. Ein Binary, etwa vier Megabyte.

PRIVACY.md sagt, was es liest, schreibt, ausführt und sendet. SECURITY.md ist das Bedrohungsmodell für gespeicherte Geheimnisse.

Die ersten fünf Minuten

root@kitploit:~
sshelf                        # TUI starten (Ctrl-a fügt Ihren ersten Host hinzu)
sshelf import --dry-run       # schreibgeschützten Import aus ~/.ssh/config Vorschau anzeigen
sshelf import                 # ...ausführen
sshelf import --tailscale     # ...oder Ihr gesamtes Tailscale-Tailnet importieren
sshelf prod-web               # direkt mit einem gespeicherten Host verbinden (überspringt die TUI)
sshelf -                      # Verbindung zum zuletzt verwendeten Host wiederherstellen
sshelf list tag:prod --json   # scriptbare Auflistung (Felder + der ssh-Befehl)
sshelf print-command db       # den ssh-Befehl ausgeben, statt ihn auszuführen
sshelf export                 # Include-Datei, damit einfaches ssh/scp/VS Code Ihre Hosts sieht
sshelf doctor                 # etwas funktioniert nicht? Setup prüfen und die Lösung erfahren

In der TUI: Tippen zum Filtern (plus tag:NAME / site:NAME) und Enter zum Verbinden. F1 zeigt jede Taste.

Dokumentation

Der Benutzerleitfaden deckt alles ab: Schnellstart · CLI-Referenz · Konfiguration · FAQ · sshelf doctor. Es gibt funktionsspezifische Seiten für Dateiübertragung, Port-Weiterleitung, Sites & Tags, Passwörter & 2FA und SSH-Config-Export. Architektur- und Designentscheidungen finden Sie in docs/, und es gibt eine llms.txt für die Maschinen.

Fragen & Ideen

Stellen Sie Fragen, schlagen Sie eine Funktion vor oder zeigen Sie, was Sie damit gebaut haben, in GitHub Discussions. Beiträge sind willkommen. Beginnen Sie mit CONTRIBUTING.md.

Unterstützung

Wenn sshelf für Sie nützlich ist, ist ein Bitcoin-Trinkgeld willkommen (völlig optional):

Donate BTC

Bitcoin: bc1qcdeyhpwq76u97dhymx876n49uq85z4y3ccrpje

Lizenz

Dual-lizenziert unter entweder MIT oder Apache-2.0, nach Ihrer Wahl (die Rust-Ökosystem-Norm).

Tool herunterladen