Pakalpojumi
Receptes pakalpojumam ir tik trīs kanoniskie lauki: name, enabled un brīvs
config objekts. Forma tiek validēta strukturāli, bet konfigurācijas atslēga
darbojas tikai tad, ja to ievies izvēlētais build worker vai feature hook.
Validācija nav pierādījums, ka daemon tika instalēts vai konfigurēts.
{
"services": [
{
"name": "ssh",
"enabled": true,
"config": {
"port": 2222,
"allow_root": false,
"disable_password_auth": true,
"authorized_keys": ["ssh-ed25519 AAAA... operator@example"]
}
}
]
}SSH konfigurācija
Vispārējais Linux build ceļš atpazīst šos SSH iestatījumus:
| Receptes atslēga | Ietekme |
|---|---|
port or listen_port | OpenSSH ports, 1–65,535 |
allow_root | Atbilst PermitRootLogin |
disable_password_auth | Apgriež PasswordAuthentication |
password_authentication | Tieša OpenSSH token vērtība |
pubkey_authentication | Tieša OpenSSH token vērtība |
client_alive_interval | Ierobežots ClientAliveInterval |
client_alive_attempts | Ierobežots ClientAliveCountMax |
authentication_retries | Ierobežots MaxAuthTries |
timeout | Ierobežots pieteikšanās gaidīšanas laiks |
x11_forwarding, allow_agent_forwarding, allow_tcp_forwarding | Tiešas OpenSSH token vērtības |
authorized_keys | Instalē norādītās publiskās atslēgas, kur atbalstīts |
Worker specifiski ceļi var atbalstīt mazāku kopu. Īpaši hardware, Proxmox un Raspberry Pi būvētājiem ir savi adapteri. Pārskatiet normalizēto recepti un build brīdinājumus izvēlētajam mērķim.
Ja paroles autentifikācija ir atslēgta, pirms izvietošanas uz hardware iekļaujiet un patstāvīgi pārbaudiet vismaz vienu derīgu publisko atslēgu. Nelieciet privātās atslēgas vai paroles receptes pakalpojumu konfigurācijā.
Citi pakalpojumi
Tādi nosaukumi kā nginx, wireguard, DNS, DHCP vai firewall komponenti
nav universāls konfigurācijas API. To pakotnes un konfigurācija nāk no
atbilstošās feature, hook, pakotņu saraksta vai startup script izvēlētajam
base. Jebkurš objekts, piemēram, config.sites, var tikt pieņemts shēmā
un tomēr tikt ignorēts.
Izmantojiet šo secību:
- Izvēlieties base image un ieslēdziet konkrēto feature vai pakotnes.
- Pievienojiet tikai konfigurācijas atslēgas, kas ieviestas šai iespējai.
- Pārskatiet normalizēto recepti un ģenerētos brīdinājumus.
- Pievienojiet assertions par pakotņu klātbūtni, pakalpojumu ieslēgšanu, klausīšanās portiem, konfigurācijas failiem un atbildi lietotnes līmenī.
- Palaidiet un pārbaudiet artefaktu pirms hardware vai production promotion.
Sk. Features, Startup scripts, un Assertion types.