Zo voorkomt u dat Home Assistant-geheimen in Compose-bestanden of back-ups terechtkomen

Eva Wong is de Technisch Schrijver en en vaste knutselaar bij ZimaSpace. Een levenslange geek met een passie voor homelabs en open-source software, zij is gespecialiseerd in het vertalen van complexe technische concepten naar toegankelijke, praktische handleidingen. Eva gelooft dat zelf-hosting leuk moet zijn, niet intimiderend. Met haar tutorials stelt ze de community in staat om hardware-setup te ontrafelen, van het bouwen van hun eerste NAS tot het beheersen van Docker-containers.

Voorkom het lekken van geheimen door waarden buiten deelbare Compose-definities te houden en elke back-up of diagnostische export als gevoelig te behandelen totdat deze een inhoudsscan heeft doorstaan.

Home Assistant heeft tijdens runtime inloggegevens nodig, dus geen enkele lokale indeling maakt ze onzichtbaar voor een beheerder met volledige toegang tot de host. Het praktische doel is beperkter: voorkom onbedoelde commits, uploads voor ondersteuning, brede back-upkopieën en onnodige toegang vanuit containers. Breng in kaart waar elke waarde de stack binnenkomt, vervang letterlijke waarden door een beheerde bron voor geheimen en test de geëxporteerde artefacten zonder de geheimen zelf af te drukken.

Breng elke plek in kaart waar een geheim kan uitlekken

Maak een lijst van API-tokens, databasewachtwoorden, MQTT-inloggegevens, webhook-URL's, versleutelingssleutels, privésleutels van certificaten en herstelsleutels. Noteer voor elk geheim de runtimegebruiker, het opslagpad, de bestandseigenaar, opname in back-ups, repositorystatus, blootstelling in logboeken en rotatiemethode. Kopieer de waarden niet naar de inventaris.

Bestanden met geheimen organiseren waarden, maar blijven leesbare tekst voor een account dat toegang heeft tot de host. Deze toegangsgrens voor leesbare tekst betekent dat scheiding vooral onbedoelde openbaarmaking beperkt, en geen volledig bevoegde aanvaller buiten de deur houdt.

Er is sprake van een fout als er een letterlijke waarde in YAML van Compose staat, als een omgevingsbestand wordt bijgehouden in versiebeheer, als een configuratiemap breed leesbaar is of als een export een onbekende inhoud heeft. Pauzeer het delen en het pushen naar repositories totdat elk blootstellingspad een eigenaar en een oplossing heeft.

Scheid runtimegeheimen van implementatiedefinities

Vervang letterlijke waarden in Compose door bestandsgebaseerde geheimen met strikt beperkte rechten of door een andere door de implementatie ondersteunde bron voor geheimen. Geef elke service alleen de waarden die deze gebruikt, koppel ze waar mogelijk alleen-lezen aan en beperk de hostrechten tot de runtime-identiteit en beheerders.

Omgevingswaarden kunnen zichtbaar worden via inspectie, procescontext of logboeken, terwijl het koppelen van bestandsgebaseerde geheimen kan beperken welke containers een inloggegeven ontvangen. Ook lokale bestanden met geheimen vereisen toegangsbeheer.

Valideer eerst met tijdelijke aanduidingen, inspecteer de gegenereerde Compose-configuratie op onbedoelde letterlijke waarden, start vervolgens één service en controleer of deze alleen het toegewezen geheim kan lezen. Zet de wijziging terug als de toepassing hierdoor waarden gaat herhalen of brede toegangsrechten voor mappen vereist.

Bepaal wat back-ups en ondersteuningsbundels bevatten

Classificeer back-ups als bestanden die inloggegevens bevatten, tenzij het tegendeel aantoonbaar is. Versleutel kopieën die de vertrouwde opslaggrens verlaten, bewaar herstelsleutels afzonderlijk, beperk bewaartermijn en toegang en voeg nooit een volledig configuratiearchief toe als een geredigeerd fragment uit het logboek de ondersteuningsvraag kan beantwoorden.

Gebruik de workflow voor configuratiebescherming om herstelbaarheid te behouden en tegelijk veilige opslag te scheiden van deelbaar implementatiemateriaal.

Scan vóór vrijgave bestandsnamen en uitgepakte tekst op bekende sleutelnaam, tokenvoorvoegsels, privé-URL's, e-mailadressen, certificaten en de exacte hashes van beheerde testmarkeringen. Een schone scan is een vrijgavevoorwaarde, geen bewijs dat er geen geheim in een onbekend formaat aanwezig kan zijn.

Roteer blootgestelde geheimen en bewijs het preventiepad

Als een bruikbare waarde in een repository, ticket, chat, openbare link of niet-vertrouwde back-up terechtkwam, trek deze dan eerst in of roteer deze; het verwijderen van de zichtbare kopie maakt kopieën of geschiedenis niet ongeldig. Leg de getroffen service en het rotatietijdstip vast zonder de oude waarde te bewaren.

Maak een onschadelijk kanariegeheim, implementeer dit via het nieuwe pad, genereer de gebruikelijke Compose-weergave, back-up en diagnostische bundel en doorzoek deze artefacten vervolgens. De runtime moet het kanariegeheim ontvangen, terwijl deelbare artefacten het niet buiten de bewust beschermde back-upgrens blootleggen.

Stop wanneer echte geheimen ontbreken in implementatiedefinities en repositories, beschermde back-ups een afzonderlijk herstelpad hebben, artefactscans slagen en blootgestelde inloggegevens zijn geroteerd. Schakel hulp in wanneer een integratie van derden geheimen in logboeken vastlegt of zonder bredere hosttoegang geen beperkte bron voor geheimen kan gebruiken.

Ondersteuning & Tips

Meer om te lezen

Dubbele taken of imports in Immich voorkomen
Sep 08, 2026

Dubbele taken of imports in Immich voorkomen

Scheid herhaalde taken van dubbele assets. Gebruik één canoniek ingestiepad, beheer retries en padwijzigingen en test vervolgens opnieuw invoeren op een kleine groep.

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.