Et virtuelt privat netværk (VPN) giver en sikker forbindelse mellem to punkter i et netværk (f.eks. en IoT-enhed og en server). Det skaber effektivt en privat kommunikations-"tunnel", der gør det muligt for brugere at sende og modtage data over det offentlige internet, som om de var direkte forbundet til et privat netværk.
Alle VPN'er kræver et system til at bestemme, hvordan data dirigeres mellem enheder, og hvordan det beskyttes undervejs. OpenVPN er en af de mest populære af disse systemer. Her er nogle af dens nøglefunktioner:
Etablering af en tunnel
Med OpenVPN kan en kommunikationstunnel oprettes ved hjælp af en af to protokoller: TCP (Transmission Control Protocol) eller UDP (User Datagram Protocol). TCP har særligt stærke indbyggede protokoller til at garantere datalevering og undgå fejl, så det er et godt valg til IoT-enheder, der transmitterer kritiske data (f.eks. industriel overvågning og medicinske data).
UDP er en enklere protokol designet til hastighed. Den er nyttig til enheder, der skal transmittere data i realtid (f.eks. videoovervågning), eller til enheder, der sender små mængder regelmæssige data, som ikke er tidsfølsomme. UDP-protokollen har lavere krav til behandling og hukommelse, hvilket gør den bedre egnet til mindre, lavpris IoT-sensorenheder.
Kryptering
For at sikre datastrømmen bruger OpenVPN SSL/TLS (Secure Sockets Layer / Transport Layer Security) protokoller. Dette er den samme type teknologi, der bruges til at beskytte de fleste websites. Den giver en pålidelig metode for enheder til at generere og udveksle krypteringsnøgler, sikre, at kun autoriserede enheder eller brugere får adgang til netværket, og verificere, at data ikke er blevet ændret under transmission.