# Infrastruktur som kode

> Utvalgt arbeid som viser denne tjenesten.

- [Styrket datasikkerheten ved å innføre 1 000 RBAC‑regler for utviklere, applikasjonsinstanser, PostgreSQL, MS SQL og andre Linux‑servere, og forhindret uautorisert tilgang; dokumentert med Ansible‑automatisering.](https://platform.engineer.company/nb/portfolio/enhanced-data-security-by-implementing-1-000-rbac-14/)
- [Klargjorde Azure‑infrastruktur som kode med Bicep — Container Apps, PostgreSQL Flexible Server, Front Door/WAF og nettverk — i utviklings-, staging- og produksjonsmiljøene.](https://platform.engineer.company/nb/portfolio/provisioned-azure-infrastructure-as-code-with-bicep-container-68/)
- [Konfigurerte lagringstiden for databasens sikkerhetskopier som infrastruktur som kode, gjennomgikk deretter gjenopprettingsberedskapen og dokumenterte fremgangsmåten for gjenoppretting — og navnga de gjenværende hullene i stedet for å la dem bli oppdaget under en hendelse.](https://platform.engineer.company/nb/portfolio/configured-database-backup-retention-as-infrastructure-as-code-72/)
- [Bygde selskapets egen infrastruktur som 19 Ansible‑playbooks og 34 roller på 12 065 linjer YAML, som konvergerer en vert i drift mot en deklarert tilstand der hver play er idempotent.](https://platform.engineer.company/nb/portfolio/built-the-companys-infrastructure-as-code-108/)
- [Driftet hele selskapet på én vert med én kjerne og 512 MB — en git‑forge, en webserver for sju domener, Tor, to servere for alternative protokoller, sikkerhetskopier og utestenging av inntrengere — ved å behandle 464 MB brukbart minne som den bindende arkitekturbegrensningen.](https://platform.engineer.company/nb/portfolio/ran-the-whole-company-on-one-512mb-host-109/)
- [Herdet SSH til 24 kontrollerte direktiver med validering i tre trinn — kandidatfilen, den sammensatte konfigurasjonen og så daemonens egen tilbakelesing — etter at tilbakelesingen avslørte at den kjørende serveren i det stille overstyrte to av de tjuefire.](https://platform.engineer.company/nb/portfolio/hardened-ssh-with-three-stage-validation-111/)
- [Bygde krypterte sikkerhetskopier utenfor verten med restic, med opprydding etter lagringstid, integritetskontroll og en månedlig automatisert gjenopprettingsøvelse, gjennomgikk deretter gjenopprettingsberedskapen og skrev ned hullene i stedet for å la dem bli oppdaget under en hendelse.](https://platform.engineer.company/nb/portfolio/built-encrypted-backups-with-a-monthly-restore-drill-114/)
- [Bygde overvåking med dødmannsknapp som bare sender ping så lenge minne og disk er i orden, slik at en svekket vert utløser et varsel ved å bli stille — og fanget opp seks variabelnavn som sa «free» der kontrollen korrekt målte «available», en størrelsesorden fra hverandre på en maskin med 464 MB.](https://platform.engineer.company/nb/portfolio/built-dead-mans-switch-monitoring-115/)
- [Fikk check‑modus til å fortelle sannheten på tvers av hele plattformen etter å ha funnet seks sonder som avgjorde ut fra en verdi verten aldri hadde gitt, fordi Ansibles command‑modul melder suksess under --check og samtidig hopper helt over kommandoen.](https://platform.engineer.company/nb/portfolio/made-ansible-check-mode-tell-the-truth-116/)
- [La til en preflight‑play som kjører den samme koden som konvergeringen mot operatørens lokale hemmeligheter på omtrent ett sekund, etter at en halvveis gjennomført produksjonskjøring stoppet på den niende oppgaven med swap‑innstillingene allerede skrevet til verten i drift.](https://platform.engineer.company/nb/portfolio/added-a-preflight-play-for-secrets-117/)
- [Avstemte en DNS‑sone med 20 poster deklarativt mot Cloudflare‑API‑et med egne inngangspunkter for revisjon og BIND‑eksport, og slo CDN‑proxyen av igjen av personvernhensyn etter å ha bygd den.](https://platform.engineer.company/nb/portfolio/reconciled-a-dns-zone-declaratively-118/)
- [Reduserte eksponeringen i systemd‑sandkassen for hver enhet plattformen installerer — tjenesten for dødmannsknappen fra 9,6 UNSAFE til 1,5, en internetteksponert git‑forge fra 8,3 EXPOSED til 1,5 — og la til en parserkontroll ved konvergering etter å ha funnet et feilstavet direktiv som ble ignorert i det stille i tre enhetsmaler.](https://platform.engineer.company/nb/portfolio/cut-systemd-sandbox-exposure-across-every-unit-119/)
- [Satte selskapets egen git‑forge på Soft Serve i produksjon, privat som standard, uten webpanel og med SSH‑porten bundet til loopback bak en hoppvert, og gjorde landingssiden foran den til en byggeartefakt fra hovednettstedet i stedet for en kopi som vedlikeholdes for hånd.](https://platform.engineer.company/nb/portfolio/deployed-the-companys-own-git-forge-121/)
- [Automatiserte klargjøringen av en server nummer to hos en annen skyleverandør, der brannmuren opprettes før maskinen slik at den blir født bak en, og begge leverandørenes brannmurer er skrevet direkte mot deres REST‑API‑er for å slippe en collection fra tredjepart.](https://platform.engineer.company/nb/portfolio/provisioned-a-second-server-from-code-123/)
- [Delte opp de fire driftshemmelighetene per vert etter å ha slått fast at to verter som deler én dødmannsknapp, varsler mindre enn to knapper, ikke mer, og at en felles passordfrase for sikkerhetskopier gjør to verter til ett repo.](https://platform.engineer.company/nb/portfolio/split-every-operational-secret-per-host-125/)
- [Prøvekjørte CI‑hooken på forge‑siden og fant to feil som ikke kunne oppdages ved å lese filen: en reserveløsning som la et uoppløselig argument på hookens inndata, og gits egen miljøvariabel som fulgte kvalitetsporten inn i utsjekkingen og gjorde 19 tester røde.](https://platform.engineer.company/nb/portfolio/rehearsed-the-forge-side-ci-hook-151/)
- [Publiserte nettstedet som et Tor onion‑speil på en lesbar adresse som begynner med engineer, med nøkkelen generert utenfor verten slik at den aldri havnet i dette repoet eller på en bærbar PC, og lot det være den ene av fire inngangsdører som aldri telles.](https://platform.engineer.company/nb/portfolio/published-the-site-as-a-tor-onion-mirror-on-a-readable-168/)

<https://platform.engineer.company/nb/services/infrastructure-as-code/>
