Skip to Content
Building OsStoritve

Storitve

Storitev v receptu ima le tri kanonična polja: name, enabled in odprt objekt config. Oblika preide strukturno validacijo, vendar ima konfiguracijski ključ učinek le, če ga izvede izbrani build worker ali feature hook. Validacija ne dokazuje, da je bil daemon nameščen ali konfiguriran.

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

Konfiguracija SSH

Splošna pot gradnje Linuxa prepozna te nastavitve SSH:

Ključ receptaUčinek
port ali listen_portVrata OpenSSH, 1–65 535
allow_rootPreslika v PermitRootLogin
disable_password_authPretvori (invertira) v PasswordAuthentication
password_authenticationNeposredna vrednost žetona OpenSSH
pubkey_authenticationNeposredna vrednost žetona OpenSSH
client_alive_intervalOmejen ClientAliveInterval
client_alive_attemptsOmejen ClientAliveCountMax
authentication_retriesOmejen MaxAuthTries
timeoutOmejen čas za prijavo
x11_forwarding, allow_agent_forwarding, allow_tcp_forwardingNeposredne vrednosti žetonov OpenSSH
authorized_keysNamesti podane javne ključe, kjer je podprto

Poti, specifične za worker, lahko podpirajo manjši nabor. Zlasti hardware, Proxmox in gradniki Raspberry Pi imajo svoje adapterje. Preverite normaliziran recept in opozorila gradnje za izbrani cilj.

Če je preverjanje z geslom onemogočeno, vključite vsaj en veljaven javni ključ in ga neodvisno preizkusite pred uvedbo na hardware. V konfiguracijo storitve v receptu ne vnašajte zasebnih ključev ali gesel.

Druge storitve

Imena, kot so nginx, wireguard, DNS, DHCP ali komponente požarnega zidu, niso univerzalni konfiguracijski API. Njihovi paketi in konfiguracija prihajajo iz ustrezne feature, hooka, seznama paketov ali startup script za izbrano bazo. Poljuben objekt, kot je config.sites, lahko shema sprejme in ga kljub temu prezre.

Uporabite to zaporedje:

  1. Izberite base image in omogočite konkretno feature ali pakete.
  2. Dodajajte le konfiguracijske ključe, implementirane za to capability.
  3. Preverite normaliziran recept in ustvarjena opozorila.
  4. Dodajte assertions za prisotnost paketov, omogočitev storitve, vrata poslušanja, konfiguracijske datoteke in odziv na ravni aplikacije.
  5. Zaženite artefakt in ga preizkusite pred uvedbo na hardware ali v produkcijo.

Glej Features, Startup scripts in Assertion types.