Cet article fait suite à la configuration de RouterOS comme client OpenVPN, autant la configuration avec OpenVPN est fastidieuse que celle avec WireGuard est enfantine.
Pré-requis
Pour réaliser les étapes suivantes, nous aurons besoins de :
- RouterOS 7.7
- WireGuard
En dehors de ces versions, vous devrez peut-être adapter les instructions.
Obtenir une configuration cliente
La distribution d’une configuration WireGuard se fait régulièrement sous forme de QR Code.
Dans notre cas, nous avons besoin d’exploiter le contenu du fichier de configuration client, donc il faudra d’abord le décoder si l’on n'a que le QR Code.
[Interface]
PrivateKey = *REDACTED*
Address = 192.168.27.90/32
DNS = 8.8.8.8
MTU = 1360
[Peer]
PublicKey = *REDACTED*
Endpoint = wireguard.server.io:13231
AllowedIPs = 192.168.27.64/27, 192.168.0.0/24
PersistentKeepalive = 10
PresharedKey = *REDACTED*
Configurer WireGuard dans RouterOS
Avec Winbox
Ajouter l’interface WireGuard dans RouterOS
Dans le menu WireGuard
à gauche, ajoutons une interface comme ce qui suit.
Dans le volet General
, définissons le nom de l’interface, ainsi que le MTU
, Listen Port
et la Private Key
tel qu’ils sont indiqués dans le fichier de configuration.
Ajouter le Peer
dans RouterOS
Toujours dans la fenêtre WireGuard, dans le volet Peers
, ajoutons un nouveau Peer
.
Sélectionnons l’interface WireGuard créée juste avant et indiquons la Public Key
du fichier de configuration, indiquons de même le Endpoint
.
Pour chaque AllowedIPs
du fichier, mettre une des IP autorisée à transiter par le VPN, chaque ligne est une adresse CIDR unique et la flèche vers le bas permet d’en ajouter d’autres.
Indiquons la Preshared key
puisque le serveur en fournie une.
Il faut aussi reporter la valeur de maintien de connexion, Persistent Keepalive
, exprimée en secondes dans le fichier de configuration et à indiquer dans la fenêtre.
Ajouter l’adresse dans RouterOS
Dans le menu IP
, Addresses
, ajoutons l’IP telle qu’indiquée dans le fichier de configuration et le segment CIDR ici. Dans mon exemple, le client à l’ip 192.168.27.90
et le masque /27
.
Et z’est parti 🎉
Il suffit normalement de reporter toutes les valeurs du fichier de configuration client que vous avez.
Avec la console
Voici la version console des étapes ci-dessus.
Ces étapes impliquent que nous ayons accès à la console de RouterOS.
Ajouter l’interface WireGuard dans RouterOS
/interface/wireguard/add \
name=wireguard_interface \
listen-port=13231 \
mtu=1360 \
private-key="**REDACTED**"
Ajouter le Peer
dans RouterOS
/interface/wireguard/peers/add \
allowed-address=192.168.167.0/24,0.0.0.0/0 \
endpoint-address=wireguard.server.io \
endpoint-port=13231 \
interface=wireguard_interface \
persistent-keepalive=10s \
preshared-key="**REDACTED**" \
public-key="**REDACTED**"
Ajouter l’adresse dans RouterOS
/ip/address/add \
address=192.168.27.90/27 \
interface=wireguard_interface
Et z’est parti 🎉