Een node installeren
Vier stappen op de doos, en twee dingen die alleen jij buiten de doos kunt doen: DNS instellen, en je vingerafdruk laten verifiëren.
Het eenregelige pad
Section titled “Het eenregelige pad”Als je een inschrijvingstoken hebt gekregen, vallen stap 0 tot en met 2 samen in
één commando. Het downloadt de code, pakt hem uit naar /opt/trusted-codes en
draait tc-operator setup, dat de operator.yaml van deze node uit het token
haalt, de stack installeert en zichzelf inschrijft.
curl -fsSL https://app.trusted.codes/download/install-node.sh | sudo bash -s -- <inschrijvingstoken>Laat het token weg om ernaar gevraagd te worden, zodat het nooit in je shellgeschiedenis belandt:
curl -fsSL https://app.trusted.codes/download/install-node.sh | sudo bashDe download wordt geverifieerd tegen het gepubliceerde release-manifest, en het manifest zelf tegen een vastgelegde ondertekeningssleutel.
Neem in plaats daarvan de handmatige stappen hieronder als je het archief eerst
wilt inspecteren, een versie wilt vastpinnen, of ergens anders wilt installeren
dan /opt/trusted-codes (--dir <pad>).
Stap 0 — de code op de doos krijgen
Section titled “Stap 0 — de code op de doos krijgen”sudo mkdir -p /opt/trusted-codessudo tar -xzf trusted-codes-operator-<versie>.tar.gz -C /opt/trusted-codescd /opt/trusted-codesDe installatie-preflight controleert of de boom compleet is en faalt luid, met deze instructie, als dat niet zo is.
Stap 1 — operator.yaml bewerken
Section titled “Stap 1 — operator.yaml bewerken”cp scripts/tc-operator/operator.yaml.example operator.yamlchmod 600 operator.yaml$EDITOR operator.yamlHoud het op modus 0600 — het bevat je SMTP-wachtwoord. Twee velden zijn verplicht:
home_server: node1.example.comadmin_email: ops@example.comAl het andere heeft een werkende standaardwaarde. operator.yaml behandelt de rest van het bestand.
Stap 2 — installeren
Section titled “Stap 2 — installeren”sudo scripts/tc-operator/tc-operator install --config operator.yamlHet is idempotent — veilig om opnieuw te draaien, en opnieuw draaien is de normale manier om een nieuw archief toe te passen. Het:
- Doorloopt de host-preflight: controleert het besturingssysteem, regelt een swapbestand van 4 GB, installeert Docker als het ontbreekt, staat 22, 80 en 443 toe via de firewall.
- Genereert elk geheim en geeft het mTLS-certificaat van de node uit.
- Start de volledige stack in een geïsoleerd Docker-project, met elke
gepubliceerde poort gebonden aan
127.0.0.1. - Speelt het schema opnieuw af — migraties, dan referentiedata, dan de operator-overschrijving. Een verse database, opgebouwd, nooit uit een dump.
- Stelt federatie-identiteit en -vlaggen in, en zet WebFinger-ontdekking aan.
- Test zichzelf: een geauthenticeerde lezing, en de federatiehandler die antwoordt.
- Print de DNS-records die je nodig hebt en schrijft de toelatingspayload.
Het breekt niet af als je DNS nog niet is ingesteld. TLS is een aparte stap.
De installatie zit niet achter een getypte bevestiging: het is je eigen commando op je eigen doos.
Het schrijft /etc/trusted-codes/install.log met de volledige uitvoer van elk
commando, en /etc/trusted-codes/README.md — een referentie op de doos die elk
bestand in die map noemt, welke daarvan identiteitskritisch zijn, wat elke
container doet en wat er stukgaat als hij uit staat. Begin bij die twee als iets
er verkeerd uitziet.
Je eerste beheerder
Section titled “Je eerste beheerder”Als je admin_email hebt gezet, maakt install ook je eerste operator_admin
voor dat adres aan en print een eenmalig tijdelijk wachtwoord. Log in op de
beheerapp van de node en wijzig het meteen. De installer print het één keer en
nooit meer. Raak je het kwijt voordat je het hebt gewijzigd, draai install dan
opnieuw op een terminal: het vindt het bestaande account en biedt aan het
wachtwoord te resetten.
Die rol beheert alleen deze node. Hij wordt geweigerd bij elk centraal scherm — grants, rechten, abonnementen, functievlaggen — op de server, niet alleen in de interface, en er is geen weg om hem te escaleren. Zie De node draaien.
Stap 3 — DNS instellen, dan TLS afronden
Section titled “Stap 3 — DNS instellen, dan TLS afronden”De installer print het exacte record. Zet het bij je DNS-provider:
node1.example.com. A <ip-adres-van-je-doos>Zodra het oplost:
sudo scripts/tc-operator/tc-operator finalize-tls --config operator.yamlDit peilt totdat het A-record naar de doos oplost, tekent de proxyconfiguratie, en brengt HTTPS op gang met een Let’s Encrypt-certificaat.
Oefen eerst met --dry-run. Dat gebruikt de staging-omgeving van Let’s Encrypt:
het certificaat is niet vertrouwd, en je verbruikt geen snelheidslimiet. Dat is
van belang, omdat de echte limiet per domein geldt en je hem niet ongedaan kunt
maken zodra je hem raakt.
Stap 4 — de toelatingspayload indienen
Section titled “Stap 4 — de toelatingspayload indienen”De installer heeft /etc/trusted-codes/admission-payload.json geschreven. Het
bevat alleen publiek sleutelmateriaal: je publieke
federatie-ondertekeningssleutel en de vingerafdruk ervan, je mTLS-vingerafdruk,
je domeinen en je capaciteiten.
scripts/tc-operator/tc-operator submit-admissionDit ondertekent de payload met de federatiesleutel van je node en plaatst hem in de centrale beoordelingswachtrij.
De handtekening bewijst dat je node de sleutel bezit. Ze bewijst niet dat je de hostnaam bezit — dus vertel Trusted Codes je vingerafdruk van je publieke sleutel via een apart kanaal. Het commando print hem. Iemand verifieert die vingerafdruk met de hand en keurt daarna je node goed; er is geen zelfgoedkeuring. Het commando opnieuw draaien ververst de wachtende vermelding.
Zodra goedgekeurd, en zodra het ondertekende register opnieuw is gepubliceerd, federeert je node met de mesh. Tot die tijd blijft het beheeroppervlak achter een scherm “wacht op goedkeuring” staan.
Voordat je echte gebruikers erop loslaat
Section titled “Voordat je echte gebruikers erop loslaat”De node draait zodra install klaar is. Dat is niet hetzelfde als klaar zijn.
- DNS-records lossen op naar de doos, en
finalize-tlsis voltooid met een geldig certificaat. - Toelating goedgekeurd — je vingerafdruk geverifieerd, de node federeert.
- SMTP ingesteld en geverifieerd. Stuur jezelf een aanmeldlink en bevestig dat hij aankomt.
- Het beheerwachtwoord gewijzigd van het tijdelijke.
/etc/trusted-codes/secrets.envergens offline gekopieerd. Hem kwijtraken kost je de identiteitssleutels van de node en maakt alle teruggezette data onleesbaar.- Optionele integratiesleutels gezet, als je die functies wilt.
Als er iets misgaat
Section titled “Als er iets misgaat”Een oppervlaktebuild werd overgeslagen. De andere oppervlakken zijn
geïnstalleerd; alleen dat portaal werd niet gebouwd. Lees de fout in
install.log — zoek naar surface <naam>: building. De gebruikelijke oorzaak
is geheugen: een regel met “killed” of signaal 137 betekent dat de doos zonder
kwam te zitten. Voeg RAM of swap toe en draai install opnieuw, dat probeert de
build opnieuw. De node is ondertussen bruikbaar.
TLS is niet afgerond. Bijna altijd DNS die nog niet is doorgekomen. Bevestig
met getent hosts <jouw-domein>, en draai dan finalize-tls opnieuw.
Toelating blijft in de wacht staan. Iemand bij Trusted Codes moet je vingerafdruk buiten om verifiëren en goedkeuren. Opnieuw indienen ververst de vermelding; het keurt hem niet goed.