DevSecOps: Introduksjon

Hva er DevSecOps?

DevSecOps er en naturlig videreføring av DevOps, som kombinerer utvikling (Dev) og drift (Ops) for å skape en rask, automatisert og smidig prosess for programvareleveranser. I DevSecOps legger vi til “Sec” – sikkerhet – som en integrert del av prosessen. Dette betyr at sikkerhetstiltak ikke lenger er noe som legges til sist, men som inngår i alle ledd: fra planlegging og design, via koding og bygg, til testing, deploy og kontinuerlig monitorering.

Ved å integrere sikkerhet tidlig i prosessen, reduserer vi risikoen for at sårbarheter oppstår i produksjon – og vi forbereder oss på å møte trusler raskt og effektivt.

Illustrasjon av DevSecOps-livssyklus
DevSecOps-livssyklus: Alle steg fra planlegging og koding til deploy og monitorering inkluderer sikkerhetstiltak.

Hvorfor er DevSecOps viktig?

Tradisjonelt ble sikkerhet ofte sett på som et eget team eller et tillegg som kom helt mot slutten av utviklingsprosessen. Dette kunne føre til at sårbarheter ble oppdaget sent – noe som resulterte i kostbare og tidkrevende patchinger eller, enda verre, sikkerhetsbrudd.

Med DevSecOps:

DevSecOps er derfor ikke bare en teknisk løsning, men også en endring i arbeidskultur og organisasjonsstruktur.

Den røde tråden i DevSecOps

I dette kurset vil vi se på hvordan du med ulike verktøy og teknikker kan implementere DevSecOps:

  1. Infrastructure as Code (IaC): Bruk Terraform eller Ansible for å automatisere og sikre oppsettet av infrastruktur.
  2. Container-teknologi: Lær hvordan Docker gjør applikasjoner lette og repeterbare, og hvordan Kubernetes orkestrerer disse i stor skala.
  3. Versjonskontroll: Bruk Git til å administrere kode, med strenge code reviews og secrets-scanning for å beskytte sensitiv informasjon.
  4. CI/CD pipelines: Automatiser testing og deploy med sikkerhetstester (SAST/DAST, container-scanning) integrert i arbeidsflyten.
  5. Overvåkning og logging: Bruk Prometheus, Grafana og ELK-stack for å monitorere systemytelse og sikkerhet, slik at du kan reagere raskt ved problemer.

Ved å se på alle disse aspektene, får du en helhetlig forståelse av hvordan moderne systemer bygges, distribueres og sikres – og hvordan du kan overføre disse prinsippene til din egen arbeidsflyt.

Kursoversikt

Undervisningsopplegget består av følgende moduler:

  1. Introduksjon: Hva er DevSecOps, hvorfor er det viktig, og hvilken verdi det gir.
  2. Infrastructure as Code (IaC): Automatisering og sikker oppsett av infrastruktur med Terraform/Ansible – inkludert installasjonssteg på Linux.
  3. Docker: Bygging, skanning og sikker håndtering av containere.
  4. Kubernetes: Orkestrering av containere med fokus på sikkerhet (RBAC, Network Policies, Secrets).
  5. Git og Versjonskontroll: Hvordan sikre kode med pull requests, code reviews og automatisert secrets-scanning.
  6. CI/CD Pipelines: Automatisering av bygg, test og deploy, med integrerte sikkerhetstester.
  7. Orkestrering og Overvåkning: Hvordan samle inn data, logge og reagere på sikkerhetshendelser med Prometheus, Grafana og ELK.

Denne strukturen gir en naturlig progresjon fra grunnleggende konsepter til avanserte implementasjoner, og sikrer at du til slutt har en robust, sikker og automatisert prosess.