ATTENTION: Ceci est un brouillon, le serveur wireguard n'est pas encore en place.

Génération des clés

Il faudrait une interface sur le site qui permet de générer une paire de clé en javascript et le fichier de config correspondant (cf. wg-quick). Avec affichage du qrcode.

Générer ses propres clés

$ (umask 0077; wg genkey > wg_rezine.key)
$ wg pubkey < wg_rezine.key > wg_rezine.pub

GNU/Linux - Ligne de commandes

Manuellement

Configurer l'interface wireguard

# ip link add dev wg0 type wireguard
# ip address add dev wg0 <IP Rézine personnelle>/32
# ip address add dev wg0 <IPv6 Rézine personnelle::1>/128
# wg set wg0 private-key /etc/wireguard/rezine.key peer D58L/Gkx0R0n90HpNCY5iMOZMsQ1OIEmGGr7iGchwAk= endpoint 193.33.56.19:51820 allowed-ips 0.0.0.0/0,::/0
# ip link set wg0 up

Mettre en place les routes

default_route=$(ip route list default | cut -d' ' -f2-)
ip -4 route del default
ip -4 route add default dev wg0
ip -4 route add 193.33.56.19/32 $default_route
ip -6 route del default
ip -6 route add default dev wg0

wg-quick

/etc/wireguard/wg0

[Interface]
Address = @PRIVATE_IPV4@/32, @PRIVATE_IPV6@/128
PrivateKey = @PRIVATE_KEY@

[Peer]
PublicKey = D58L/Gkx0R0n90HpNCY5iMOZMsQ1OIEmGGr7iGchwAk=
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = 193.33.56.19:51820

Remplacer @PRIVATE_IPV4@, @PRIVATE_IPV6@ et @PRIVATE_KEY@.

Lancer avec wg-quick:

# wg-quick up wg0

ou systemd: # systemctl start wg-quick@wg0.service

NetworkManager

/etc/NetworkManager/system-connections/wgRezine.nmconnection

[connection]
id=WireGuard Rezine
type=wireguard
interface-name=wg0

[wireguard]
private-key=@PRIVATE_KEY@

[wireguard-peer.D58L/Gkx0R0n90HpNCY5iMOZMsQ1OIEmGGr7iGchwAk=]
endpoint=193.33.56.19:51820
allowed-ips=0.0.0.0/0;::/0;

[ipv4]
address1=@PRIVATE_IPV4@/32
dns-search=
method=manual

[ipv6]
addr-gen-mode=stable-privacy
address1=@PRIVATE_IPV6@/128
dns-search=
ip6-privacy=0
method=manual

[proxy]

Systemd-networkd

TODO: tester

/etc/systemd/networkd/99-wg0.netdev

[NetDev]
Name=wg0
Kind=wireguard
Description=WireGuard Rezine

[WireGuard]
PrivateKey=@PRIVATE_KEY@

[WireGuardPeer]
PublicKey=D58L/Gkx0R0n90HpNCY5iMOZMsQ1OIEmGGr7iGchwAk=
AllowedIPs=0.0.0.0/0
AllowedIPs=::/0
Endpoint=193.33.56.19:51820

/etc/systemd/network/99-wg0.network

[Match]
Name=wg0

[Network]
Address=@PRIVATE_IPV4@/32
Address=@PRIVATE_IPV6@/128

GNU/Linux - Graphique

Dans le gestionnaire de réseaux, ajouter une interface virtuelle Wireguard :

Renseignez le nom de la connexion, le nom de l'interface, votre clé privée.

Cliquez sur Ajouter pour ajoutez le serveur. Renseignez la clé publique du serveur D58L/Gkx0R0n90HpNCY5iMOZMsQ1OIEmGGr7iGchwAk= Et renseignez les autres informations comme ceci :

Dans l'onglet IPv4, remplissez comme ceci en renseignant bien votre adresse IP dans la colonne Adresse.

Puis renseignez les serveurs DNS.

Idem dans l'onglet IPv6.

Enfin, dans l'onglet Général, activez l'option pour se connecter automatiquement :

Windows

Mac OSX

Iphone / Android

Scanner le QRcode avec l'appli.