Skip to Content
Building OsTjänster

Tjänster

En recipe-tjänst har bara tre kanoniska fält: name, enabled och ett öppet config-objekt. Formen valideras strukturellt, men en konfigurationsnyckel har effekt först när vald build worker eller feature hook implementerar den. Validering är inte bevis på att en daemon installerades eller konfigurerades.

{ "services": [ { "name": "ssh", "enabled": true, "config": { "port": 2222, "allow_root": false, "disable_password_auth": true, "authorized_keys": ["ssh-ed25519 AAAA... operator@example"] } } ] }

SSH-konfiguration

Den allmänna Linux-buildvägen känner igen dessa SSH-inställningar:

Recipe-nyckelEffekt
port or listen_portOpenSSH-port, 1–65 535
allow_rootMappas till PermitRootLogin
disable_password_authInverteras till PasswordAuthentication
password_authenticationDirekt OpenSSH-tokenvärde
pubkey_authenticationDirekt OpenSSH-tokenvärde
client_alive_intervalBegränsat ClientAliveInterval
client_alive_attemptsBegränsat ClientAliveCountMax
authentication_retriesBegränsat MaxAuthTries
timeoutBegränsad inloggningsgraceperiod
x11_forwarding, allow_agent_forwarding, allow_tcp_forwardingDirekta OpenSSH-tokenvärden
authorized_keysInstallerar angivna publika nycklar där det stöds

Workerspecifika vägar kan stödja en mindre uppsättning. Hårdvaru-, Proxmox- och Raspberry Pi-builders har egna adaptrar. Granska det normaliserade receptet och buildvarningar för valt mål.

Om lösenordsautentisering är avstängd, inkludera minst en giltig publik nyckel och testa den separat innan du deployar till hårdvara. Lägg inte privata nycklar eller lösenord i recipe-tjänstens konfiguration.

Andra tjänster

Namn som nginx, wireguard, DNS, DHCP eller brandväggskomponenter är inte ett universellt konfigurations-API. Paket och konfiguration kommer från motsvarande feature, hook, paketlista eller startup script för vald bas. Ett godtyckligt objekt som config.sites kan accepteras av schemat och ändå ignoreras.

Använd denna ordning:

  1. Välj en base image och aktivera den konkreta featuren eller paketen.
  2. Lägg bara till konfigurationsnycklar som implementerats för den capabilityn.
  3. Granska det normaliserade receptet och genererade varningar.
  4. Lägg till assertions för paketnärvaro, tjänstaktivering, listener-portar, konfigurationsfiler och svar på applikationsnivå.
  5. Starta och testa artefakten innan hårdvara eller produktion.

Se Features, Startup scripts och Assertion types.