Vpn doc user » Historique » Version 63
Mossroy Mossroy, 05/03/2021 10:55
1 | 11 | Baptiste Jonglez | h1. Documentation utilisateur pour le VPN Illyse |
---|---|---|---|
2 | 7 | Baptiste Jonglez | |
3 | {{>toc}} |
||
4 | 1 | Pierre-Arnaud Poudret | |
5 | 8 | Baptiste Jonglez | Le VPN d'Illyse utilise **OpenVPN**, qui a l'avantage de fonctionner sur à peu près n'importe quelle plate-forme (GNU/Linux, OS X, Windows, Android, …) |
6 | 1 | Pierre-Arnaud Poudret | |
7 | 8 | Baptiste Jonglez | Cette page sert de documentation utilisateur. Pour l'instant, elle contient principalement des exemples de fichier de configuration pour le client openvpn. |
8 | 1 | Pierre-Arnaud Poudret | |
9 | 8 | Baptiste Jonglez | Les fichiers de configuration donnés ici sont génériques, au sens où le reste de la configuration se fait via l'interface web abonné Illyse : https://coin.illyse.org/ (adresses IP à utiliser sur le tunnel, etc). |
10 | 1 | Pierre-Arnaud Poudret | |
11 | 18 | Nicolas Nadisic | h3. Avant de commencer |
12 | |||
13 | Se connecter au SI d'Illyse avec le nom d'utilisateur communiqué par mail : "COIN.":https://coin.illyse.org/members/login/?next=/ Si c'est votre première connexion, choisir un mot de passe pour COIN et bien le retenir. |
||
14 | |||
15 | 44 | Florent Guillot | Aller dans la catégorie "Mes Abonnements". Si rien n’apparaît alors que vous avez souscrit au VPN, contacter adminsys@illyse.org. |
16 | |||
17 | A la ligne "VPN", cliquer sur "*Configuration*". Noter le nom d'utilisateur (le mieux est de le copier dans un fichier texte brut, nous verrons pourquoi ensuite). Générer un mot de passe et le copier dans le même fichier. Attention, si vous perdez votre mot de passe il faudra en générer un nouveau. |
||
18 | Si on installe le VPN sur une "brique internet":https://labriqueinter.net/ , noter aussi l'adresse IPv4 et l'adresse IPv6 liées à votre VPN. |
||
19 | 18 | Nicolas Nadisic | |
20 | 11 | Baptiste Jonglez | h2. Note importante sur la sécurité |
21 | 1 | Pierre-Arnaud Poudret | |
22 | 13 | Rémi Bouhl | Le VPN Illyse fournit une **IPv4 publique** et de l'IPv6 (elle aussi publique, évidemment). **Aucun pare-feu (firewall) n'est en place côté Illyse** : assurez-vous d'avoir un **pare-feu (firewall)** sur votre machine lorsque vous utilisez le VPN. |
23 | 14 | Rémi Bouhl | De plus il est possible que votre pare-feu considère la connexion VPN comme faisant partie d'un réseau "privé" et abaisse le niveau de sécurité sur cette connexion. |
24 | 1 | Pierre-Arnaud Poudret | |
25 | 13 | Rémi Bouhl | Vous pourriez vous retrouver à exposer sur Internet, entre autres : |
26 | |||
27 | 22 | Baptiste Jonglez | * un serveur SSH, avec des mots de passe faibles, |
28 | * un serveur Web, avec une application en cours de développement, |
||
29 | * un serveur mail mal configuré, susceptible de relayer du spam (open-relay) et de provoquer rapidement l'inscription de votre adresse IP dans des listes noires (RBL), |
||
30 | * le protocole SMB sur les systèmes Microsoft Windows, qui permet entre autres d'accéder aux partages réseaux et aux imprimantes. |
||
31 | 13 | Rémi Bouhl | |
32 | Gardez à l'esprit que votre adresse IPv4 publique sera l'objet de scans intensifs depuis Internet, surtout si elle est utilisée pour la première fois. |
||
33 | |||
34 | Illyse vous fournit un accès à Internet neutre, ce qui signifie entre autres que l'association ne se permet pas de décider à la place ses abonnés de ce qu'il faut filtrer sur leur connexion. |
||
35 | |||
36 | N'hésitez pas à demander de l'aide, à poser des questions, dans l'association ou ailleurs, pour conserver la pleine maîtrise de votre connexion :) |
||
37 | 11 | Baptiste Jonglez | |
38 | 24 | Baptiste Jonglez | h2. Paramètres de connexion OpenVPN |
39 | 12 | Baptiste Jonglez | |
40 | 23 | Baptiste Jonglez | Si vous savez déjà utiliser OpenVPN, les informations les plus importantes sont les suivantes : |
41 | |||
42 | * *Serveur :* vpn.illyse.net |
||
43 | * *Protocole :* UDP recommandé, TCP possible |
||
44 | * *Port :* quelconque (1194 est le port standard OpenVPN, mais tous les ports mènent au serveur VPN) |
||
45 | * *Compression :* non |
||
46 | * *Fragmentation :* 1300 octets |
||
47 | * *TCP MSS fix :* 1300 octets |
||
48 | |||
49 | Notez donc que le serveur OpenVPN d'Illyse écoute à la fois en UDP et en TCP, et ce, sur n'importe quel port. Si vous êtes sur un réseau complètement bloqué mais que UDP/53 ou TCP/443 passe, pas de problème, le VPN passe ! |
||
50 | 12 | Baptiste Jonglez | |
51 | Pour des raisons de performance, UDP est recommandé. N'utilisez le mode TCP qu'en dernier recours. Référence : http://sites.inka.de/bigred/devel/tcp-tcp.html |
||
52 | |||
53 | 15 | Rémi Bouhl | h1. Exemples de configuration. |
54 | |||
55 | 17 | Nicolas Nadisic | Ces exemples de fichiers de configuration sont là pour vous aider à vous connecter au VPN. |
56 | |||
57 | 53 | Florent Guillot | h2. GNU/Linux (Debian Stretch) |
58 | 17 | Nicolas Nadisic | |
59 | h3. Pour les débutants |
||
60 | 1 | Pierre-Arnaud Poudret | |
61 | 53 | Florent Guillot | * Installer OpenVPN : ouvrir un terminal et taper "sudo apt install openvpn". |
62 | 56 | Florent Guillot | * Créer le fichier de configuration openvpn: "sudo nano /etc/openvpn/illyse.conf" Copier dedans la configuration [[Vpn_doc_user#etcopenvpnillyseconf|ci-dessous]]. |
63 | 53 | Florent Guillot | * Fermer nano en utilisant Ctrl + X, suivi de la touche "O" pour indiquer que l'on souhaite sauvegarder. |
64 | 1 | Pierre-Arnaud Poudret | |
65 | 56 | Florent Guillot | * Créer le fichier texte nommé credentials ("sudo nano /etc/openvpn/credentials") et y insérer le nom d'utilisateur et le mot de passe donnés par COIN (une ligne chacun, voir modèle [[Vpn_doc_user#etcopenvpncredentials|ci-dessous]]). |
66 | 53 | Florent Guillot | * Lancer le VPN avec la commande "sudo systemctl start openvpn@illyse". Ça devrait fonctionner ! |
67 | * Pour que le VPN se lance automatiquement à chaque démarrage, utiliser la commande "sudo systemctl enable openvpn@illyse" |
||
68 | |||
69 | Pour vérifier si le VPN est bien lancé, une méthode simple est d'utiliser un site comme http://www.test-ipv6.com/ qui donne les adresses IP utilisées par son PC pour sortir sur internet. Si l'on passes bien par le VPN, on retrouve ses IP Illyse (aussi affichées par COIN). |
||
70 | |||
71 | En cas de problème, vérifier les étapes précédentes, et la connexion Internet. Si ça ne fonctionne toujours pas, écrire un gentil mail à support@illyse.org en donnant le résultat des deux commandes suivantes : |
||
72 | - sudo systemctl status openvpn@illyse |
||
73 | - sudo tail -f -n 100 /var/log/openvpn-illyse.log |
||
74 | |||
75 | |||
76 | 55 | Florent Guillot | Pour stopper le VPN, taper la commande "sudo systemctl stop openvpn@illyse". (et "sudo systemctl disable openvpn@illyse" si l'on ne veut plus que le VPN se lance automatiquement au démarrage du PC) |
77 | 17 | Nicolas Nadisic | |
78 | h3. Fichier de configuration OpenVPN |
||
79 | |||
80 | 12 | Baptiste Jonglez | La configuration est commentée, n'hésitez pas à changer des paramètres. Avec les paramètres ci-dessous, une IPv4 et une IPv6 seront attribués, et tout le trafic passera par le VPN. |
81 | 1 | Pierre-Arnaud Poudret | |
82 | 54 | Florent Guillot | h4. +/etc/openvpn/illyse.conf+ |
83 | |||
84 | 1 | Pierre-Arnaud Poudret | <pre> |
85 | # C'est nous qui prenons l'initiative de nous connecter au serveur. |
||
86 | client |
||
87 | |||
88 | # On route de l'IP, on ne fait pas de l'ethernet. |
||
89 | dev tun0 |
||
90 | |||
91 | # si on ne reçoit pas d'IP pour tun0: |
||
92 | # - soit on configure l'interface avec des ip privées bidon |
||
93 | #ifconfig 10.255.255.1 10.255.255.2 |
||
94 | # - soit on utilise un script pour faire "ifconfig tun0 up" |
||
95 | #script-security 2 |
||
96 | #up up.sh |
||
97 | |||
98 | # Il est préférable d'utiliser udp, le résultat fonctionne mieux. Il est |
||
99 | # cependant notable que les restrictions d'accès Internet laissent souvent |
||
100 | # plus facilement passer tcp. Essayez donc udp, et seulement s'il ne fonctionne |
||
101 | # pas, essayez tcp. |
||
102 | |||
103 | # Transport sur udp v4. En v6, la redirection de passerelle par défaut fonctionne mal (openvpn ne crée pas l'équivalent de la route /32 IPv4 vers le serveur vpn via la passerelle sous-jacente) |
||
104 | # Si on ne prévoit pas d'utiliser la directive "redirect-gateway def1", alors on peut choisir "proto udp6" pour monter le tunnel en IPv6. |
||
105 | #proto udp6 |
||
106 | proto udp |
||
107 | #proto tcp |
||
108 | |||
109 | # Certains réseaux ont en fait une MTU bien inférieure à 1450. Dire aux connexions |
||
110 | # TCP d'être très conservatives, pour que ça marche plus ou moins partout. |
||
111 | mssfix 1300 |
||
112 | # En UDP, on peut s'assurer que ça passe de toutes façons en fragmentant au besoin |
||
113 | # quand ça dépasse. |
||
114 | fragment 1300 |
||
115 | # Idéalement, ça devrait être détecté tout seul, mais c'est loin de toujours fonctionner... |
||
116 | #mtu-disc yes |
||
117 | |||
118 | # En udp, Prévenir le serveur quand on termine, permet de relancer |
||
119 | # immédiatement sans attendre que le serveur se rende compte de la |
||
120 | # déconnexion par timeout. |
||
121 | explicit-exit-notify |
||
122 | |||
123 | # L'adresse du serveur. |
||
124 | remote vpn.illyse.net 1194 |
||
125 | |||
126 | # Éventuellement, on peut avoir besoin de passer par un proxy http, décommenter cette ligne en mettant l'adresse et le port du proxy. |
||
127 | #http-proxy 192.0.2.1 8080 |
||
128 | |||
129 | # Attendre un peu avant d'ajouter les routes. |
||
130 | route-delay 2 |
||
131 | |||
132 | # Ne pas utiliser un port local statique, on est client de toutes façons. |
||
133 | nobind |
||
134 | |||
135 | # Garder la clé en mémoire, pour ne pas avoir besoin de la relire lors d'un |
||
136 | # redémarrage. |
||
137 | persist-key |
||
138 | # Ne pas tuer l'interface du tunnel lors d'un redémarrage. |
||
139 | #persist-tun |
||
140 | |||
141 | # Décommenter cette ligne pour faire passer tout le trafic via le VPN: |
||
142 | redirect-gateway def1 |
||
143 | |||
144 | # On peut aussi vouloir plutôt router seulement quelques destinations, par |
||
145 | # exemple ici tout Gitoyen: |
||
146 | #route 80.67.160.0 255.255.224.0 |
||
147 | |||
148 | 5 | Baptiste Jonglez | # Activer IPv6 dans le tunnel |
149 | 1 | Pierre-Arnaud Poudret | tun-ipv6 |
150 | 5 | Baptiste Jonglez | # et faire passer tout le trafic IPv6 via le VPN: |
151 | 1 | Pierre-Arnaud Poudret | route-ipv6 ::/1 |
152 | route-ipv6 8000::/1 |
||
153 | |||
154 | # Envoyer un login et un mot de passe. Pour éviter de taper à la main login |
||
155 | # et mot de passe, vous pouvez ajouter à droite de "auth-user-pass" le nom d'un |
||
156 | # fichier contenant ces deux informations, une par ligne. |
||
157 | auth-user-pass credentials |
||
158 | |||
159 | 36 | Alarig Le Lay | # Retenter le l’authentification même si le serveur la refuse (utile pour |
160 | # éviter de faire mourir le client si le serveur LDAP ne répond pas) |
||
161 | auth-retry nointeract |
||
162 | |||
163 | 1 | Pierre-Arnaud Poudret | # Un minimum de debug, c'est toujours bien. |
164 | verb 3 |
||
165 | |||
166 | log-append /var/log/openvpn-illyse.log |
||
167 | |||
168 | # Certificat permettant de vérifier que c'est bien à Illyse que |
||
169 | # l'on se connecte et donc à qui on donne notre mot de passe. |
||
170 | remote-cert-tls server |
||
171 | <ca> |
||
172 | -----BEGIN CERTIFICATE----- |
||
173 | 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 |
||
209 | sjvtdavgLFaMPLPrI2DAcjpVMUuL1VgdqUcQkhc= |
||
210 | -----END CERTIFICATE----- |
||
211 | </ca> |
||
212 | </pre> |
||
213 | |||
214 | |||
215 | 57 | Florent Guillot | h4. +/etc/openvpn/credentials+ |
216 | |||
217 | 1 | Pierre-Arnaud Poudret | (Seulement si vous voulez stocker votre mot de passe. En clair. Oui, c'est moche.) |
218 | |||
219 | Spécifier login et mot de passe sur deux lignes différences. |
||
220 | |||
221 | <pre> |
||
222 | jkleboulet-vpn1 |
||
223 | omgsuchsecured123 |
||
224 | </pre> |
||
225 | |||
226 | |||
227 | 3 | Pierre-Arnaud Poudret | h3. Mise à jour automatique de resolv.conf |
228 | |||
229 | Pour que resolv.conf soit mis à jour par openvpn avec les IP des resolvers DNS Illyse poussées par le serveur VPN. |
||
230 | |||
231 | <pre> |
||
232 | <mit-mit> Bon, ça marche, faut ajouter à la config : |
||
233 | <mit-mit> script-security 2 |
||
234 | <mit-mit> up /etc/openvpn/update-resolv-conf |
||
235 | <mit-mit> down /etc/openvpn/update-resolv-conf |
||
236 | <mit-mit> et avoir resolvconf d'installé. |
||
237 | <mit-mit> (la première ligne étant l'autorisation de lancement de scripts externes) |
||
238 | </pre> |
||
239 | |||
240 | 26 | Côme chillie | h2. GNU/Linux (Network Manager) |
241 | |||
242 | Il est possible de configurer graphiquement le VPN via Network Manager. |
||
243 | (J’utilise la version KDE, des détails peuvent varier si vous utilisez la version gtk) |
||
244 | |||
245 | 31 | Florent Guillot | Téléchargez le fichier attachment:vpn-illyse.crt. |
246 | |||
247 | 28 | Côme chillie | Installez le backend openvpn pour Network Manager, puis créez une nouvelle connexion de type openvpn. |
248 | 27 | Côme chillie | Complétez comme suit, indiquez le chemin du fichier crt, votre login et votre mot de passe VPN : |
249 | 1 | Pierre-Arnaud Poudret | !vpn1.png! |
250 | 62 | Mossroy Mossroy | Il faut éviter de mettre le fichier crt dans un répertoire contenant un espace (suivant les versions, cela peut poser problème) |
251 | |||
252 | 27 | Côme chillie | Cliquez sur «Avancé», mettez 1300 dans «Taille du fragment UDP» et cochez «Restreindre la taille maximale du segment TCP (MSS)» |
253 | !vpn2.png! |
||
254 | 62 | Mossroy Mossroy | |
255 | En cas de problème, regardez dans les logs (/var/log/syslog, au moins avec Ubuntu). |
||
256 | |||
257 | 3 | Pierre-Arnaud Poudret | |
258 | 29 | Côme chillie | h2. Windows |
259 | 1 | Pierre-Arnaud Poudret | |
260 | 29 | Côme chillie | Installez OpenVPN, par exemple en suivant la documentation présente ici : http://www.rezine.org/documentation/tunnels_chiffres/#index4h1 |
261 | |||
262 | Créez ensuite le fichier suivant. |
||
263 | Faites attention à l’extension des fichiers : parfois Windows ajoute une extension .txt aux fichiers sans le dire. |
||
264 | |||
265 | 2 | Pierre-Arnaud Poudret | +C:\Program Files\OpenVPN\config\illyse\illyse.ovpn+ |
266 | <pre> |
||
267 | # C'est nous qui prenons l'initiative de nous connecter au serveur. |
||
268 | client |
||
269 | |||
270 | # On route de l'IP, on ne fait pas de l'ethernet. |
||
271 | dev tun0 |
||
272 | |||
273 | # si on ne reçoit pas d'IP pour tun0: |
||
274 | # - soit on configure l'interface avec des ip privées bidon |
||
275 | #ifconfig 10.255.255.1 10.255.255.2 |
||
276 | # - soit on utilise un script pour faire "ifconfig tun0 up" |
||
277 | #script-security 2 |
||
278 | #up up.sh |
||
279 | |||
280 | # Il est préférable d'utiliser udp, le résultat fonctionne mieux. Il est |
||
281 | # cependant notable que les restrictions d'accès Internet laissent souvent |
||
282 | # plus facilement passer tcp. Essayez donc udp, et seulement s'il ne fonctionne |
||
283 | # pas, essayez tcp. |
||
284 | |||
285 | #proto udp6 |
||
286 | proto udp |
||
287 | #proto tcp |
||
288 | |||
289 | # Certains réseaux ont en fait une MTU bien inférieure à 1450. Dire aux connexions |
||
290 | # TCP d'être très conservatives, pour que ça marche plus ou moins partout. |
||
291 | mssfix 1300 |
||
292 | # En UDP, on peut s'assurer que ça passe de toutes façons en fragmentant au besoin |
||
293 | # quand ça dépasse. |
||
294 | fragment 1300 |
||
295 | # Idéalement, ça devrait être détecté tout seul, mais c'est loin de toujours fonctionner... |
||
296 | #mtu-disc yes |
||
297 | |||
298 | #mtu-test |
||
299 | #link-mtu 1300 |
||
300 | #tun-mtu 1300 |
||
301 | |||
302 | # En udp, Prévenir le serveur quand on termine, permet de relancer |
||
303 | # immédiatement sans attendre que le serveur se rende compte de la |
||
304 | # déconnexion par timeout. |
||
305 | explicit-exit-notify |
||
306 | |||
307 | # L'adresse du serveur. |
||
308 | remote vpn.illyse.net 1194 |
||
309 | |||
310 | # Éventuellement, on peut avoir besoin de passer par un proxy http, décommenter cette ligne en mettant l'adresse et le port du proxy. |
||
311 | #http-proxy 192.0.2.1 8080 |
||
312 | |||
313 | # Pour windows: utiliser route.exe. |
||
314 | route-method exe |
||
315 | |||
316 | # Attendre un peu avant d'ajouter les routes. |
||
317 | route-delay 2 |
||
318 | |||
319 | # Ne pas utiliser un port local statique, on est client de toutes façons. |
||
320 | nobind |
||
321 | |||
322 | # Garder la clé en mémoire, pour ne pas avoir besoin de la relire lors d'un |
||
323 | # redémarrage. |
||
324 | persist-key |
||
325 | # Ne pas tuer l'interface du tunnel lors d'un redémarrage. |
||
326 | #persist-tun |
||
327 | |||
328 | #ip-win32 ipapi |
||
329 | |||
330 | # Décommenter cette ligne pour faire passer tout le trafic via le VPN: |
||
331 | 1 | Pierre-Arnaud Poudret | redirect-gateway def1 |
332 | 2 | Pierre-Arnaud Poudret | |
333 | 1 | Pierre-Arnaud Poudret | # On peut aussi vouloir plutôt router seulement quelques destinations, par |
334 | 2 | Pierre-Arnaud Poudret | # exemple ici tout Gitoyen: |
335 | #route 80.67.160.0 255.255.224.0 |
||
336 | |||
337 | 5 | Baptiste Jonglez | # Activer IPv6 dans le VPN |
338 | 2 | Pierre-Arnaud Poudret | tun-ipv6 |
339 | 5 | Baptiste Jonglez | # Faire passer tout le trafic IPv6 via le VPN: |
340 | 2 | Pierre-Arnaud Poudret | route-ipv6 ::/1 |
341 | route-ipv6 8000::/1 |
||
342 | |||
343 | # Envoyer un login et un mot de passe. Pour éviter de taper à la main login |
||
344 | # et mot de passe, vous pouvez ajouter à droite de "auth-user-pass" le nom d'un |
||
345 | # fichier contenant ces deux informations, une par ligne. |
||
346 | auth-user-pass credentials |
||
347 | |||
348 | # Un minimum de debug, c'est toujours bien. |
||
349 | verb 3 |
||
350 | |||
351 | #log-append /var/log/openvpn-illyse.log |
||
352 | |||
353 | # Certificat permettant de vérifier que c'est bien à Illyse que |
||
354 | # l'on se connecte et donc à qui on donne notre mot de passe. |
||
355 | remote-cert-tls server |
||
356 | <ca> |
||
357 | -----BEGIN CERTIFICATE----- |
||
358 | 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 |
||
394 | sjvtdavgLFaMPLPrI2DAcjpVMUuL1VgdqUcQkhc= |
||
395 | -----END CERTIFICATE----- |
||
396 | </ca> |
||
397 | </pre> |
||
398 | 1 | Pierre-Arnaud Poudret | |
399 | 29 | Côme chillie | Il est également possible de créer un fichier contenant vos logins et mots de passe pour éviter de les taper à chaque connexion. Par exemple : |
400 | 2 | Pierre-Arnaud Poudret | |
401 | +C:\Program Files\OpenVPN\config\illyse\credentials+ |
||
402 | |||
403 | <pre> |
||
404 | jkleboulet-vpn1 |
||
405 | 1 | Pierre-Arnaud Poudret | omgsuchsecured123 |
406 | </pre> |
||
407 | 29 | Côme chillie | |
408 | Si vous ne voulez pas utiliser un tel fichier, commentez la ligne «auth-user-pass credentials» dans la configuration. |
||
409 | 4 | Fabien Michel | |
410 | h2. Mac OS X |
||
411 | |||
412 | Installer le client OpenVPN Tunnelblick : https://code.google.com/p/tunnelblick/ |
||
413 | |||
414 | Créer un fichier illyse.ovpn avec la configuration voulue. Celle indiquée ci-dessous fonctionne sans modification necessaire. |
||
415 | Double-cliquer sur le fichier afin que TunnelBlick import la configuration. |
||
416 | A la première connexion, il va demander un couple login/password qu'il sera possible de stocker dans le trousseau. |
||
417 | |||
418 | Paramètres modifiés par rapport à la configuration pour Linux : |
||
419 | * log-append : Ce paramètre n'est pas accepté. Mais tunnelblick log déjà en interne. |
||
420 | * auth-user-pass : On ne précise pas de fichier de credential, c'est géré par Tunnelblick et Keychains au moment de la connexion |
||
421 | * Les commentaires ont été retirés car le fichier est tronqué au moment de l'import s'il est trop long (ce qui était le cas) |
||
422 | |||
423 | +illyse.ovpn+ |
||
424 | <pre> |
||
425 | client |
||
426 | dev tun0 |
||
427 | proto udp |
||
428 | mssfix 1300 |
||
429 | fragment 1300 |
||
430 | explicit-exit-notify |
||
431 | remote vpn.illyse.net 1194 |
||
432 | #http-proxy 192.0.2.1 8080 |
||
433 | route-delay 2 |
||
434 | nobind |
||
435 | |||
436 | persist-key |
||
437 | persist-tun |
||
438 | |||
439 | redirect-gateway def1 |
||
440 | #route 80.67.160.0 255.255.224.0 |
||
441 | |||
442 | tun-ipv6 |
||
443 | route-ipv6 ::/1 |
||
444 | route-ipv6 8000::/1 |
||
445 | |||
446 | auth-user-pass |
||
447 | verb 3 |
||
448 | |||
449 | remote-cert-tls server |
||
450 | <ca> |
||
451 | -----BEGIN CERTIFICATE----- |
||
452 | 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 |
||
485 | 1 | Pierre-Arnaud Poudret | LSVaB9OD7iVWkW5eo6ng3XA390HIUUtf/0IdtiCoMsjuZbVagfiaUu0kUJpR6d2k |
486 | r5czdLFhRu8uw0sWn1rMQXlUAqH0WAfoq8XinaHesWs5MEnvevjoUTkNhFnqe1Ra |
||
487 | rkwU9mzr1/N6GfpPalbveD0duTGAkJN5mwLZi+HZ4ctLgO1ShYFU/NbC7jNU3YCU |
||
488 | sjvtdavgLFaMPLPrI2DAcjpVMUuL1VgdqUcQkhc= |
||
489 | -----END CERTIFICATE----- |
||
490 | </ca> |
||
491 | 15 | Rémi Bouhl | |
492 | </pre> |
||
493 | |||
494 | h2. Android |
||
495 | 1 | Pierre-Arnaud Poudret | |
496 | 61 | Florent Guillot | Configuration OpenVPN pour Android (testé sous Android 7.0 et OpenVPN for Android 0.7.5) |
497 | Ci-après un fichier de configuration qui devrait fonctionner avec l'application Android "OpenVPN for Android", |
||
498 | Disponible sur F-Droid : https://f-droid.org/en/packages/de.blinkt.openvpn/ |
||
499 | 15 | Rémi Bouhl | Ou au pire sur le PlayStore : https://play.google.com/store/apps/details?id=de.blinkt.openvpn |
500 | 61 | Florent Guillot | Posez le fichier de configuration, renommé en VPN-Illyse.ovpn par exemple, sur l'appareil. |
501 | 15 | Rémi Bouhl | Une fois l'application installée et démarrée, cliquez sur le dossier en bas à droite et chezchez le fichier de configuration. |
502 | Il suffit de renseigner les identifiants. |
||
503 | 1 | Pierre-Arnaud Poudret | |
504 | 15 | Rémi Bouhl | <pre> |
505 | 1 | Pierre-Arnaud Poudret | |
506 | # |
||
507 | # Fichier de configuration VPN Illyse pour Android |
||
508 | 61 | Florent Guillot | # 2018-09-02 |
509 | 15 | Rémi Bouhl | # |
510 | client |
||
511 | 61 | Florent Guillot | dev tun0 |
512 | proto udp |
||
513 | mssfix 1300 |
||
514 | fragment 1300 |
||
515 | explicit-exit-notify |
||
516 | |||
517 | remote vpn.illyse.net 1194 |
||
518 | route-delay 2 |
||
519 | nobind |
||
520 | |||
521 | persist-key |
||
522 | redirect-gateway def1 |
||
523 | |||
524 | tun-ipv6 |
||
525 | route-ipv6 ::/1 |
||
526 | route-ipv6 8000::/1 |
||
527 | |||
528 | 15 | Rémi Bouhl | auth-user-pass |
529 | 61 | Florent Guillot | auth-retry nointeract |
530 | 15 | Rémi Bouhl | remote-cert-tls server |
531 | <ca> |
||
532 | -----BEGIN CERTIFICATE----- |
||
533 | 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 |
||
569 | sjvtdavgLFaMPLPrI2DAcjpVMUuL1VgdqUcQkhc= |
||
570 | 16 | Rémi Bouhl | -----END CERTIFICATE----- |
571 | 4 | Fabien Michel | </ca> |
572 | |||
573 | 8 | Baptiste Jonglez | </pre> |
574 | 30 | Florent Guillot | |
575 | h2. Yunohost |
||
576 | 32 | Florent Guillot | |
577 | 30 | Florent Guillot | h3. Installer le client VPN |
578 | 32 | Florent Guillot | |
579 | * Dans Applications > Install, en bas de la page, entrer 'https://github.com/labriqueinternet/vpnclient_ynh' dans le champ *Install custom app*. |
||
580 | * Lire et valider l'avertissement. |
||
581 | 1 | Pierre-Arnaud Poudret | * Valider l'installation en cliquant sur le bouton *Install* |
582 | 40 | Florent Guillot | |
583 | 34 | Florent Guillot | h3. Configurer le client VPN |
584 | 51 | Florent Guillot | |
585 | 39 | Florent Guillot | h4. Méthode automatique, ".cube" |
586 | |||
587 | 41 | Florent Guillot | Le .cube est un fichier permettant de configurer l'application vpn-client automatiquement. Idéalement, ce fichier devrait être automatiquement généré pour chaque adhérant dans notre SI, Coin. Ce n'est pour l'instant pas encore le cas. Il faut donc faire son .cube à la main, en utilisant la base suivante : |
588 | 50 | Florent Guillot | * télécharger le .cube de base: attachment:illyse.cube |
589 | 46 | Florent Guillot | * l'éditer avec n'importe quel éditeur de texte (notepad, gedit, nano, vim, etc) afin de remplacer les 4 champs vous concernant: ip6_net, ip4_addr, login_user, login_passphrase. Ces infos sont à retrouver dans Coin (cf #Avant-de-commencer) |
590 | 40 | Florent Guillot | * importer le .cube dans l'application vpn_client (onglet "Automatic" dans la configuration de l'application) |
591 | 48 | Florent Guillot | |
592 | 39 | Florent Guillot | h4. Méthode manuelle |
593 | 52 | Florent Guillot | |
594 | 42 | Florent Guillot | La méthode ".cube" décrite ci-dessus est vivement conseillée, car elle permet de simplifier la procédure et d'éviter les erreurs. La méthode manuelle est donnée uniquement à titre informatif. |
595 | 34 | Florent Guillot | |
596 | * Dans Applications > VPN Client, cliquer sur l'URL _https://maBrique.nohost.me/vpnadmin_ |
||
597 | > * Server Address: vpn.illyse.net |
||
598 | > * Server Port: 1194 |
||
599 | > * Protocol: UDP |
||
600 | > * Advanced: copier coller la configuration suivante: |
||
601 | <pre> |
||
602 | remote <TPL:SERVER_NAME> |
||
603 | proto <TPL:PROTO> |
||
604 | port <TPL:SERVER_PORT> |
||
605 | |||
606 | pull |
||
607 | nobind |
||
608 | dev tun |
||
609 | tun-ipv6 |
||
610 | keepalive 10 30 |
||
611 | resolv-retry infinite |
||
612 | |||
613 | mssfix 1300 |
||
614 | |||
615 | route-delay 2 |
||
616 | nobind |
||
617 | persist-key |
||
618 | |||
619 | # Authentication by login |
||
620 | <TPL:LOGIN_COMMENT>auth-user-pass /etc/openvpn/keys/credentials |
||
621 | |||
622 | # UDP only |
||
623 | <TPL:UDP_COMMENT>explicit-exit-notify |
||
624 | <TPL:UDP_COMMENT>fragment 1300 |
||
625 | |||
626 | # TLS |
||
627 | tls-client |
||
628 | <TPL:TA_COMMENT>tls-auth /etc/openvpn/keys/user_ta.key 1 |
||
629 | remote-cert-tls server |
||
630 | ns-cert-type server |
||
631 | ca /etc/openvpn/keys/ca-server.crt |
||
632 | <TPL:CERT_COMMENT>cert /etc/openvpn/keys/user.crt |
||
633 | <TPL:CERT_COMMENT>key /etc/openvpn/keys/user.key |
||
634 | |||
635 | # Logs |
||
636 | verb 3 |
||
637 | mute 5 |
||
638 | status /var/log/openvpn-client.status |
||
639 | log-append /var/log/openvpn-illyse.log |
||
640 | |||
641 | # Routing |
||
642 | route-ipv6 2000::/3 |
||
643 | 35 | Florent Guillot | redirect-gateway def1 |
644 | </pre> |
||
645 | > * Server CA: Téléchargez le fichier attachment:vpn-illyse.crt et le téléverser. |
||
646 | > * Username: pdupond-vpn1 (information issue de coin, cf section #Avant-de-commencer) |
||
647 | 38 | Florent Guillot | > * Password: idem |
648 | > * First resolver: 80.67.169.12 |
||
649 | 1 | Pierre-Arnaud Poudret | > * 2nd resolver : 2001:913::8 |
650 | 35 | Florent Guillot | |
651 | 30 | Florent Guillot | L'ensemble des autres champs est à laisser sur la valeur par défaut. |
652 | 59 | Sylvain David | |
653 | h2. pfsense |
||
654 | |||
655 | La configuration OpenVPN pour pfsense fonctionne parfaitement. Elle a été testée sous pfsense 2.4.2. |
||
656 | Voici comment effectuer cette configuration étape par étape : |
||
657 | |||
658 | h3. installation de l'autorité de certification Illyse. |
||
659 | |||
660 | - Naviguez dans le menu "system / Certificates Manager / CAs" |
||
661 | - cliquez sur "add" puis remplissez les champs comme il suit : |
||
662 | |||
663 | Descriptive Name : illyse |
||
664 | Method : Import an existing Certificate Auhtority |
||
665 | Certificate Data : copiez/collez la CA d'illyse |
||
666 | <pre> |
||
667 | -----BEGIN CERTIFICATE----- |
||
668 | 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 |
||
704 | sjvtdavgLFaMPLPrI2DAcjpVMUuL1VgdqUcQkhc= |
||
705 | -----END CERTIFICATE----- |
||
706 | </pre> |
||
707 | Puis sauvez. |
||
708 | |||
709 | h3. installation de la configuration VPN |
||
710 | 60 | Sylvain David | |
711 | 59 | Sylvain David | - naviguez dans le menu "VPN / OpenVPN / Client" |
712 | 60 | Sylvain David | - cliquez sur "add" puis remplissez les champs comme il suit : |
713 | 59 | Sylvain David | (NB : les champs non mentionnés dans cette documentation sont laissé à vide et/ou à leur valeur par défaut.) |
714 | 60 | Sylvain David | |
715 | 59 | Sylvain David | <pre> |
716 | Server mode : Peer to Peer SSL/TLS |
||
717 | Protocol : UDP IPv4 and IPv6 on all interfaces (multihome) |
||
718 | 1 | Pierre-Arnaud Poudret | device mode : tun layer3 tunnel mode |
719 | interface : LAN |
||
720 | 59 | Sylvain David | server host or address : 89.234.140.3 |
721 | 60 | Sylvain David | Description : illyse |
722 | </pre> |
||
723 | 59 | Sylvain David | <pre> |
724 | Username : votre login fournit par illyse. exemple : johndoe-vpn1 |
||
725 | 60 | Sylvain David | password : le mot de passe que vous avez créé vous même sur coin |
726 | </pre> |
||
727 | 59 | Sylvain David | <pre> |
728 | 1 | Pierre-Arnaud Poudret | Peer certificate auhtority : illyse |
729 | client certificate : None (Username and/or password required) |
||
730 | 59 | Sylvain David | Encryption algorithm : BF-CBC (128 bit ley by default, 64 bit block) |
731 | 1 | Pierre-Arnaud Poudret | Enable NCP : coché |
732 | 59 | Sylvain David | NCP algorithm : sélectionnez AES-256-GCM et AES-128-GCM |
733 | 60 | Sylvain David | Auth digest algorithm : SHA1 (160-bit) |
734 | </pre> |
||
735 | 59 | Sylvain David | <pre> |
736 | Compression : Omit preference, + Disable apaptative LZO Compression [legacy style, comp-no] |
||
737 | 60 | Sylvain David | Topology : Subnet - One IP address per client in a common subnet |
738 | 59 | Sylvain David | </pre> |
739 | Custom options : copiez collez ceci : |
||
740 | <pre> |
||
741 | redirect-gateway def1;fragment 1300;mssfix 1300 |
||
742 | 1 | Pierre-Arnaud Poudret | </pre> |
743 | 59 | Sylvain David | cliquez sur "save" |
744 | 1 | Pierre-Arnaud Poudret | |
745 | h3. autorisez votre réseau local à sortir par illyse. |
||
746 | |||
747 | Le VPN devrait monter tout seul. Toutefois, il faut encore configurer pfsense pour autoriser vos machines du LAN à sortir par le tunnel. |
||
748 | 60 | Sylvain David | Pour cela, allez dans Firewall / NAT / Outbound |
749 | 59 | Sylvain David | <pre> |
750 | 60 | Sylvain David | outbound NAT mode : "Hybrid Outbound NAT rule generation. (Automatic Outbound NAT + rules below)" |
751 | 59 | Sylvain David | </pre> |
752 | cliquez sur "save" |
||
753 | |||
754 | 60 | Sylvain David | Toujours dans ce menu, dans "mapping", cliquez sur "add" |
755 | <pre> |
||
756 | interface : ovpnc1-illyse # il s'agit de l'interface réseau virtuelle qui porte votre tunnel VPN |
||
757 | protocol : any |
||
758 | 59 | Sylvain David | source : network # remplissez le champs réseau avec l'IP de votre réseau local. exemple : 192.168.0.0/24 |
759 | destination : any |
||
760 | translation : interface address |
||
761 | 60 | Sylvain David | description : autoriser le LAN à sortir par Illyse |
762 | 59 | Sylvain David | </pre> |
763 | 9 | Baptiste Jonglez | cliquez sur "save" |
764 | 8 | Baptiste Jonglez | |
765 | 63 | Mossroy Mossroy | h2. Turris OS ou OpenWRT |
766 | |||
767 | J'ai testé ce qui est écrit ci-dessous avec un Turris Mox sous Turris OS 5.1.10, mais ça devrait fonctionner à l'identique sur un Turris Omnia (ou un autre appareil utilisant Turris OS) |
||
768 | |||
769 | Turris OS est basé sur OpenWRT : cela devrait donc fonctionner également sur n'importe quel autre appareil basé sur OpenWRT. |
||
770 | |||
771 | h3. installation des packages openvpn |
||
772 | |||
773 | Il faut installer OpenVPN (c'est le même paquet pour gérer les modes client et serveur, même si on ne s'en servira ici qu'en mode client) |
||
774 | |||
775 | Sur un Turris, le plus simple est d'aller dans l'interface reForis, dans "Gestions des paquets" -> "Paquets" (ce qui revient à l'adresse https://192.168.1.1/reforis/package-management/packages , remplacer le 192.168.1.1 par l'adresse de votre Turris si besoin), et de cocher "OpenVPN" |
||
776 | |||
777 | Sur tout autre appareil tournant sous OpenWRT, il faut installer le package luci-app-openvpn. Soit via le gestionnaire de paquets de l'interface LuCI, soit en ligne de commande : |
||
778 | <pre><code class="shell"> |
||
779 | opkg install luci-app-openvpn |
||
780 | </code></pre> |
||
781 | |||
782 | h3. configuration du VPN Illyse |
||
783 | |||
784 | Une fois OpenVPN installé, un nouveau menu "OpenVPN" apparait dans les interfaces reForis (sur Turris OS) et LuCI. |
||
785 | Les deux interfaces (reForis et LuCI) permettent de configurer des clients OpenVPN. reForis est un peu plus simple à utiliser, mais ne permet hélas pas de fournir facilement les informations d'authentification (il faut créer le fichier d'identifiant/mot de passe à la main, en ssh par exemple. En tous cas en version 5.1.10 de Turris OS). Je vais donc présenter ici comment faire avec LuCI (ça devrait fonctionner sur n'importe quel appareil basé sur OpenWRT, Turris compris) |
||
786 | |||
787 | Dans le menu "OpenVPN" de LuCI, il faut ajouter une instance de client OpenVPN dans la liste (il est possible qu'il y ait déjà des lignes pour des serveurs OpenVPN, ou pour des exemples). |
||
788 | Pour cela, il suffit de renseigner les infos dans "Téléchargement de fichier de configuration OVPN" : choisir le nom "illyse", et uploader le fichier illyse.ovpn ci-dessous (vous pouvez choisir un autre nom que "illyse" mais, dans ce cas, il faut modifier la ligne auth-user-pass /etc/openvpn/illyse.auth pour y remplacer illyse par votre nom) |
||
789 | |||
790 | +illyse.ovpn+ |
||
791 | <pre> |
||
792 | # C'est nous qui prenons l'initiative de nous connecter au serveur. |
||
793 | client |
||
794 | |||
795 | # On route de l'IP, on ne fait pas de l'ethernet. |
||
796 | dev tun0 |
||
797 | |||
798 | # si on ne recoit pas d'IP pour tun0: |
||
799 | # - soit on configure l'interface avec des ip privees bidon |
||
800 | #ifconfig 10.255.255.1 10.255.255.2 |
||
801 | # - soit on utilise un script pour faire "ifconfig tun0 up" |
||
802 | #script-security 2 |
||
803 | #up up.sh |
||
804 | |||
805 | # Il est preferable d'utiliser udp, le resultat fonctionne mieux. Il est |
||
806 | # cependant notable que les restrictions d'acces Internet laissent souvent |
||
807 | # plus facilement passer tcp. Essayez donc udp, et seulement s'il ne fonctionne |
||
808 | # pas, essayez tcp. |
||
809 | |||
810 | # Transport sur udp v4. En v6, la redirection de passerelle par defaut fonctionne mal (openvpn ne cree pas l'equivalent de la route /32 IPv4 vers le serveur vpn via la passerelle sous-jacente) |
||
811 | # Si on ne prevoit pas d'utiliser la directive "redirect-gateway def1", alors on peut choisir "proto udp6" pour monter le tunnel en IPv6. |
||
812 | #proto udp6 |
||
813 | proto udp |
||
814 | #proto tcp |
||
815 | |||
816 | # Certains reseaux ont en fait une MTU bien inferieure a 1450. Dire aux connexions |
||
817 | # TCP d'etre tres conservatives, pour que ca marche plus ou moins partout. |
||
818 | mssfix 1300 |
||
819 | # En UDP, on peut s'assurer que ca passe de toutes facons en fragmentant au besoin |
||
820 | # quand ca depasse. |
||
821 | fragment 1300 |
||
822 | # Idealement, ca devrait etre detecte tout seul, mais c'est loin de toujours fonctionner... |
||
823 | #mtu-disc yes |
||
824 | |||
825 | # En udp, Prevenir le serveur quand on termine, permet de relancer |
||
826 | # immediatement sans attendre que le serveur se rende compte de la |
||
827 | # deconnexion par timeout. |
||
828 | explicit-exit-notify |
||
829 | |||
830 | # L'adresse du serveur. |
||
831 | remote vpn.illyse.net 1194 |
||
832 | |||
833 | # eventuellement, on peut avoir besoin de passer par un proxy http, decommenter cette ligne en mettant l'adresse et le port du proxy. |
||
834 | #http-proxy 192.0.2.1 8080 |
||
835 | |||
836 | # Attendre un peu avant d'ajouter les routes. |
||
837 | route-delay 2 |
||
838 | |||
839 | # Ne pas utiliser un port local statique, on est client de toutes facons. |
||
840 | nobind |
||
841 | |||
842 | # Garder la cle en memoire, pour ne pas avoir besoin de la relire lors d'un |
||
843 | # redemarrage. |
||
844 | persist-key |
||
845 | # Ne pas tuer l'interface du tunnel lors d'un redemarrage. |
||
846 | #persist-tun |
||
847 | |||
848 | # Decommenter cette ligne pour faire passer tout le trafic via le VPN: |
||
849 | redirect-gateway def1 |
||
850 | |||
851 | # On peut aussi vouloir plutot router seulement quelques destinations, par |
||
852 | # exemple ici tout Gitoyen: |
||
853 | #route 80.67.160.0 255.255.224.0 |
||
854 | |||
855 | # Activer IPv6 dans le tunnel |
||
856 | tun-ipv6 |
||
857 | # et faire passer tout le trafic IPv6 via le VPN: |
||
858 | route-ipv6 ::/1 |
||
859 | route-ipv6 8000::/1 |
||
860 | |||
861 | # Envoyer un login et un mot de passe. Pour eviter de taper a la main login |
||
862 | # et mot de passe, vous pouvez ajouter a droite de "auth-user-pass" le nom d'un |
||
863 | # fichier contenant ces deux informations, une par ligne. |
||
864 | auth-user-pass /etc/openvpn/illyse.auth |
||
865 | |||
866 | # Retenter l’authentification meme si le serveur la refuse (utile pour |
||
867 | # eviter de faire mourir le client si le serveur LDAP ne repond pas) |
||
868 | auth-retry nointeract |
||
869 | |||
870 | # Un minimum de debug, c'est toujours bien. |
||
871 | verb 3 |
||
872 | |||
873 | log-append /var/log/openvpn-illyse.log |
||
874 | |||
875 | # Certificat permettant de verifier que c'est bien a Illyse que |
||
876 | # l'on se connecte et donc a qui on donne notre mot de passe. |
||
877 | remote-cert-tls server |
||
878 | <ca> |
||
879 | -----BEGIN CERTIFICATE----- |
||
880 | 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 |
||
916 | sjvtdavgLFaMPLPrI2DAcjpVMUuL1VgdqUcQkhc= |
||
917 | -----END CERTIFICATE----- |
||
918 | </ca> |
||
919 | |||
920 | </pre> |
||
921 | |||
922 | Ensuite il faut cliquer sur "Editer" sur cette instance OpenVPN (qui devrait maintenant apparaitre dans la liste), et ajouter votre identifiant et mot de passe dans la zone "Section permettant d'ajouter un fichier facultatif "auth-user-pass" avec vos informations d'identification" : l'identifiant sur la première ligne, le mot de passe sur la seconde ligne. |
||
923 | Puis cliquer sur Enregistrer, et revenir dans le menu OpenVPN |
||
924 | |||
925 | Sur notre instance OpenVPN, cocher la case "activé" puis, tout en bas, "Enregistrer et appliquer". |
||
926 | |||
927 | Ensuite il faut configurer le firewall pour laisser sortir ce flux (si vous avez utilisé l'interface reForis, ça ne devrait pas être nécessaire : elle s'en occupe). Dans "Réseau" -> "Pare-feu", ajouter une nouvelle zone "illyse" (par exemple), avec le paramétrage suivant : |
||
928 | * Entrée : rejeter |
||
929 | * Sortie : accepter |
||
930 | * Transfert : rejeter |
||
931 | * Masquage : cocher |
||
932 | * Zones source : lan |
||
933 | * Appareils couverts : tun0 |
||
934 | |||
935 | h3. Activation/désactivation |
||
936 | |||
937 | Une fois mis en place, il suffit d'utiliser le bouton Start/Stop sur la ligne de l'instance OpenVPN pour l'activer ou le désactiver |
||
938 | |||
939 | h3. Performances |
||
940 | |||
941 | Le protocole OpenVPN consomme pas mal de ressources (côté client et côté serveur). Avec les serveurs Illyse et un client PC puissant (sans passer par mon routeur), j'obtiens (en mars 2021) environ 140 Mbps (en download comme en upload) alors que mon FAI me fournit du Gigabit. Mais le Turris MOX n'a pas un gros processeur donc je n'obtiens avec qu'autour de 30 Mbps down et 40 Mbps up. |
||
942 | |||
943 | Pour obtenir de meilleurs performances avec le Turris Mox, il est possible de passer sur le protocole Wireguard au lieu d'OpenVPN (j'obtiens environ 250Mbps en down et 180Mbps en up) |
||
944 | |||
945 | |||
946 | 9 | Baptiste Jonglez | h1. Configurations avancées |
947 | 8 | Baptiste Jonglez | |
948 | 25 | Baptiste Jonglez | h2. Client sans IP montée sur le tunnel |
949 | 1 | Pierre-Arnaud Poudret | |
950 | 25 | Baptiste Jonglez | Pour ceux qui veulent bricoler, il est possible (via l'interface web abonné) ne pas monter du tout d'IP (v4 ou v6) sur l'interface tun du client. Dans ce cas, les paquets destinés aux ranges v4 et v6 de l'abonné sont toujours routés correctement vers le client, mais il appartient à l'abonné de s'assurer qu'ils seront correctement routés plus avant sur son réseau interne. Ça peut être utile si on ne veut pas utiliser l'IPv4 publique Illyse directement sur le routeur qui monte le VPN, mais sur une autre machine du réseau local. |
951 | |||
952 | Attention, si il n'y a pas d'IPv4 installée sur l'interface tun, OpenVPN est très bête et n'arrivera pas à installer la route par défaut par le VPN... OpenVPN essaie d'ajouter des routes avec 89.234.140.129 comme gateway, mais il ne sait pas joindre cette IP. Pour résoudre la stupidité d'OpenVPN^W^W^W ce problème, on utilise un script qui rajoute la route : |
||
953 | |||
954 | +/etc/openvpn/illyse.conf+ |
||
955 | <pre> |
||
956 | ... |
||
957 | route-delay 2 |
||
958 | redirect-gateway def1 |
||
959 | |||
960 | script-security 2 |
||
961 | up illyse-up.sh |
||
962 | ... |
||
963 | </pre> |
||
964 | |||
965 | +/etc/openvpn/illyse-up.sh+ |
||
966 | <pre> |
||
967 | #!/bin/sh |
||
968 | tun_dev="$1" |
||
969 | ip link set "$tun_dev" up |
||
970 | ip route add "$route_vpn_gateway" dev "$tun_dev" |
||
971 | exit 0 |
||
972 | </pre> |
||
973 | 10 | Baptiste Jonglez | |
974 | h2. Utiliser simultanément la connexion normale et le VPN, sortie par défaut par la connexion normale |
||
975 | |||
976 | Lorsqu'on a un serveur, on peut avoir envie d'être joignable à la fois via la connexion normale (e.g. Free) et via le VPN. Pour se faire, on utilise le **policy routing** du noyau Linux : quand quelqu'un nous parle sur l'IP normale, on lui répond via la connexion normale, et quand quelqu'un nous parle sur l'IP du VPN, on répond via le VPN. Notons que ça ne concerne que les connexions entrantes (donc principalement utile pour un serveur). |
||
977 | |||
978 | Pour les connexions sortantes, on a le choix : soit on passe dans le VPN, soit on passe par la connexion normale. La configuration ci-dessous fait passer les connexions sortantes par la connexion normale (parce que c'est plus simple). |
||
979 | |||
980 | Note : il faut s'assurer de bien avoir configuré une IPv4 et une IPv6 sur l'interface tun (sur https://coin.illyse.org). Sinon, les scripts ne feront rien. |
||
981 | |||
982 | Bonus : si vous avez un noyau Multipath-TCP, cette configuration permettra d'utiliser les deux connexions en parallèle ! Pratique pour joindre Youtube si on est chez Free, par exemple :) |
||
983 | (la configuration ci-dessous est similaire à http://multipath-tcp.org/pmwiki.php/Users/ConfigureRouting ) |
||
984 | |||
985 | +/etc/openvpn/up.sh+ |
||
986 | <pre> |
||
987 | #!/bin/bash |
||
988 | |||
989 | dev="$1" |
||
990 | tun_mtu="$2" |
||
991 | link_mtu="$3" |
||
992 | local_ip="$4" |
||
993 | remote_ip="$5" |
||
994 | |||
995 | # Routing table to use |
||
996 | table=4242 |
||
997 | |||
998 | # Source-specific routing: use the normal default route by default, |
||
999 | # but use the VPN for replying to packets coming from the VPN. |
||
1000 | # IPv4 |
||
1001 | 58 | Sylvain David | [ -n "$local_ip" ] && ip rule add from "$local_ip" table "$table" && ip route add default dev "$dev" table "$table" |
1002 | # IPv6 |
||
1003 | [ -n "$ifconfig_ipv6_local" ] && ip -6 rule add from "$ifconfig_ipv6_local" table "$table" && ip -6 route add default dev "$dev" table "$table" |
||
1004 | </pre> |
||
1005 | |||
1006 | +/etc/openvpn/down.sh+ |
||
1007 | <pre> |
||
1008 | #!/bin/bash |
||
1009 | |||
1010 | dev="$1" |
||
1011 | tun_mtu="$2" |
||
1012 | link_mtu="$3" |
||
1013 | local_ip="$4" |
||
1014 | remote_ip="$5" |
||
1015 | |||
1016 | table=4242 |
||
1017 | |||
1018 | # Delete table for source-specific routing. |
||
1019 | [ -n "$local_ip" ] && ip rule del from "$local_ip" && ip route del default table "$table" |
||
1020 | [ -n "$ifconfig_ipv6_local" ] && ip -6 rule del from "$ifconfig_ipv6_local" && ip -6 route del default table "$table" |
||
1021 | |||
1022 | exit 0 |
||
1023 | </pre> |
||
1024 | |||
1025 | +/etc/openvpn/illyse.conf+ |
||
1026 | <pre> |
||
1027 | ## Configuration VPN Illyse pour accepter des connexions entrantes |
||
1028 | ## à la fois via le VPN et via la connexion normale, grâce au policy routing (Linux uniquement) |
||
1029 | ## https://www.illyse.org/projects/publicdocs/wiki/Vpn_doc_user#Utiliser-simultanément-la-connexion-normale-et-le-VPN |
||
1030 | |||
1031 | # Gestion des routes via des scripts externes. |
||
1032 | script-security 2 |
||
1033 | up up.sh |
||
1034 | down down.sh |
||
1035 | |||
1036 | |||
1037 | # Reste de la configuration normale. |
||
1038 | # Penser à enlever "redirect-gateway" et "route-ipv6", on gère les |
||
1039 | # routes via up.sh et down.sh |
||
1040 | client |
||
1041 | remote vpn.illyse.net 1194 |
||
1042 | #http-proxy 192.0.2.1 8080 |
||
1043 | dev tun0 |
||
1044 | |||
1045 | #proto udp6 |
||
1046 | proto udp |
||
1047 | #proto tcp |
||
1048 | explicit-exit-notify |
||
1049 | |||
1050 | mssfix 1300 |
||
1051 | fragment 1300 |
||
1052 | |||
1053 | route-delay 2 |
||
1054 | nobind |
||
1055 | persist-key |
||
1056 | persist-tun |
||
1057 | |||
1058 | tun-ipv6 |
||
1059 | |||
1060 | auth-user-pass credentials |
||
1061 | |||
1062 | verb 3 |
||
1063 | log-append /var/log/openvpn-illyse.log |
||
1064 | |||
1065 | # Certificat permettant de vérifier que c'est bien à Illyse que |
||
1066 | # l'on se connecte et donc à qui on donne notre mot de passe. |
||
1067 | remote-cert-tls server |
||
1068 | <ca> |
||
1069 | -----BEGIN CERTIFICATE----- |
||
1070 | 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 |
||
1106 | sjvtdavgLFaMPLPrI2DAcjpVMUuL1VgdqUcQkhc= |
||
1107 | -----END CERTIFICATE----- |
||
1108 | </ca> |
||
1109 | 21 | Mit Mit | </pre> |
1110 | |||
1111 | h2. Utiliser simultanément la connexion normale et le VPN, sortie par défaut via le VPN |
||
1112 | |||
1113 | Dans la configuration précédente, les deux IPs, FAI et VPN, sont accessibles de l'extérieur et répondent correctement. |
||
1114 | La machine toutefois utilise par défaut la sortie FAI plutôt que le VPN. |
||
1115 | Le cas décrit ici a son IP FAI obtenue par DHCP, avec la table de routage main, et sans IPv6. |
||
1116 | Il faut bidouiller les routes pour que si on contacte l'IP du serveur VPN, on passe bien par l'IP FAI et l'interface qui correspond, puis répondre à ce qui vient de l'IP FAI par la table main, et enfin par défaut sortir par le table correspondant au VPN. |
||
1117 | |||
1118 | Étape 1, dans le fichier illyse.conf, il faut ajouter l'option 'ifconfig-noexec' pour éviter qu'openVPN ne monte l'IP du VPN avant qu'on ne gère ça dans le script up.sh |
||
1119 | Étape 2, changer les scripts up.sh et down.s. Actuellement, on n'a pas trouvé de solution propre pour éviter de coder en dur des paramètres dans ce scripts. |
||
1120 | +/etc/openvpn/up.conf+ |
||
1121 | <pre> |
||
1122 | #!/bin/bash |
||
1123 | |||
1124 | dev="$1" |
||
1125 | isp_dev="eth0" |
||
1126 | tun_mtu="$2" |
||
1127 | link_mtu="$3" |
||
1128 | local_ip="$4" |
||
1129 | remote_ip="$5" |
||
1130 | isp_ip="WWW.XXX.YYY.ZZZ" |
||
1131 | isp_gateway="WWW.XXX.YYY.ZZZ" |
||
1132 | vpn_server="89.234.140.3" |
||
1133 | |||
1134 | # Routing table to use |
||
1135 | tableVPN=4242 |
||
1136 | tableLOC=1337 |
||
1137 | |||
1138 | # IP inconnue de COIN, donc tun0 à monter |
||
1139 | ip link set "$dev" up |
||
1140 | ip addr add "$local_ip"/32 dev "$dev" |
||
1141 | |||
1142 | # Source-specific routing: use the normal default route by default, |
||
1143 | # but use the VPN for replying to packets coming from the VPN. |
||
1144 | # IPv4 |
||
1145 | if [ -n "local_ip" ]; then |
||
1146 | ip rule add pref 31000 lookup "$tableLOC" |
||
1147 | ip rule add pref 31050 from "$isp_ip" lookup main |
||
1148 | ip rule add pref 31100 lookup "$tableVPN" |
||
1149 | ip route add default dev "$dev" table "$tableVPN" |
||
1150 | ip route add "$vpn_server" via "$isp_gateway" table "$tableLOC" dev "$isp_dev" |
||
1151 | fi |
||
1152 | |||
1153 | # IPv6 |
||
1154 | [ -n "$ifconfig_ipv6_local" ] && ip -6 addr add "$ifconfig_ipv6_local" dev "$dev" && ip -6 route add default dev "$dev" |
||
1155 | |||
1156 | exit 0 |
||
1157 | </pre> |
||
1158 | |||
1159 | +/etc/openvpn/down.conf+ |
||
1160 | <pre> |
||
1161 | dev="$1" |
||
1162 | tun_mtu="$2" |
||
1163 | link_mtu="$3" |
||
1164 | local_ip="$4" |
||
1165 | remote_ip="$5" |
||
1166 | isp_ip="WWW.XXX.YYY.ZZZ" |
||
1167 | isp_gateway="WWW.XXX.YYY.ZZZ" |
||
1168 | vpn_server="89.234.140.3" |
||
1169 | |||
1170 | # Routing table to use |
||
1171 | tableVPN=4242 |
||
1172 | tableLOC=1337 |
||
1173 | |||
1174 | # Delete table for source-specific routing. |
||
1175 | if [ "$local_ip" ]; then |
||
1176 | ip route del "$vpn_server" via "$isp_gateway" table "$tableLOC" |
||
1177 | ip route del default dev "$dev" table "$tableVPN" |
||
1178 | ip rule del pref 31100 lookup "$tableVPN" |
||
1179 | ip rule del pref 31050 from "$isp_ip" lookup main |
||
1180 | ip rule del pref 31000 lookup "$tableLOC" |
||
1181 | fi |
||
1182 | |||
1183 | [ -n "$ifconfig_ipv6_local" ] && ip -6 route del default dev "$dev" && ip -6 addr del "$ifconfig_ipv6_local" dev "$dev" |
||
1184 | |||
1185 | 37 | Mit Mit | exit 0 |
1186 | </pre> |
||
1187 | |||
1188 | h3. Utiliser simultanément la connexion normale et le VPN, sortie par défaut via le VPN, et faire AP WiFi |
||
1189 | |||
1190 | On a foutu le bordel dans les routes, ce qui fait que hostapd n'arrive pas à faire tomber le bousin en marche, car il met ses routes dans la table main au lieu de les mettre dans la tableVPN 4242. |
||
1191 | Du coup, on l'aide (en supposant que le wlan soit en 192.168.2.0/24) : |
||
1192 | <pre> |
||
1193 | ip route del 192.168.2.0/24 dev wlan0 table main |
||
1194 | ip route add 192.168.2.0/24 dev wlan0 table 4242 |
||
1195 | 1 | Pierre-Arnaud Poudret | </pre> |
1196 | Il ne reste plus qu'à activer le NAT sur l'interface tun0 du VPN et paf ! On fait un beau AP WiFi (vilainement naté) qui fournit une connexion Illyse. |