Case study

CloudVikings.nl

Een compleet hostingplatform waar je AI-assistent je website bouwt en je domeinen beheert, en waar jij met je passkey de sleutels houdt.

Laravel 13 Vue 3 MCP-server OAuth 2.1 Passkeys PowerDNS + DNSSEC gVisor Caddy
31tools voor AI-assistenten
71acties, allemaal via één poortwachter
700+domeinextensies
3DNS-netwerken in NL, DE en FR

De uitdaging

AI-assistenten zoals Claude en ChatGPT kunnen inmiddels een complete website bouwen. Maar daarna begint het gedoe: hosting regelen, een domeinnaam registreren, DNS goed zetten zodat de e-mail blijft werken, een certificaat aanvragen. Voor de meeste ondernemers is dat het moment waarop het project stilvalt, of waarop iemand met de inloggegevens van het hostingpanel gaat schuiven.

Je kunt een assistent die rechten natuurlijk gewoon geven. Dan heb je wel een probleem. Er zijn genoeg voorbeelden van AI-agents die een productiedatabase leegden of een live omgeving overschreven, terwijl er in hun instructies netjes stond dat ze eerst moesten vragen. Een afspraak in een prompt is geen beveiliging. Daar draait CloudVikings om: goedkeuring moet door het platform worden afgedwongen, niet door de prompt.

Wat CloudVikings doet

CloudVikings is een Nederlands hostingplatform voor domeinnamen, DNS, websites en webapplicaties, gebouwd zodat je AI-assistent er direct mee kan werken. Je koppelt Claude, ChatGPT, Claude Code, Cursor of VS Code met één klik. Daarna zeg je in gewone taal wat je wilt, bijvoorbeeld “Maak een website voor mijn bakkerij en zet hem op bakkerijjansen.nl” of “Zet Microsoft 365 goed op mijn domein”, en de assistent doet het werk.

De verdeling is daarbij strikt:

  • Mag de assistent zelf: meekijken in je domeinen, DNS, websites en apps, een gratis proefsite publiceren, en een nieuwe versie op de testomgeving zetten. Productie verandert daarbij niet.
  • Moet jij goedkeuren: alles wat live gaat, geld kost of je DNS en e-mail raakt. De assistent maakt een voorstel en jij keurt het goed met je passkey of authenticator-app, ook vanaf je telefoon.
  • Kan de assistent nooit: wachtwoorden, betaalgegevens of andere geheimen zien. Die vul je zelf in, in Mijn CloudVikings.

Het aanbod

  • Domeinnamen — meer dan 700 extensies, met registratie, verhuizing, verlenging en houderwijziging. DNS en DNSSEC zitten erbij.
  • DNS — ook voor domeinen die elders geregistreerd staan, met kant-en-klare recepten voor Microsoft 365, Google Workspace, DMARC en websites op Netlify, Vercel, Lovable of GitHub Pages.
  • Proef — 14 dagen gratis een website online zetten op een testadres, zonder betaalgegevens.
  • Site — een statische website op je eigen domein, met test- en productieomgeving, https en met één klik terug naar een vorige versie.
  • App — een webapplicatie vanuit je eigen Dockerfile, in elke programmeertaal, met PostgreSQL of MySQL, Redis, workers, cron en een nachtelijke back-up.
  • GitHub — elke push wordt automatisch gebouwd en op de testomgeving gezet, met de status bij je commit. Live zetten doe je zelf.
  • Doorsturen — 301/302-redirects voor domeinen, ook via https.
  • Partners en webbureaus — een bureau beheert de domeinen en sites van klanten vanuit het eigen account, terwijl de klant eigenaar blijft en goedkeurt.

De techniek

CloudVikings is een volledig eigen platform: van het klantportaal en de AI-koppeling tot de DNS-servers, de webservers en de container-omgeving. Er zit geen standaard hostingpaneel onder.

Architectuur in vogelvlucht

  • Klantportaal — Laravel 13 met Vue 3 en TypeScript via Inertia, Tailwind 4 en MySQL. Statische analyse op PHPStan level 7 en een testsuite die bij elke wijziging in CI draait.
  • MCP-server — de koppeling voor AI-assistenten via het Model Context Protocol, met OAuth 2.1, PKCE en dynamische client-registratie. 31 tools en 5 kant-en-klare taken, zoals “website bouwen” en “domein verhuizen”.
  • DNS — PowerDNS met een verborgen primaire server die alleen via een versleutelde WireGuard-tunnel bereikbaar is, en drie publieke nameservers bij drie verschillende partijen in Nederland, Duitsland en Frankrijk.
  • Edge — Caddy-servers die automatisch certificaten aanvragen via Let’s Encrypt of ZeroSSL, met een standby-server die het verkeer automatisch overneemt als de actieve uitvalt.
  • Apps — Podman-containers met gVisor als runtime, zodat elke app een eigen sandbox-kernel heeft, en een apart afgeschermd netwerk per omgeving.
  • Builds — Dockerfiles worden rootless gebouwd met BuildKit, zelf ook in een gVisor-sandbox, zonder toegang tot databases.
  • Back-ups — elke nacht naar een andere locatie in Amsterdam, met Object Lock zodat ze niet gewist of aangepast kunnen worden.
  • Betalingen en facturatie — iDEAL en creditcard via Mollie, automatische incasso voor zakelijke klanten, btw-afhandeling inclusief verlegging binnen de EU.

Interessante uitdagingen

Een AI-assistent die alleen kan voorstellen

Elke wijziging in CloudVikings, of die nu van een klant, een webbureau of een AI-assistent komt, loopt door één centrale poortwachter. Die controleert of de actie mag, of de koppeling er rechten voor heeft, of de gebruiker die rechten op dat moment nog heeft, en of de wijziging klopt. Een assistent krijgt nooit meer rechten dan de persoon die hem koppelde, en alleen voor de onderdelen die die persoon aanvinkte.

Wil de assistent iets live zetten, dan levert dat een voorstel op met een goedkeuringslink. Dat voorstel is vastgezet op een vingerafdruk van de exacte inhoud: wat je goedkeurt, is precies wat er wordt uitgevoerd. Wie het voorstel deed, kan het niet zelf goedkeuren, en een assistent keurt nooit iets goed. Bedrijven kunnen bovendien een tweede collega laten meekijken: het vier-ogenprincipe per onderdeel.

Voorstellen die bij elkaar horen, in één keer goedkeuren

Een domeinverhuizing bestaat uit meerdere stappen: de verhuizing zelf, de DNS-zone, de records en de nameservers. Niemand wil daar vier keer voor goedkeuren. CloudVikings bundelt voorstellen voor hetzelfde domein, laat ze in één keer goedkeuren en voert ze uit in de juiste volgorde. Een stap die moet wachten tot de verhuizing klaar is, wacht automatisch.

Data is geen instructie

Een bekend risico bij AI-agents is prompt injection: iemand zet een instructie in data die de assistent leest, zoals een DNS-record of een regel in een buildlog. CloudVikings markeert alle records, namen en logs expliciet als data en niet als opdracht. Geheime waarden, zoals wachtwoorden in app-variabelen, worden afgeschermd in logs en nooit aan de assistent getoond of in afgeronde voorstellen bewaard.

E-mail die blijft werken

De klassieke fout bij het instellen van Microsoft 365 of Google Workspace is een tweede SPF-record, waardoor mail ineens in de spam belandt. De recepten van CloudVikings voegen SPF-regels samen tot één geldig record, volgen alle includes om het aantal DNS-lookups te tellen en waarschuwen als de limiet van 10 wordt overschreden. Ook bij een verhuizing worden bestaande records overgenomen, zodat website en e-mail gewoon blijven werken.

Een activiteitenlog dat niemand kan herschrijven

Elke actie komt in een activiteitenlog: wie het deed, wat er veranderde, vanaf welk apparaat en hoe het werd bevestigd. Ook de acties van AI-assistenten, webbureaus en de eigen support. Het log kan alleen worden aangevuld. Elke regel bevat een SHA-256-vingerafdruk van de vorige, dus wie achteraf iets aanpast, breekt de keten. Ieder uur wordt het laatste punt van die keten vastgelegd in opslag met Object Lock die 730 dagen door niemand te wijzigen is, ook niet door CloudVikings zelf. De vingerafdrukken staan openbaar online, zodat iedereen kan controleren dat er niets is herschreven.

DNSSEC zonder risico

DNSSEC verkeerd aanzetten kan een domein onbereikbaar maken. CloudVikings doet het daarom in een vaste volgorde: eerst ondertekenen, dan controleren of alle nameservers de ondertekende zone serveren, en pas daarna de sleutel bij het register publiceren. Uitzetten gaat in omgekeerde volgorde met een veilige wachttijd. De sleutels worden automatisch vernieuwd.

Containers die elkaar niet kunnen raken

Op een hostingplatform draai je code van anderen. Elke app draait daarom in gVisor, met een eigen sandbox-kernel per container en een eigen netwerk per omgeving, zodat test en productie elkaar niet kunnen bereiken. De servers halen hun gewenste toestand zelf op bij het portaal in plaats van opdrachten van buitenaf aan te nemen. Er staat dus geen beheerpoort open die misbruikt kan worden, en zelfs een gekaapt portaal kan nooit iets laten draaien buiten de sandbox en de limieten. Valt een app een minuut lang stil, dan wordt hij automatisch herstart.

Inloggen zonder zwakke schakel

Tweestapsverificatie is altijd verplicht: een wachtwoord plus een passkey of authenticator-app. Elke wijziging vraagt opnieuw om die tweede factor, gekoppeld aan precies die wijziging. Bij een passkey wordt de cryptografische uitdaging zelfs afgeleid van de inhoud van de wijziging. Ondersteuning kan alleen meekijken met een code die de klant zelf doorgeeft, en ziet dat terug in het log.

Het resultaat

CloudVikings laat zien dat AI-assistenten en serieuze hosting prima samengaan, zolang het platform de grenzen bewaakt. Een ondernemer zonder technische kennis kan in één gesprek een website laten bouwen, testen en live zetten op een eigen domein. Een developer pusht naar GitHub en ziet zijn app binnen enkele minuten op een testadres. Een webbureau beheert de domeinen en sites van zijn klanten zonder gedeelde wachtwoorden, terwijl de klant eigenaar blijft. En in alle gevallen keurt een mens elke wijziging goed die ertoe doet, met een spoor dat achteraf niet te vervalsen is.

Wat dit project laat zien

  • Een compleet SaaS-platform van ontwerp tot productie, inclusief betalingen, facturatie en btw
  • AI-integratie via het Model Context Protocol, met OAuth 2.1 en afdwingbare menselijke goedkeuring
  • Beveiliging op elk niveau: passkeys (WebAuthn), step-up per wijziging, rechtenmatrix, vier-ogenprincipe
  • Een manipulatiebestendig activiteitenlog met hash-ketens en externe verankering
  • Eigen DNS-infrastructuur met PowerDNS, DNSSEC en drie onafhankelijke netwerken
  • Container-hosting met gVisor-sandboxing, rootless builds en automatische certificaten
  • Koppelingen met domeinregistratie, Mollie, GitHub en Domain Connect
  • Infrastructuur die zichzelf bewaakt, overschakelt naar een standby-server en herstelt

Een platform met AI-koppeling laten bouwen?

Wil je jouw software laten samenwerken met AI-assistenten, maar wel met de controle bij de mens? Of heb je een platform nodig met serieuze beveiliging, rechtenbeheer en een betrouwbaar audit-spoor? Bekijk de webapplicatiepagina en API-integraties, of vraag direct een offerte aan.

Heb je een vergelijkbaar idee?

We bouwen graag jouw volgende product. Vertel ons over je plannen.