mcpField
S
ssh-schluessel

ssh-schluessel

github.com/dischen87Other09 installsUpdated today
Repository

About ssh-schluessel

ssh-schluessel is a skill that guides setup and testing of SSH key access for an Albatros account or server. It distinguishes the private key, which stays on the computer, from the public key that can be registered, and includes troubleshooting steps.

Key features

  1. 01Generate an Ed25519 key pair
  2. 02Keep the private key on the computer
  3. 03Register and verify the public key
  4. 04Configure SSH host settings
  5. 05Troubleshoot common connection errors

Use cases

  1. 01Setting up SSH access to Albatros
  2. 02Testing a key-based server connection
  3. 03Replacing access after a computer is lost

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/dischen87/albatros-skills --skill ssh-schluessel

After installing, type/ssh-schluesselin Claude Code to confirm it loaded.

Details

From the project README

SSH-Schlüssel: Hausschlüssel und Schloss

Das Bild

Ein SSH-Schlüssel ist ein Paar:

  • Der Hausschlüssel (privater Schlüssel) bleibt immer bei dir, auf deinem Computer. Niemand sonst bekommt ihn, auch Albatros nicht, auch ich nicht.
  • Das Schloss (öffentlicher Schlüssel) darfst du überall einbauen lassen. Wer das Schloss sieht, kann damit nichts öffnen.

Wir bauen dein Schloss in die Tür deines Servers ein. Danach kommt nur hinein, wer den passenden Hausschlüssel hat: du. Ein Passwort brauchst du dafür nicht.

Erklär das Bild, bevor du einen Befehl ausführst. Die Wörter «privater» und «öffentlicher Schlüssel» nennst du erst danach, und dann immer zusammen mit dem Bild.

So setzt du das Bild ein: Sag es der Person in deiner ersten Antwort, bevor du Fragen stellst oder Befehle zeigst, auch wenn sie gleich eine Lösung will.

Harte Regeln

  • Der private Schlüssel verlässt den Computer nie. Du liest ihn nicht, zeigst ihn nicht an, kopierst ihn nicht und lädst ihn nirgends hoch, auch nicht auf Wunsch. Wenn die Person ihn in den Chat kopieren will: freundlich stoppen und erklären, warum.
  • Hochgeladen wird nur die Datei, die auf .pub endet (pub wie public, öffentlich). Prüf vor dem Hochladen, dass der Inhalt mit ssh-ed25519 beginnt und aus einer einzigen Zeile besteht.
  • Bestehende Schlüssel überschreibst du nie. ssh-keygen fragt vor dem Überschreiben nach, aber du wählst ohnehin einen eigenen Dateinamen.

Ablauf

1. Gibt es schon einen Albatros-Schlüssel?
ls ~/.ssh/albatros.pub 2>/dev/null && echo "schon da" || echo "noch keiner"

Ist er schon da, nimm ihn und geh zu Schritt 3.

2. Schlüssel erzeugen (lokal)

Sag vorher: «Jetzt stellt dein Computer einen neuen Hausschlüssel und das passende Schloss her. Beides landet im versteckten Ordner .ssh in deinem Benutzerordner.»

mkdir -p ~/.ssh && chmod 700 ~/.ssh
ssh-keygen -t ed25519 -C "albatros" -f ~/.ssh/albatros -N ""
  • -t ed25519: eine moderne, sichere Art von Schlüssel.
  • -f ~/.ssh/albatros: der Name. Es entstehen zwei Dateien: albatros (Hausschlüssel) und albatros.pub (Schloss).
  • -N "": ohne Zusatzpasswort. So kann ich den Befehl für dich ausführen. Wer ein Extra-Schloss am Schlüsselbund will, tippt später selbst in einem eigenen Terminal-Fenster ssh-keygen -p -f ~/.ssh/albatros und vergibt eine Passphrase. Die tippst du nie in den Chat.

Windows: Der gleiche Befehl funktioniert in PowerShell, nur ohne mkdir/chmod-Zeile. Der Ordner heisst dort $HOME\.ssh.

3. Nur das Schloss hochladen
cat ~/.ssh/albatros.pub

Zeig der Person die Zeile und sag: «Das ist dein Schloss. Das darf jede Person sehen.» Gib genau diese Zeile an das Albatros-Werkzeug schluessel_hinterlegen. Will die Person ihr Schloss hochladen, tust du das gleich, ohne nochmals zu fragen: Ein Schloss zu hinterlegen ist ungefährlich.

Fehlt das Werkzeug (Albatros noch nicht verbunden): Folge zuerst Schritt 1 im Skill start. Alternativ kann die Person die Zeile im Cockpit auf albatros.build unter «Schlüssel» einfügen.

4. Dem Computer sagen, welcher Schlüssel zu welcher Tür gehört

Frag, ob du einen Eintrag in ~/.ssh/config ergänzen darfst. Bild: ein Zettel am Schlüsselbund «dieser Schlüssel gehört zu aufwind.sh». Nur anhängen, nichts löschen:

cat >> ~/.ssh/config <<'EOF'

Host aufwind.sh
  IdentityFile ~/.ssh/albatros
  IdentitiesOnly yes
EOF
chmod 600 ~/.ssh/config
5. Erster Besuch

Mit Light gibt es keinen Server zum Besuchen. Teste das Schloss am Hafen: ssh -T [email protected]. Begrüsst er die Person mit ihrem Namen («successfully authenticated»), passt der Schlüssel. Danach weiter mit dem Skill git-logbuch. Der Rest dieses Schritts und die Mission flugschule-02-ssh-schluessel gehören zu Pilot.

Mit Pilot: Lass die Person diesen Befehl selbst tippen (in Claude Code mit ! davor):

ssh {name}@aufwind.sh

{name} ist der Name ihres Servers (steht in konto_status). Beim allerersten Mal fragt der Computer: «Are you sure you want to continue connecting?» Bild: Der Server zeigt seinen Ausweis. Der Fingerabdruck steht im Cockpit. Stimmt er, tippt die Person yes.

Drinnen: echo "Ich war hier" > ~/hallo.txt, dann exit. Das ist ihr erster Fussabdruck auf dem eigenen Server.

Wenn du selbst testen musst (dein Terminal ist nicht interaktiv):

ssh -o StrictHostKeyChecking=accept-new {name}@aufwind.sh 'echo "Ich war hier" > ~/hallo.txt && cat ~/hallo.txt'
6. Mission prüfen

mission_pruefen mit flugschule-02-ssh-schluessel. Die Prüfung schaut, ob ~/hallo.txt auf dem Server liegt.

Wenn es hakt

  • Permission denied (publickey): Das Schloss passt nicht zur Tür. Prüf der Reihe nach: Ist der Server-Name richtig? Wurde das Schloss hochgeladen (konto_status)? Steht der Eintrag in ~/.ssh/config? Test mit ssh -v {name}@aufwind.sh und such nach der Zeile «Offering public key».
  • «Dieser Schlüssel gehört schon zu einem anderen Konto»: Ein Schloss gehört zu genau einem Albatros-Konto, wie bei GitHub. Für ein zweites Konto einen eigenen Schlüssel erzeugen (ssh-keygen -t ed25519 -C "albatros-zwei" -f ~/.ssh/albatros-zwei -N "") und in ~/.ssh/config einen eigenen Eintrag anlegen: Host aufwind-zwei mit HostName aufwind.sh, IdentityFile ~/.ssh/albatros-zwei und IdentitiesOnly yes. Für dieses Konto heisst die Adresse dann aufwind-zwei statt aufwind.sh, zum Beispiel git@aufwind-zwei:<name>/projekt.git.
  • Neuer Computer: neuer Hausschlüssel auf dem neuen Computer, Schloss zusätzlich hochladen. Den alten Hausschlüssel nie per Mail oder Stick kopieren.
  • Computer verloren oder gestohlen: Das alte Schloss sofort im Cockpit entfernen. Das ist, als würdest du den Schliesszylinder auswechseln.
  • WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED: Der Ausweis des Servers ist anders als beim letzten Mal. Nicht einfach wegklicken. Fingerabdruck im Cockpit vergleichen. Erst wenn er stimmt, die alte Zeile mit ssh-keygen -R aufwind.sh entfernen.

Schlussnachricht

Deine letzte Nachricht in diesem Schritt beginnt mit einem Satz zum Bild «Hausschlüssel und Schloss», der den Kern noch einmal sagt. Danach: was geschafft ist, wo das Ergebnis liegt, was noch offen ist und was als Nächstes kommt.

Comments

Markdown supported