Skip to Content
Building OsPaslaugos

Paslaugos

Recepto paslauga turi tik tris kanoninius laukus: name, enabled ir atvirą config objektą. Forma tikrinama struktūriškai, bet konfigūracijos raktas veikia tik tada, kai jį įgyvendina pasirinktas build worker ar feature hook. Validacija neįrodo, kad daemon buvo įdiegtas ar sukonfigūruotas.

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

SSH konfigūracija

Bendras Linux build kelias atpažįsta šiuos SSH nustatymus:

Recepto raktasPoveikis
port or listen_portOpenSSH portas, 1–65,535
allow_rootAtitinka PermitRootLogin
disable_password_authApverčiama į PasswordAuthentication
password_authenticationTiesioginė OpenSSH token reikšmė
pubkey_authenticationTiesioginė OpenSSH token reikšmė
client_alive_intervalRibotas ClientAliveInterval
client_alive_attemptsRibotas ClientAliveCountMax
authentication_retriesRibotas MaxAuthTries
timeoutRibotas prisijungimo laukimo laikas
x11_forwarding, allow_agent_forwarding, allow_tcp_forwardingTiesioginės OpenSSH token reikšmės
authorized_keysĮdiegia pateiktus viešuosius raktus, kur palaoma

Workeriui specifiški keliai gali palaikyti mažesnį rinkinį. Ypač hardware, Proxmox ir Raspberry Pi builderiai turi savo adapterius. Peržiūrėkite normalizuotą receptą ir build įspėjimus pasirinktam tikslui.

Jei slaptažodžio autentifikavimas išjungtas, prieš diegdami į hardware įtraukite ir savarankiškai patikrinkite bent vieną galiojantį viešąjį raktą. Nedėkite privataus raktų ar slaptažodžių į recepto paslaugų konfigūraciją.

Kitos paslaugos

Tokie pavadinimai kaip nginx, wireguard, DNS, DHCP ar firewall komponentai nėra universalus konfigūracijos API. Jų paketai ir konfigūracija ateina iš atitinkamos feature, hook, paketų sąrašo ar startup script pasirinktam base. Bet koks objektas, pvz. config.sites, gali būti priimtas schema ir vis tiek ignoruojamas.

Naudokite šią seką:

  1. Pasirinkite base image ir įjunkite konkrečią feature ar paketus.
  2. Pridėkite tik tos galimybės įgyvendintus konfigūracijos raktus.
  3. Peržiūrėkite normalizuotą receptą ir sugeneruotus įspėjimus.
  4. Pridėkite assertions dėl paketų buvimo, paslaugų įjungimo, klausymo portų, konfigūracijos failų ir atsako programos lygyje.
  5. Paleiskite ir išbandykite artefaktą prieš hardware ar production promotion.

Žr. Features, Startup scripts, ir Assertion types.