Developer Hub

IoT SIM WireGuard VPN

WireGuard

Easily establish secure connections to your IoT devices using WireGuard as a Service. Our seamless solution simplifies a IoT VPN, providing you with convenient access to devices equipped with your IoT SIM cards.

July 18, 2023

Overview

By leveraging the power of WireGuard, a cutting-edge and high-performance VPN protocol, we enable you to establish fast, stable, and encrypted tunnels between your IoT SIM devices and your trusted networks. Whether it's monitoring sensors, managing equipment remotely, or accessing sensitive data, WireGuard as a Service ensures that your connections are shielded from prying eyes.

Get your WireGuard

This section explains how to request a dedicate WireGuard instance. This instance is limited to your own IoT SIM Cards and to a single WireGuard client.

Generate a client key-pair

A client key-pair can be generated using the CLI (wireguard-tools) and the following command.

wg genkey | tee privatekey | wg pubkey > publickey

Request a dedicated WireGuard

To get your dedicated WireGuard, navigate to the configuration page of the portal and select "WireGuard".

Now add your own generated client public key and select you instance type. The following table lists available options. More options are available on request.

TypeIoT-Devices
Smallup to 1k
Largeup to 25k

The WireGuard instance will be created after pressing "Apply". The provisioning can take a few minutes.

Use your WireGuard

As soon as your WireGuard is ready to use, the "Client IP", "Public Key" and "Endpoint" is provided. You can also test with our provided fixed ping test IP: 169.254.13.37/32

This three values {{CLIENT_IP}}, {{PUBLIC_KEY}} and {{ENDPOINT}} and your matching client private key ({{PRIVATE_KEY}}) can now be used to create a WireGuard client configuration.

[Interface]
PrivateKey = {{PRIVATE_KEY}}
ListenPort = 51820
Address = {{CLIENT_IP}}/32

[Peer]
PublicKey = {{PUBLIC_KEY}}
AllowedIPs = 10.90.0.0/16
PingableTestIP = 169.254.13.37/32
Endpoint = {{ENDPOINT}}:51820
PersistentKeepalive = 25