
Fliegen · Setup und live gehen
Sicherheit: den Schlüssel nicht unter die Fussmatte
Macht mit einer Person ohne Vorwissen ihr Projekt sicher, mit dem Bild vom Haus mit Schlüsselbund, Tresor, Fenstern und Schlössern: Geheimnisse nie ins Logbuch (Git), sondern in .env auf dem Server (und, falls das Fliessband eines braucht, im Tresor des Hafens); versehentlich veröffentlichte Schlüssel sofort neu erzeugen; ein Schlüssel pro Zweck; nur nötige Türen offen; Updates.
- Deine KI lädt diesen Skill, wenn du etwa sagst
- «Sicherheit», «Passwort im Code», «API-Schlüssel», «.env», «Secret», «ich habe einen Schlüssel auf GitHub hochgeladen», «ist meine Seite sicher», «gehackt», «Updates», «Firewall»
- Missionen mit diesem Skill
- Quelle
- Auf GitHub ansehen
Das Bild
Ein Haus ist so sicher wie sein nachlässigster Moment. Einbrecher suchen nicht das stärkste Schloss, sondern den Schlüssel unter der Fussmatte und das offene Kellerfenster.
- Geheimnisse (Passwörter, API-Schlüssel, private Schlüssel) sind Schlüssel. Sie gehören in den Tresor, nie unter die Fussmatte.
- Das Logbuch (Git) ist keine Fussmatte, sondern ein Schaufenster: Was einmal drin steht, bleibt in allen alten Einträgen sichtbar.
- Türen und Fenster sind die offenen Zugänge zum Server. Nur so viele wie nötig.
- Updates sind neue Schlösser, wenn bei den alten ein Trick bekannt geworden ist.
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.
So sprichst du
- Nicht nur fragen: Fehlt das Projekt oder eine Angabe, gib trotzdem die konkreten Schritte oder schreib die Datei als Entwurf mit markierten Annahmen (
[Annahme: …]). Frag erst am Schluss nach dem, was fehlt. - Du-Form, ruhig, aber klar. Ist ein Geheimnis öffentlich geworden, gilt: sofort handeln, ohne Schuldzuweisung.
- Geheimnisse liest du nie laut vor, gibst sie nie aus und schreibst sie nie in den Chat, in Commit-Notizen oder Logs.
- Öffentliche Schlüssel (z. B.
phc_…für die Statistik oderpk_…bei Stripe) sind keine Geheimnisse. Geheime erkennt man oft am Anfang:sk_…,ghp_…,-----BEGIN … PRIVATE KEY-----.
Ablauf
Mit Light ist alles öffentlich, was Albatros ausstellt, auch was nirgends verlinkt ist: der Ordner seite/. Fehlt er, ist es public/ oder sogar das ganze Repo mit docs/. Darum bleibt die Seite in seite/. Dort gehören gar keine Geheimnisse hinein. Die Schritte 1 und 2 gelten trotzdem. Alles mit Server, .env und Ports gilt erst mit Pilot.
1. Ist schon etwas unter der Fussmatte?
git ls-files | grep -E '(^|/)\.env(\..+)?$' | grep -v '\.env\.example$'
git log -p --all | grep -nE -- '-----BEGIN [A-Z ]*PRIVATE KEY-----|sk_live_|sk_test_|ghp_[A-Za-z0-9]{20,}|password *[=:]' | head
Findest du etwas: Sofort beim Anbieter neu erzeugen (rotieren) und das alte ungültig machen. Aus dem Repo löschen reicht nicht, der alte Eintrag bleibt im Logbuch und im Hafen. Erst danach aufräumen.
2. Der Tresor
.gitignoreenthält.env,.env.*und!.env.example. Die Person schaut mit dir nach..env.exampleim Repo zeigt, welche Geheimnisse es braucht, mit leeren Werten.- Auf dem Server liegen die echten Werte in
~/projekt/.env, nur für dich lesbar:
ssh {name}@aufwind.sh 'cd ~/projekt && umask 077 && touch .env && chmod 600 .env'
Werte trägt die Person selbst ein (nano ~/projekt/.env), damit sie nicht in deinem Verlauf landen.
- Für das Fliessband: Es läuft auf deinem Server, und deine Seite liest ihre Geheimnisse aus der
.env. Braucht ein Schritt im Workflow doch eines, kommt es in den Tresor des Hafens (im Repo unter Einstellungen, Actions, Secrets) und im Workflow nur überenv:in den Befehl (Skillpipeline). - Im Dockerfile: eine
.dockerignoremit.env,.git,node_modules. Sonst wird die.envbeim Bauen mit eingepackt.
3. Ein Schlüssel pro Zweck
Der Hausschlüssel der Person (für Server und Hafen), der Lese-Schlüssel des Servers für den Hafen, später auf dem eigenen Server der Schlüssel des Fliessbands: jeder einzeln. Geht einer verloren, wird nur dieses Schloss ausgewechselt (im Cockpit oder mit schluessel_hinterlegen).
4. Türen und Fenster
Auf Albatros kümmert sich die Plattform um die Haustür (Firewall, Schutz gegen Passwort-Raten). Du achtest auf die Türen, die du selbst öffnest:
- In
compose.yamlnur die Webseite auf Port 80 nach aussen. Alles andere (Datenbank, CMS, Admin) nur an127.0.0.1binden, z. B."127.0.0.1:5432:5432", oder gar nicht veröffentlichen. Docker öffnet Ports sonst an jeder Firewall vorbei. - Admin-Bereiche nur über einen Tunnel (Skill
cms). - Prüfen, dass nichts Internes ausgeliefert wird:
curl -s -o /dev/null -w '%{http_code}\n' https://{name}.aufwind.sh/.env
curl -s -o /dev/null -w '%{http_code}\n' https://{name}.aufwind.sh/.git/config
Beide müssen 404 (oder 403) sein.
5. Neue Schlösser
- Auf dem Server:
apt list --upgradablezeigt offene Updates. Vor grösseren Updates ein Foto (Skillzurueck-auf-gestern), dannsudo apt update && sudo apt upgrade. - Im Projekt:
npm audit(falls es einepackage.jsongibt) zeigt bekannte Lücken in Bausteinen.
6. Wenig Rechte
- Workflows bekommen nur die Geheimnisse, die sie brauchen. Auf GitHub (nach dem Umzug, Skill
landung) zusätzlichpermissions: contents: read. - Programme im Container nicht als root laufen lassen, wenn die Vorlage das erlaubt (
USERim Dockerfile). - Jede Person, die mitarbeitet, bekommt einen eigenen Zugang, keinen geteilten.
7. Mission prüfen
Logbuch und Fliessband (Skills git-logbuch, pipeline), dann mission_pruefen mit flugschule-07-sicherheit. Die Prüfung schaut, ob .gitignore im Projekt .env enthält (mit Pilot in ~/projekt auf dem Server, mit Light im Hafen).
Wenn etwas passiert ist
- Geheimnis beim Anbieter neu erzeugen, altes sperren.
- Prüfen, ob es missbraucht wurde (Rechnungen, Logins, Versandlisten beim Anbieter).
- Server zurück auf ein Foto von vor dem Vorfall, wenn er verändert wurde (Skill
zurueck-auf-gestern). - Geht es um Daten anderer Menschen: Albatros über
coach_frageninformieren. Bei hohem Risiko für Betroffene verlangt das Datenschutzgesetz eine Meldung an den EDÖB (Art. 24 DSG). Keine Rechtsberatung.
Schlussnachricht
Deine letzte Nachricht in diesem Schritt beginnt mit einem Satz zum Bild «den Schlüssel nicht unter die Fussmatte», der den Kern noch einmal sagt. Danach: was geschafft ist, wo das Ergebnis liegt, was noch offen ist und was als Nächstes kommt.

Der Lotse
Lesen kann jede und jeder. Der Lotse weiss, was jetzt dran ist.
Die Bibliothek ist offen: Du kannst jeden Skill lesen und selbst nutzen, auch ohne Konto.
Der Lotse ist der Hauptskill von Albatros. Er liest im richtigen Moment den richtigen Skill, nach deinem echten Stand: Abo, Schlüssel, Server oder Seite, Fliessband, Domain und deine nächste Mission. Dafür meldest du dich an.