Wireguard » Historique » Version 19
« Précédent -
Version 19/23
(diff) -
Suivant » -
Version actuelle
Matthieu Herrb, 21/05/2019 11:47
- Contenu
- Wireguard
Wireguard¶
Cette page concerne les bénévoles qui veulent aider, ou les curieu·ses·x qui veulent voir comment c'est fait de l'autre coté.
Configuration serveur sur h10¶
Routage¶
Sur h7: router les IP via h10:
Exemple:
ip r add 185.119.170.3/32 via 91.224.148.143 dev eth3.3131 ip -6 r add 2a03:7220:8087:300::/56 via fe80::80:8f dev eth3.3131
C'est fait automatiquement en indiquant wireguard
dans ip_ttnn.txt
comme route pour une IPv4
h3.Config globale sur h10
# modprobe wireguard # umask 077 # wg genkey > /etc/wireguard/private # wg pubkey < /etc/wireguard/private > /etc/wireguard/public # ip link add dev wg0 type wireguard # ip a add dev wg0 10.99.0.1/32 # ip -6 a add dev wg0 fe80::31/128 # wg set wg0 private-key ./private listen-port 51820 # ip link set wg0 up
Pour chaque client, sur h10:¶
Exemple:
# wg set wg0 peer <clé publique du client> allowed-ips 185.119.170.3/32,2a03:7220:8087:300::/56 # ip r add 185.119.170.3/32 dev wg0 # ip -6 r add 2a03:7220:8087:300::/56 dev wg0
Old tests VPN tetaneutral sur h9¶
Configuration¶
Sur h7: router les IP via h9:
ip r add 185.119.170.3/32 via 91.224.148.143 dev eth3.3131 ip -6 r add 2a03:7220:8087:300::/56 via fe80::80:8f dev eth3.3131
Sur h9 config globale:
# modprobe wireguard # umask 077 # wg genkey > /etc/wireguard/private # wg pubkey < /etc/wireguard/private > /etc/wireguard/public # ip link add dev wg0 type wireguard # ip a add dev wg0 10.99.0.1/32 # ip -6 a add dev wg0 fe80::31/128 # wg set wg0 private-key ./private listen-port 55769 # ip link set wg0 up
Pour chaque client, sur h9:
# wg set wg0 peer <clé publique du client> allowed-ips 185.119.170.3/32,2a03:7220:8087:300::/56 # ip r add 185.119.170.3/32 dev wg0 # ip -6 r add 2a03:7220:8087:300::/56 dev wg0
Config client openwrt¶
Dans /etc/config/network
config interface 'vpn0' option proto 'wireguard' option private_key '<clé privée>' list addresses '185.119.170.3/32' list addresses '2a03:7220:8087:300::1/56' config wireguard_vpn0 option public_key 'DsIeOCRs/5uYdi8rLiBzRNmN4zUzKCQRqY3Sbl8NS0A=' # La clé publique de h9 option route_allowed_ips '1' option endpoint_host '91.224.148.143' option endpoint_port '55769' option persistent_keepalive '25' list allowed_ips '0.0.0.0/0' list allowed_ips '::/0'
Config client debian¶
Dans /etc/rc.local
pas de route par défaut configurée
# wireguard # route vers h9 /bin/ip route add 91.224.148.143/32 via 192.168.31.200 dev eth0 /sbin/modprobe wireguard /bin/ip link add dev wg0 type wireguard /bin/ip a add dev wg0 185.119.170.2 /bin/ip -6 a add dev wg0 2a03:7220:8087:200::1/56 /usr/bin/wg set wg0 private-key /etc/wireguard/private /usr/bin/wg set wg0 peer DsIeOCRs/5uYdi8rLiBzRNmN4zUzKCQRqY3Sbl8NS0A= \ endpoint 91.224.148.143:55769 \ allowed-ips 0.0.0.0/0,::/0 \ persistent-keepalive 25 /bin/ip link set wg0 up /bin/ip route add 10.99.0.1 dev wg0 /bin/ip route add default via 10.99.0.1 dev wg0 /bin/ip -6 route add default via fe80::31 dev wg0
Status¶
root@h9:~# wg show interface: wg0 public key: DsIeOCRs/5uYdi8rLiBzRNmN4zUzKCQRqY3Sbl8NS0A= private key: (hidden) listening port: 55769 peer: y4ydCem0bUQpryyiTxS2eMPtoHLD5iOGqth1f9xkfww= endpoint: 176.158.4.203:57103 allowed ips: 185.119.170.3/32, 2a03:7220:8087:300::/56 latest handshake: 1 minute, 27 seconds ago transfer: 1.08 MiB received, 1.92 MiB sent peer: hUT6WhmUw6yRpwLX3R9Rh/8x1lZDk9JeX56We7zVvWc= endpoint: 176.158.4.203:57658 allowed ips: 185.119.170.2/32, 2a03:7220:8087:200::/56 latest handshake: 1 minute, 38 seconds ago transfer: 107.09 KiB received, 208.19 KiB sent
Déploiement¶
Remarque: clé privée des clients à garder privée...
Deux modes possibles :
- sur un PC de l'adhérent·e
- iel installe wireguard
- iel génère la clé privé et envoie à ttnn la clé publique
- ttnn envoie la config à l'adhérent·e
- Avantages :
- performance
- utilisable en mobilité
- Inconvénients :
- difficulté assistance installation initiale / dépannage
- Sur un routeur fourni par l'association
- routeur un peu costaud (ZBT ou Archer C7)
- on génère un firmware avec la config en dur
- on fournit le routeur à l'adhérent·e (comme pour un accès radio)
- Avantages :
- simplicité pour l'adhérent·e
- assistance
- Inconvénients :
- performances (à confirmer)
- moins mobile