Il y a 389 articles et 19 utilisateurs inscrits (ce bandeau est défini dans MediaWiki:Sitenotice)
« Accès VPN au réseau du bureau » : différence entre les versions
Aucun résumé des modifications |
|||
| (4 versions intermédiaires par le même utilisateur non affichées) | |||
| Ligne 1 : | Ligne 1 : | ||
= Accès VPN au réseau du bureau = | = Accès VPN au réseau du bureau = | ||
[[category:VPN]] | |||
Voir aussi : http://mw.ajlsm.com/wiki/VPN_AJLSM_par_WireGuard | Voir aussi : http://mw.ajlsm.com/wiki/VPN_AJLSM_par_WireGuard | ||
| Ligne 19 : | Ligne 20 : | ||
10.77.0.0/24 | 10.77.0.0/24 | ||
== En cas de panne du serveur VPN ! == | |||
{{important|Voir http://mw.ajlsm.com/wiki/Raspberry_Pi_VPN_de_secours | |||
}} | |||
= 1. Préparation des clés = | = 1. Préparation des clés = | ||
| Ligne 184 : | Ligne 189 : | ||
PrivateKey = CLE_PRIVEE_DE_LA_MACHINE | PrivateKey = CLE_PRIVEE_DE_LA_MACHINE | ||
Address = ADRESSE_VPN/32 | Address = ADRESSE_VPN/32 | ||
DNS = 1.1.1.1 | |||
[Peer] | [Peer] | ||
| Ligne 190 : | Ligne 196 : | ||
AllowedIPs = 0.0.0.0/0 | AllowedIPs = 0.0.0.0/0 | ||
PersistentKeepalive = 25 | PersistentKeepalive = 25 | ||
La ligne : | |||
DNS = 1.1.1.1 | |||
est nécessaire sur macOS. Sans elle, lors de l'activation du tunnel complet | |||
(<code>AllowedIPs = 0.0.0.0/0</code>), macOS peut conserver uniquement le | |||
serveur DNS de sa connexion locale. Le tunnel fonctionne alors, mais la | |||
résolution des noms Internet ne fonctionne plus. | |||
Après activation, vérifier : | |||
curl -4 ifconfig.me | |||
Le résultat attendu est : | |||
109.190.129.96 | |||
Exemple pour le Mac de mdia : | Exemple pour le Mac de mdia : | ||
| Ligne 200 : | Ligne 223 : | ||
'''Cette clé privée reste exclusivement sur la machine.''' | '''Cette clé privée reste exclusivement sur la machine.''' | ||
= 4. Connexion = | = 4. Connexion = | ||
Dernière version du 8 septembre 2026 à 13:16
Accès VPN au réseau du bureau
[modifier | modifier le wikicode]Voir aussi : http://mw.ajlsm.com/wiki/VPN_AJLSM_par_WireGuard
Objectif
[modifier | modifier le wikicode]Ce VPN permet à un poste distant de faire transiter son trafic Internet par le réseau du bureau.
Une fois connecté, l'adresse IP publique utilisée pour accéder à Internet doit être :
109.190.129.96
Le VPN WireGuard peut être utilisé simultanément avec le VPN OpenVPN habituel donnant accès aux réseaux privés de l'infrastructure.
Le serveur VPN est accessible à l'adresse :
local.ajlsm.com:51820
Le VPN utilise le réseau privé :
10.77.0.0/24
En cas de panne du serveur VPN !
[modifier | modifier le wikicode]1. Préparation des clés
[modifier | modifier le wikicode]Chaque machine doit disposer de sa propre clé WireGuard.
Les clés privées ne doivent jamais être transmises.
1.1. Clé SSH
[modifier | modifier le wikicode]Si une clé SSH ED25519 existe déjà sur la machine, il n'est pas nécessaire d'en créer une nouvelle.
Pour voir les clés existantes :
ls -la ~/.ssh/*.pub
Pour afficher la clé publique utilisée :
cat ~/.ssh/id_ed25519.pub
Si aucune clé ED25519 n'existe :
ssh-keygen -t ed25519
La clé publique peut ensuite être affichée avec :
cat ~/.ssh/id_ed25519.pub
Transmettre uniquement la ligne commençant par :
ssh-ed25519 ...
Ne jamais transmettre le fichier sans extension « .pub » : il contient la clé privée.
1.2. Clé WireGuard
[modifier | modifier le wikicode]macOS
[modifier | modifier le wikicode]Vérifier si WireGuard est installé :
wg --version
Créer le répertoire :
mkdir -p ~/.wireguard chmod 700 ~/.wireguard
Générer les clés :
umask 077 wg genkey | tee ~/.wireguard/private.key | wg pubkey > ~/.wireguard/public.key
Afficher la clé publique :
cat ~/.wireguard/public.key
Linux
[modifier | modifier le wikicode]Installer WireGuard si nécessaire, par exemple sous Debian/Ubuntu :
sudo apt update sudo apt install wireguard
Puis :
mkdir -p ~/.wireguard chmod 700 ~/.wireguard umask 077 wg genkey | tee ~/.wireguard/private.key | wg pubkey > ~/.wireguard/public.key
Afficher la clé publique :
cat ~/.wireguard/public.key
1.3. Informations à transmettre à l'administrateur
[modifier | modifier le wikicode]Pour chaque machine, transmettre :
- le nom de la machine ;
- le système : macOS ou Linux ;
- la clé publique WireGuard ;
- la clé publique SSH.
Ne transmettre aucune clé privée.
2. Configuration par l'administrateur
[modifier | modifier le wikicode]Le serveur VPN est :
vpn1 192.168.100.196 VPN : 10.77.0.1
Le premier poste existant utilise :
10.77.0.2
Les adresses suivantes peuvent par exemple être attribuées :
Mac collaborateur : 10.77.0.3 Linux collaborateur : 10.77.0.4
2.1. Ajouter la clé SSH
[modifier | modifier le wikicode]Sur vpn1 :
nano /home/ajlsm/.ssh/authorized_keys
Ajouter la clé publique SSH reçue sur une nouvelle ligne.
Vérifier les permissions :
chmod 700 /home/ajlsm/.ssh chmod 600 /home/ajlsm/.ssh/authorized_keys chown -R ajlsm:ajlsm /home/ajlsm/.ssh
L'authentification SSH par mot de passe est désactivée sur vpn1.
2.2. Ajouter le poste dans WireGuard
[modifier | modifier le wikicode]Éditer :
sudo nano /etc/wireguard/wg0.conf
Pour le Mac :
# mdia - Mac [Peer] PublicKey = CLE_PUBLIQUE_WIREGUARD_MAC AllowedIPs = 10.77.0.3/32
Pour Linux :
# mdia - Linux [Peer] PublicKey = CLE_PUBLIQUE_WIREGUARD_LINUX AllowedIPs = 10.77.0.4/32
Recharger la configuration sans interrompre les connexions existantes :
sudo wg syncconf wg0 <(sudo wg-quick strip wg0)
Vérifier :
sudo wg
3. Configuration du client
[modifier | modifier le wikicode]L'administrateur communique à l'utilisateur l'adresse VPN attribuée à sa machine.
Créer :
~/.wireguard/bureau.conf
avec :
[Interface] PrivateKey = CLE_PRIVEE_DE_LA_MACHINE Address = ADRESSE_VPN/32 DNS = 1.1.1.1
[Peer] PublicKey = 9pRYa0t77+6PInXSc0fD6piEaNmOGL5LnhM2MpGFJRM= Endpoint = local.ajlsm.com:51820 AllowedIPs = 0.0.0.0/0 PersistentKeepalive = 25
La ligne :
DNS = 1.1.1.1
est nécessaire sur macOS. Sans elle, lors de l'activation du tunnel complet
(AllowedIPs = 0.0.0.0/0), macOS peut conserver uniquement le
serveur DNS de sa connexion locale. Le tunnel fonctionne alors, mais la
résolution des noms Internet ne fonctionne plus.
Après activation, vérifier :
curl -4 ifconfig.me
Le résultat attendu est :
109.190.129.96
Exemple pour le Mac de mdia :
Address = 10.77.0.3/32
La valeur PrivateKey est obtenue localement avec :
cat ~/.wireguard/private.key
Cette clé privée reste exclusivement sur la machine.
4. Connexion
[modifier | modifier le wikicode]macOS
[modifier | modifier le wikicode]sudo wg-quick up ~/.wireguard/bureau.conf
Linux
[modifier | modifier le wikicode]sudo wg-quick up ~/.wireguard/bureau.conf
5. Vérifications =
[modifier | modifier le wikicode]Vérifier WireGuard :
sudo wg show
Une connexion correcte doit afficher notamment :
latest handshake: ...
ainsi que des octets reçus et envoyés.
Vérification de l'adresse IP publique
[modifier | modifier le wikicode]curl -4 ifconfig.me
Le résultat attendu est :
109.190.129.96
Test du serveur VPN
[modifier | modifier le wikicode]ping 10.77.0.1
Le serveur doit répondre.
Accès SSH au serveur VPN
[modifier | modifier le wikicode]ssh ajlsm@10.77.0.1
L'authentification s'effectue obligatoirement par clé SSH.
6. Utilisation avec OpenVPN =
[modifier | modifier le wikicode]WireGuard est destiné à faire sortir le trafic Internet par l'adresse IP du bureau.
OpenVPN reste utilisé pour accéder aux réseaux privés de l'infrastructure.
Les deux VPN peuvent fonctionner simultanément.
Sur macOS, WireGuard installe notamment les routes :
0.0.0.0/1 128.0.0.0/1
Le tunnel OpenVPN conserve ses routes spécifiques vers les réseaux privés.
Après activation des deux VPN, vérifier :
curl -4 ifconfig.me
qui doit toujours retourner :
109.190.129.96
Puis vérifier l'accès aux machines des réseaux privés normalement accessibles par OpenVPN.
7. Déconnexion de WireGuard
[modifier | modifier le wikicode]macOS / Linux
[modifier | modifier le wikicode]sudo wg-quick down ~/.wireguard/bureau.conf
8. Diagnostic rapide =
[modifier | modifier le wikicode]En cas de problème, vérifier dans cet ordre :
- La connexion Internet normale fonctionne.
local.ajlsm.comest résolu.- WireGuard est actif avec
sudo wg show. - Un « latest handshake » récent apparaît.
ping 10.77.0.1répond.curl -4 ifconfig.meretourne109.190.129.96.- OpenVPN est actif si l'accès aux réseaux privés est nécessaire.
Si aucun handshake WireGuard n'apparaît, transmettre à l'administrateur le résultat de :
sudo wg show
Ne jamais transmettre la clé privée WireGuard.