operativsystemer og programvare

Qbee skal gjøre det enkelt å sikre og administrere IoT-enheter. Også de gamle

Forutsetningen er at de kjører Linux.

Det er svært mange ulike IoT-enheter som kan administreres ved hjelp av Qbee. På bildet vises et lite utvalg.
Det er svært mange ulike IoT-enheter som kan administreres ved hjelp av Qbee. På bildet vises et lite utvalg.

ROSENHOLM, OSLO (digi.no): Det finnes enorme mengder Linux-baserte IoT-enheter i verden. I praksis dreier det seg om små servere, men hvor kvaliteten på sikkerhetsoppsettet kan være av svært varierende kvalitet, og ofte så dårlig at enheten ikke bør være tilgjengelig via internett. Det å koble dem fra nettet er likevel sjelden noe alternativ, for da får ikke eierne av enheten tilgang til dem, da enhetene ofte kan være installert på et vanskelig tilgjengelig sted.

Denne utfordringer ønsker norske Qbee å løse, og ikke bare for kommende IoT-enheter, men også for mange av de millionene av enhetene som allerede finnes der ute.

Er egentlig servere

– Qbee ønsker å administrere, sikre og provisjonere Linux-baserte IoT-enheter. Det finnes veldig gode verktøy til å administrere store servere. Det burde også være mulig på IoT-siden, da embedded Linux kjører jo samme type teknologier som «vanlig» Linux. Det handler i dag egentlig bare om du kompilerer for en Intel-plattform eller en annen arkitektur, sier Carsten Lehbrink, daglig leder i Qbee, til digi.no.

Det finnes veldig gode verktøy til å administrere store servere. Det burde også være mulig på IoT-siden.

Carsten Lehbrink

– I et datasenter har du veldig mange servere på ett sted. Det er ofte veldig god sikkerhet, drift og overvåkning døgnet rundt, gode brannmurløsninger, betydelig grad av redundans, et stort team med gode administratorer og mange programvareverktøy som hjelper dem med å gjøre jobben, fortsetter han.

– Alle disse enhetene som du ser rundt omkring, de er egentlig også servere med mulighet til å sende og motta data. Det er nettopp derfor man bruker dem. Det finnes vidt forskjellig systemer. Det kan være en gateway som kommuniserer via 4G og som henter inn data fra for eksempel sensorer eller andre typer systemer. Det kan være point-of-sale-systemer eller en kontroller som styrer et eller annet. Alle disse kjører full embedded Linux og har akkurat de samme utfordringene, sier Lehbrink.

Den store forskjellen

Han peker på at enhetene trenger en brannmur, ulike brukerprofiler, SSL-sertifikater og gode passord. De må også holdes i orden ved å sikre at det er nok lagringsplass, nok CPU-kapasitet og at bibliotekene er oppdaterte, for å nevne noe.

– Men ofte installeres enhetene uten at dette gis en eneste tanke, sier han.

Investor i Qbee, Tom Christensen, flankert av daglig leder Carsten Lehbrink (til venstre) og utvikleren Dmitry Shevchenk. Foto: Harald Brombach
Investor i Qbee, Tom Christensen, flankert av daglig leder Carsten Lehbrink (til venstre) og utvikleren Dmitry Shevchenk.

Den store forskjellen, er omgivelsene enhetene installeres i. Vanlige servere installeres gjerne pent og pyntelig i et datasenter som det er enkelt for administratorene å få tilgang til.

– Og så har du alle disse andre enhetene som kan sitte hvor som helst. Det er for eksempel ikke vanskelig å installere en gateway på et tak, men det er veldig vanskelig å få tilgang til taket i ettertid. Det må ofte avtales, både med eieren av bygget og vaktmesteren, sier Lehbrink.

Blir litt glemt

Han sier videre et problem hos mange er at etter at enhetene har blitt satt ut, så blir de litt glemt.

Vi har sett slike enheter være i drift i ti år og kommet langt utover vedlikeholds-vinduet.

Carsten Lehbrink

– «Den sitter ikke hos oss, så la oss ikke tenke for mye på det». Dette kan føre til sikkerhetsproblemer. I tillegg forblir slike IoT-enheter aktive ganske lenge. Vi har sett slike enheter være i drift i ti år og kommet langt utover vedlikeholdsvinduet. Når ting som Heartbleed kommer, hvor du har en svakhet i et OpenSSL-bibliotek, så er det veldig mange enheter som egentlig ikke kan fikses. Dette er et stort problem som vi adresserer med Qbee, sier Lehbrink.

Har fjernet «air gap»

– Et annet problem vi adresserer, er driftsutfordringene knyttet til at du må ut fordi du fortsatt drifter ting mer eller mindre «onsite». For eksempel kan det være at 4G har falt ut uten at enheten har fått det med seg. Dermed starter den ikke på nytt av seg selv. Vi har sett at store IoT-installasjoner driftes via manuell SSH-innlogging og -konfigurering. Vi har opplevd at enheter som var like da de ble installert, så er ingen av dem lenger likt konfigurert etter bare et år, forteller han.

Dette kan blant annet skyldes av administratorene glemmer å gjøre et eller annet, eller at endringer ikke går gjennom.

Enheter som tidligere hadde fullstendig «air gap», kommer nå i kontakt med internett i en eller annen form.

Carsten Lehbrink

– Mange store, industrielle selskaper har mange desentraliserte IoT-enheter, men de har egentlig ingen struktur rundt hvordan de kan drifte og overvåke dette. Egentlig er det ofte en slags «best effort». I tillegg har de mange gamle enheter som har blitt brukt lenge uten noen internettilknytning. Så kommer det en digitaliseringsprosess inn i bildet, som fører til at enheter som tidligere hadde fullstendig «air gap», nå kommer i kontakt med internett i en eller annen form. Dette kan resultere i svak sikkerhet og usikrede tilganger, forteller Lehbrink.

Det vil heller ikke hjelpe å avstenge tilgangen med brannmurer og lignende, for da er det ingen som får tilgang til systemene som kjøres på disse enhetene.

– Det er jo ingen vits i å ha et slikt system kjørende dersom du ikke klarer å få informasjon ut og kan styre de interne systemene. Det er også mange nye farer, og enheten har du kanskje ikke lenger support på. Selskaper forteller oss at de har et problem, men de vet ikke engang hvor stort problemet er, fordi de ikke egentlig vet hva de har av systemer.

Hva kan så Qbee gjøre med dette?

Først og fremst gjennomfører de en gjennomgang av sikkerheten på IoT-enheten. Blant annet sørger de for at brannmuren til enheten er riktig satt opp

– Selv om brannmuren på slike enheter ofte ikke er den beste, så er det i alle fall viktig at den er konfigurert riktig. Da har du allerede utelukket 99,99 prosent av alle farer, hevder Lehbrink.

Selskaper forteller oss at de har et problem, men de vet ikke engang hvor stort problemet er.

Carsten Lehbrink

Ofte er det likevel slik at porter for SSH og webtrafikk være åpne for at eierne skal få tilgang til enheten. Også dette kan være en sikkerhetsrisiko, ifølge Lehbrink. Løsningen til Qbee er å installere en programvare, en agent, på enhetene. Med denne installert, kan alle innkommende porter til enheten stenges.

VPN-forbindelse

I stedet åpner agenten en VPN-kanal til en av Qbees servere, og kunden kan deretter kommunisere med enheten via en egen desktopapplikasjon, Qbee Connect, Den kan koble seg for eksempel til en webserver som kjører på enheten, uten at webserveren er tilgjengelig på andre måter. Applikasjonen finnes til Windows, MacOS og Linux.

Men det er også mulig å kjøre webapplikasjoner som Node-RED på enheten uten å åpne for dette i brannmuren til enheten. I stedet kan porten mappes til de tilsvarende porten på PC-en til brukeren, som da kan åpne applikasjonen i nettleseren via http://localhost eller tilsvarende.

Tilsvarende kan det være mulig å logge seg på enheten med SSH via en nettleser og Qbees infrastruktur, uten at SSH-porten på enheten er åpen.

Ser etter svakheter

Den nevnte sikkerhetsgjennomgangen av enhetene inkluderer også en sjekk om det er andre svakheter i systemet. Blant annet gjøres det en kontroll av brukerkontoene på enhetene, blant annet ved å se hvor passordene gamle passordene er, hvordan de er hashet og om de muligens fortsatt er leverandørens standard passord. Det sjekkes om biblioteker og annen programvare har kjente sårbarheter.

– Vi har ikke fokus på å oppdatere fastvare «over the air». Dersom det oppdages at du har en svakhet i for eksempel OpenSSL-biblioteket, så har vi en mulighet til å erstatte det. Men da må du teste ordentlig på forhånd, sier Lehbrink.

Både nye og gamle enheter

Qbee-agenten kan kjøres på både gamle og nye enheter, fra vidt forskjellige leverandører. Denne tar i bare i bruk de mest grunnleggende Linux-bibliotekene og kompileres for hver plattform.

– Agenten er skrevet i C og Go og er veldig enkel å krysskompilere, sier Lehbrink.

Det veldig viktig at det ikke hele tiden skrives til flashminnet til enheten.

Carsten Lehbrink

Agent er spesielt lagd for å bruke lite ressurser. Blant annet ligger den innebygde databasen i en RAM-disk.

– Det veldig viktig at det ikke hele tiden skrives til flashminnet til enheten, forteller Lehbrink.

Årsaken er selvfølgelig at flashminnet bare tåler et visst antall overskrivninger, og skal enheten vare i mange år, må ikke minnecellene overskrives flere ganger enn høyst nødvendig.

Han forteller at Qbee også tilbyr løsninger for automatisk konfigurering av IoT-enhetene.

«State based» utrulling

Disse konfigurasjonene kan rulles ut til enheten ved hjelp av to metoder.

– Den ene er såkalt «state based». Dette bruker vi på alle sikkerhetsfunksjonene. Da definerer vi hvordan konfigurasjonen skal være, og så konvergerer enheten med den installerte agenten til denne tilstanden. Deretter sier den ifra om den har klart det eller ikke, forklarer Lehbrink.

Dette behøver ikke å skje umiddelbart. Enheter som bare en sjelden gang er tilkoblet internett, vil straks de får tilgang kunne laste inn den nye konfigurasjonen. I andre tilfeller kan det være slik at agenten bare kjøres med faste intervaller, for eksempel hver time, og at enheten ikke kommuniserer med serverne utenom dette.

Ansible

– Den andre er en integrasjon med Red Hat Ansible. Dette er et «fire and forget»-system for konfigurasjonsadministrasjon, og med dette kan du bruke som om du har det lokalt hos deg og gjøre veldig mye. Dette er veldig populært på serversiden og vokser kraftig for tiden, fortsetter han.

– Vi har egentlig tatt mye av tankegangen og det som finnes på serversiden, og satt det opp til å kjøre på embedded.

Carsten Lehbrink

Han legger til at ulempen med «fire and forget»-tilnærmingen er at dersom en enhet ikke er online i det utrullingen av Ansible skjer, så får ikke enheten med seg endringen.

– Vi har egentlig tatt mye av tankegangen og det som finnes på serversiden, og satt det opp til å kjøre på embedded.

Overvåkning

I tillegg til sikring og konfigurering av enhetene, tilbyr Qbee overvåkning av enhetene som en del av tjenesten.

– Du får også måledata i det samme produktet, som er en SaaS-tjeneste. Fra starten av kom folk til oss fordi de har behov for det ene eller det andre. Men det at vi har koblet alt sammen i ett verktøy, hjelper veldig mange med å få kontroll over systemene sine, hevder Lehbrink.

Tjenesten kjøres «multi tenant» i nettskyen til Amazon, slik at hver kunde har sin egen tilgang.

Dashbord

I Qbee-applikasjonen kan brukerne strukturere de tilknyttede IoT-enhetene i et tre, for eksempel fordelt på kunde, lokasjon, leverandør og status, slik som test og produksjon.

– Ved utrulling av nye konfigurasjoner, er det mulig å teste på én eller bare noen få testenheter for å se om det går bra. Dette er veldig viktig dersom du for eksempel må oppdatere et bibliotek på en enhet som ikke lenger har support, sier Lehbrink.

Det er veldig mange enheter som «dør» fordi en loggfil begynner å fylle opp hele disken.

Carsten Lehbrink

I dashbordet skal brukerne også raskt kunne se om det er enheter som ønsker å tilknytte seg systemet eller som ikke lenger rapporterer. Brukerne får også oversikt over feilmeldinger og ressursbruk, samt statistikk om dette.

– Dette kan for eksempel avsløre en minnelekkasje, dersom minneforbruket stiger veldig fort. Det er også veldig mange enheter som «dør» fordi en loggfil begynner å fylle opp hele disken. Dette kan man knytte alarmer til, forteller Lehbrink.

Skal gi oversikt

I dashbordet er også mulig å se blant annet alle nettverksportene, både interne og eksterne, som er i bruk på enheten. Det tilbys også en oversikt over alle programvareelementer som finnes på enheten.

– Når man skal installere en ny applikasjon på enheten, kan det være avgjørende å få oversikt over hvilke versjoner av for eksempel Python og tilhørende biblioteker som finnes på enheten. Ut fra dette kan man vurdere om det går an å kjøre den ønskede applikasjonen på enheten, sier Lehbrink.

I Qbee-applikasjonen er det blant annet mulig å velge de tilknyttede IoT-enhetene fra et kart. Skjermbilde: Qbee
I Qbee-applikasjonen er det blant annet mulig å velge de tilknyttede IoT-enhetene fra et kart. Skjermbilde: Qbee

Oversikten er også koblet mot en CVE-sikkerhetsdatabase som viser hvilke kjente sårbarheter som eventuelt finnes i den installerte programvaren og som kan varsle om nye som er relevante for enheten. Agenten på enheten vil bare overføre data når det har skjedd noe nytt.

Automatisk omstart

Det er også mulig å sette opp mekanismer som sørger for å restarte utvalgte prosessor dersom de stopper opp på enheten. Tilsvarende er det også mulig å stoppe uønskede prosesser som starter opp.

Det er også mulig å sette opp enheten til å restarte seg selv dersom det etter for eksempel fem forsøk verken får kontakt med Qbees server eller en av Googles DNS-servere.

Tre ansatte

Alt dette er likevel bare noe av den funksjonaliteten som tilbys i Qbee-tjenesten, som selskapet har brukt mer enn tre år på å utvikle. Sammen med Lehbrink er det utviklerne Dmitry Shevchenko og Jon Henrik Bjørnstad som utgjør gründerteamet. Alle tre har tidligere jobbet sammen i CF Engine.

Jon Henrik er en av de få som har bredde- og dybdekunnskap til å få dette til å fungere.

Carsten Lehbrink

Lehbrink trekker spesielt fram viktigheten av å ha Bjørnstad på laget, til tross for at Bjørnstad foreløpig har en full jobb ved siden av arbeidet han gjør for Qbee.

– Jon Henrik er en av de få som har bredde- og dybdekunnskap til å få dette til å fungere, sier Lehbrink. Selskapet har også en håndfull partnere som passer inn strategisk og som er interesserte i å så på nye ting. Dette inkluderer et tysk selskap i bilindustrien.

Begrenset marked i Norge

Lanseringen av Qbee-tjenesten er planlagt nå i september. I oktober skal selskapet presenterer løsningen i USA.

– Norge er et land hvor industriell automatisering ikke er like sentralt som i land som Frankrike, Tyskland og USA, så det er litt vanskeligere å finne relevante kunder her. Men vi har snakket med to av de veldig tunge miljøene i Norge. Disse syns det er spennende. Ulempen med dem er at det har såpass mye militær utvikling at de må utvikle en slik løsning selv. De kan ikke bruke tredjepartsløsninger til dette. De har fullstendig skjønt hvorfor vi gjør dette, og de hadde tenkt mange av de samme tankene selv, noe vi syns er litt morsomt, forteller Lehbrink.

Lavt prisnivå

For å kunne posisjonere seg i markedet, tror Lehbrink at selskapet må legge seg på et ganske lavt prisnivå og å tilpasse utgiftene etter dette. Opprinnelig har tjenesten blitt utviklet med en tankegang om én dedikert server per kunde. Dette er nå i ferd med å bli erstattet med den nevnte løsningen i Amazons nettsky.

Kundene må komme dit av seg selv.

Carsten Lehbrink

– Det betyr at det er mulig for oss å onboarde kunder fullstendig automatisert med et abonnement og kobling mot et kredittkortbasert betalingssystem. Vi jobber nå med å få med noen høyprofilerte kunder. På sikt kan vi ikke bruke så mye salgsressurser på dette. Kundene må komme dit av seg selv, og løsningen må være enkel å komme i gang med, forteller Lehbrink.

Prismodellen var ikke endelig da digi.no var på besøk hos Qbee, men Lehbrink regnet da med at de fleste vil velge et abonnement som koster omtrent 199 euro i måneden og støtte for opptil 100 enheter.

Qbee satser også på å tilby konsulenttjenester og en «white label»-utgave av plattformen. Lehbrink ser også for seg at leverandører av IoT-enheter kan velge å basere administrasjonen av produktene sine på Qbee-plattformen.

Konkurransen i markedet

Flere av de store nettskyleverandørene tilbyr i dag egne IoT-løsninger. Lehbrink sier at dette er veldig gode løsninger, men at de fokuserer på SDK- og applikasjonsnivået.

– De har lite å tilby på operativsystem- og maskinvarenivåene, så man trenger Qbee i tillegg. Unntaket er Amazons støtte for FreeRTOS for utvikling av egne enheter fra bunnen av, men de fleste er ikke der i dag, og det er der vi ønsker å komme inn med Qbee, sier Lehbrink.

Systemintegratorer

Han mener de fleste som skal ta i bruk slike løsninger, ikke er programvareutviklere.

Med vårt system kan de løse problemet uten programmering.

Carsten Lehbrink

– Det dreier seg om systemintegratorer som er flinke på å sette sammen systemer. Med vårt system kan de løse problemet uten programmering. Agenten kan etterinstalleres eller forhåndsinstalleres, forteller Lehbrink.

Stor tiltro

For å vokse ønsker Qbee å få inn investorer. Allerede har Tom Christensen kjøpt seg inn i selskapet. Christensen kanskje mest kjent for sine seks år som administrerende direktør i IT-sikkerhetsselskapet Norman, men har også vært salgsdirektør i Trolltech, hvor han i sin tid ansatte Lehbrink.

– Det var ikke vanskelig å ta beslutningen om å investere i dette. Jeg har veldig stor tiltro til alle disse tre. Jeg har ingen rolle i selskapet foreløpig, men håper å komme på plass når vi får det til å flyte såpass at vi kan begynne å jobbe sammen ordentlig igjen, sier Christensen.

Upløyd marked

Han mener at markedet som Qbee henvender seg til, er upløyd.

– Vi er der servermarkedet var for 10-15 år siden. IoT er et parallelt stebarn som er veldig prematurt når det gjelder sikkerhetstankegang. Cyber kommer til å være den nye kriminaliteten framover, og IoT-delen til et selskap kan bli veien inn, fortsetter han.

Vi er der servermarkedet var for 10-15 år siden

Tom Christensen

Christensen mener at hver gang det kommer en ny plattform, så erfarer man noe av det samme.

– Vi gjør på en måte de samme «feilene» på nye plattformer, bevissthet kommer etter hvert, sier han.

Selv om Qbee henvender seg til IoT-markedet, så er det egentlig ikke noe i veien for å bruke plattformen også på vanlige servere.

– Vi henvender oss ikke dit, for der finnes det såpass etablerte spillere fra før, avslutter Lehbrink.

Powered by Labrador CMS