Skip to Content

Usluge

Usluga u receptu ima samo tri kanonska polja: name, enabled i otvoreni objekt config. Oblik prolazi strukturnu validaciju, ali konfiguracijski ključ ima učinak samo kad ga implementira odabrani build worker ili feature hook. Validacija ne dokazuje da je daemon instaliran ili 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

Opći put gradnje Linuxa prepoznaje ove SSH postavke:

Ključ receptaUčinak
port ili listen_portOpenSSH port, 1–65 535
allow_rootMapira na PermitRootLogin
disable_password_authPretvara (invertira) u PasswordAuthentication
password_authenticationIzravna vrijednost OpenSSH tokena
pubkey_authenticationIzravna vrijednost OpenSSH tokena
client_alive_intervalOgraničeni ClientAliveInterval
client_alive_attemptsOgraničeni ClientAliveCountMax
authentication_retriesOgraničeni MaxAuthTries
timeoutOgraničeno vrijeme za prijavu
x11_forwarding, allow_agent_forwarding, allow_tcp_forwardingIzravne vrijednosti OpenSSH tokena
authorized_keysInstalira dostavljene javne ključeve gdje je podržano

Putovi specifični za worker mogu podržavati manji skup. Posebno hardware, Proxmox i graditelji Raspberry Pi imaju vlastite adaptere. Pregledajte normalizirani recept i upozorenja gradnje za odabrani cilj.

Ako je autentifikacija lozinkom onemogućena, uključite barem jedan valjani javni ključ i neovisno ga testirajte prije implementacije na hardware. U konfiguraciju usluge u receptu ne stavljajte privatne ključeve ni lozinke.

Ostale usluge

Imena poput nginx, wireguard, DNS, DHCP ili komponenti vatrozida nisu univerzalni konfiguracijski API. Njihovi paketi i konfiguracija dolaze iz odgovarajuće feature, hooka, popisa paketa ili startup script za odabranu bazu. Proizvoljni objekt poput config.sites shema može prihvatiti, a ipak ga ignorirati.

Slijedite ovaj redoslijed:

  1. Odaberite base image i uključite konkretnu feature ili pakete.
  2. Dodajte samo konfiguracijske ključeve implementirane za tu capability.
  3. Pregledajte normalizirani recept i generirana upozorenja.
  4. Dodajte assertions za prisutnost paketa, uključivanje usluge, portove slušanja, konfiguracijske datoteke i odgovor na razini aplikacije.
  5. Pokrenite artefakt i testirajte ga prije promocije na hardware ili u produkciju.

Vidi Features, Startup scripts i Assertion types.