Vpn doc user » Historique » Version 10
Baptiste Jonglez, 11/10/2014 17:40
1 | 8 | Baptiste Jonglez | h1. Configuration client 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 | |||
12 | |||
13 | h2. Linux (testé sous debian wheezy) |
||
14 | |||
15 | +/etc/openvpn/illyse.conf+ |
||
16 | <pre> |
||
17 | # C'est nous qui prenons l'initiative de nous connecter au serveur. |
||
18 | client |
||
19 | |||
20 | # On route de l'IP, on ne fait pas de l'ethernet. |
||
21 | dev tun0 |
||
22 | |||
23 | # si on ne reçoit pas d'IP pour tun0: |
||
24 | # - soit on configure l'interface avec des ip privées bidon |
||
25 | #ifconfig 10.255.255.1 10.255.255.2 |
||
26 | # - soit on utilise un script pour faire "ifconfig tun0 up" |
||
27 | #script-security 2 |
||
28 | #up up.sh |
||
29 | |||
30 | # Il est préférable d'utiliser udp, le résultat fonctionne mieux. Il est |
||
31 | # cependant notable que les restrictions d'accès Internet laissent souvent |
||
32 | # plus facilement passer tcp. Essayez donc udp, et seulement s'il ne fonctionne |
||
33 | # pas, essayez tcp. |
||
34 | |||
35 | # 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) |
||
36 | # 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. |
||
37 | #proto udp6 |
||
38 | proto udp |
||
39 | #proto tcp |
||
40 | |||
41 | # Certains réseaux ont en fait une MTU bien inférieure à 1450. Dire aux connexions |
||
42 | # TCP d'être très conservatives, pour que ça marche plus ou moins partout. |
||
43 | mssfix 1300 |
||
44 | # En UDP, on peut s'assurer que ça passe de toutes façons en fragmentant au besoin |
||
45 | # quand ça dépasse. |
||
46 | fragment 1300 |
||
47 | # Idéalement, ça devrait être détecté tout seul, mais c'est loin de toujours fonctionner... |
||
48 | #mtu-disc yes |
||
49 | |||
50 | # En udp, Prévenir le serveur quand on termine, permet de relancer |
||
51 | # immédiatement sans attendre que le serveur se rende compte de la |
||
52 | # déconnexion par timeout. |
||
53 | explicit-exit-notify |
||
54 | |||
55 | # L'adresse du serveur. |
||
56 | remote vpn.illyse.net 1194 |
||
57 | |||
58 | # Éventuellement, on peut avoir besoin de passer par un proxy http, décommenter cette ligne en mettant l'adresse et le port du proxy. |
||
59 | #http-proxy 192.0.2.1 8080 |
||
60 | |||
61 | # Attendre un peu avant d'ajouter les routes. |
||
62 | route-delay 2 |
||
63 | |||
64 | # Ne pas utiliser un port local statique, on est client de toutes façons. |
||
65 | nobind |
||
66 | |||
67 | # Garder la clé en mémoire, pour ne pas avoir besoin de la relire lors d'un |
||
68 | # redémarrage. |
||
69 | persist-key |
||
70 | # Ne pas tuer l'interface du tunnel lors d'un redémarrage. |
||
71 | #persist-tun |
||
72 | |||
73 | # Décommenter cette ligne pour faire passer tout le trafic via le VPN: |
||
74 | redirect-gateway def1 |
||
75 | |||
76 | # On peut aussi vouloir plutôt router seulement quelques destinations, par |
||
77 | # exemple ici tout Gitoyen: |
||
78 | #route 80.67.160.0 255.255.224.0 |
||
79 | |||
80 | 5 | Baptiste Jonglez | # Activer IPv6 dans le tunnel |
81 | 1 | Pierre-Arnaud Poudret | tun-ipv6 |
82 | 5 | Baptiste Jonglez | # et faire passer tout le trafic IPv6 via le VPN: |
83 | 1 | Pierre-Arnaud Poudret | route-ipv6 ::/1 |
84 | route-ipv6 8000::/1 |
||
85 | |||
86 | # Envoyer un login et un mot de passe. Pour éviter de taper à la main login |
||
87 | # et mot de passe, vous pouvez ajouter à droite de "auth-user-pass" le nom d'un |
||
88 | # fichier contenant ces deux informations, une par ligne. |
||
89 | auth-user-pass credentials |
||
90 | |||
91 | # Un minimum de debug, c'est toujours bien. |
||
92 | verb 3 |
||
93 | |||
94 | log-append /var/log/openvpn-illyse.log |
||
95 | |||
96 | # Certificat permettant de vérifier que c'est bien à Illyse que |
||
97 | # l'on se connecte et donc à qui on donne notre mot de passe. |
||
98 | remote-cert-tls server |
||
99 | <ca> |
||
100 | -----BEGIN CERTIFICATE----- |
||
101 | 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 |
||
137 | sjvtdavgLFaMPLPrI2DAcjpVMUuL1VgdqUcQkhc= |
||
138 | -----END CERTIFICATE----- |
||
139 | </ca> |
||
140 | </pre> |
||
141 | |||
142 | |||
143 | +/etc/openvpn/credentials+ |
||
144 | (Seulement si vous voulez stocker votre mot de passe. En clair. Oui, c'est moche.) |
||
145 | |||
146 | Spécifier login et mot de passe sur deux lignes différences. |
||
147 | |||
148 | <pre> |
||
149 | jkleboulet-vpn1 |
||
150 | omgsuchsecured123 |
||
151 | </pre> |
||
152 | |||
153 | |||
154 | 3 | Pierre-Arnaud Poudret | h3. Mise à jour automatique de resolv.conf |
155 | |||
156 | Pour que resolv.conf soit mis à jour par openvpn avec les IP des resolvers DNS Illyse poussées par le serveur VPN. |
||
157 | |||
158 | <pre> |
||
159 | <mit-mit> Bon, ça marche, faut ajouter à la config : |
||
160 | <mit-mit> script-security 2 |
||
161 | <mit-mit> up /etc/openvpn/update-resolv-conf |
||
162 | <mit-mit> down /etc/openvpn/update-resolv-conf |
||
163 | <mit-mit> et avoir resolvconf d'installé. |
||
164 | <mit-mit> (la première ligne étant l'autorisation de lancement de scripts externes) |
||
165 | </pre> |
||
166 | |||
167 | |||
168 | 1 | Pierre-Arnaud Poudret | h2. Windows XP |
169 | 2 | Pierre-Arnaud Poudret | |
170 | +C:\Program Files\OpenVPN\config\illyse\illyse.ovpn+ |
||
171 | <pre> |
||
172 | # C'est nous qui prenons l'initiative de nous connecter au serveur. |
||
173 | client |
||
174 | |||
175 | # On route de l'IP, on ne fait pas de l'ethernet. |
||
176 | dev tun0 |
||
177 | |||
178 | # si on ne reçoit pas d'IP pour tun0: |
||
179 | # - soit on configure l'interface avec des ip privées bidon |
||
180 | #ifconfig 10.255.255.1 10.255.255.2 |
||
181 | # - soit on utilise un script pour faire "ifconfig tun0 up" |
||
182 | #script-security 2 |
||
183 | #up up.sh |
||
184 | |||
185 | # Il est préférable d'utiliser udp, le résultat fonctionne mieux. Il est |
||
186 | # cependant notable que les restrictions d'accès Internet laissent souvent |
||
187 | # plus facilement passer tcp. Essayez donc udp, et seulement s'il ne fonctionne |
||
188 | # pas, essayez tcp. |
||
189 | |||
190 | #proto udp6 |
||
191 | proto udp |
||
192 | #proto tcp |
||
193 | |||
194 | # Certains réseaux ont en fait une MTU bien inférieure à 1450. Dire aux connexions |
||
195 | # TCP d'être très conservatives, pour que ça marche plus ou moins partout. |
||
196 | mssfix 1300 |
||
197 | # En UDP, on peut s'assurer que ça passe de toutes façons en fragmentant au besoin |
||
198 | # quand ça dépasse. |
||
199 | fragment 1300 |
||
200 | # Idéalement, ça devrait être détecté tout seul, mais c'est loin de toujours fonctionner... |
||
201 | #mtu-disc yes |
||
202 | |||
203 | #mtu-test |
||
204 | #link-mtu 1300 |
||
205 | #tun-mtu 1300 |
||
206 | |||
207 | # En udp, Prévenir le serveur quand on termine, permet de relancer |
||
208 | # immédiatement sans attendre que le serveur se rende compte de la |
||
209 | # déconnexion par timeout. |
||
210 | explicit-exit-notify |
||
211 | |||
212 | # L'adresse du serveur. |
||
213 | remote vpn.illyse.net 1194 |
||
214 | |||
215 | # Éventuellement, on peut avoir besoin de passer par un proxy http, décommenter cette ligne en mettant l'adresse et le port du proxy. |
||
216 | #http-proxy 192.0.2.1 8080 |
||
217 | |||
218 | # Pour windows: utiliser route.exe. |
||
219 | route-method exe |
||
220 | |||
221 | # Attendre un peu avant d'ajouter les routes. |
||
222 | route-delay 2 |
||
223 | |||
224 | # Ne pas utiliser un port local statique, on est client de toutes façons. |
||
225 | nobind |
||
226 | |||
227 | # Garder la clé en mémoire, pour ne pas avoir besoin de la relire lors d'un |
||
228 | # redémarrage. |
||
229 | persist-key |
||
230 | # Ne pas tuer l'interface du tunnel lors d'un redémarrage. |
||
231 | #persist-tun |
||
232 | |||
233 | #ip-win32 ipapi |
||
234 | |||
235 | # Décommenter cette ligne pour faire passer tout le trafic via le VPN: |
||
236 | 1 | Pierre-Arnaud Poudret | redirect-gateway def1 |
237 | 2 | Pierre-Arnaud Poudret | |
238 | 1 | Pierre-Arnaud Poudret | # On peut aussi vouloir plutôt router seulement quelques destinations, par |
239 | 2 | Pierre-Arnaud Poudret | # exemple ici tout Gitoyen: |
240 | #route 80.67.160.0 255.255.224.0 |
||
241 | |||
242 | 5 | Baptiste Jonglez | # Activer IPv6 dans le VPN |
243 | 2 | Pierre-Arnaud Poudret | tun-ipv6 |
244 | 5 | Baptiste Jonglez | # Faire passer tout le trafic IPv6 via le VPN: |
245 | 2 | Pierre-Arnaud Poudret | route-ipv6 ::/1 |
246 | route-ipv6 8000::/1 |
||
247 | |||
248 | # Envoyer un login et un mot de passe. Pour éviter de taper à la main login |
||
249 | # et mot de passe, vous pouvez ajouter à droite de "auth-user-pass" le nom d'un |
||
250 | # fichier contenant ces deux informations, une par ligne. |
||
251 | auth-user-pass credentials |
||
252 | |||
253 | # Un minimum de debug, c'est toujours bien. |
||
254 | verb 3 |
||
255 | |||
256 | #log-append /var/log/openvpn-illyse.log |
||
257 | |||
258 | # Certificat permettant de vérifier que c'est bien à Illyse que |
||
259 | # l'on se connecte et donc à qui on donne notre mot de passe. |
||
260 | remote-cert-tls server |
||
261 | <ca> |
||
262 | -----BEGIN CERTIFICATE----- |
||
263 | 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 |
||
299 | sjvtdavgLFaMPLPrI2DAcjpVMUuL1VgdqUcQkhc= |
||
300 | -----END CERTIFICATE----- |
||
301 | </ca> |
||
302 | </pre> |
||
303 | |||
304 | |||
305 | |||
306 | +C:\Program Files\OpenVPN\config\illyse\credentials+ |
||
307 | |||
308 | <pre> |
||
309 | jkleboulet-vpn1 |
||
310 | omgsuchsecured123 |
||
311 | </pre> |
||
312 | 4 | Fabien Michel | |
313 | h2. Mac OS X |
||
314 | |||
315 | Installer le client OpenVPN Tunnelblick : https://code.google.com/p/tunnelblick/ |
||
316 | |||
317 | Créer un fichier illyse.ovpn avec la configuration voulue. Celle indiquée ci-dessous fonctionne sans modification necessaire. |
||
318 | Double-cliquer sur le fichier afin que TunnelBlick import la configuration. |
||
319 | A la première connexion, il va demander un couple login/password qu'il sera possible de stocker dans le trousseau. |
||
320 | |||
321 | Paramètres modifiés par rapport à la configuration pour Linux : |
||
322 | * log-append : Ce paramètre n'est pas accepté. Mais tunnelblick log déjà en interne. |
||
323 | * 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 |
||
324 | * 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) |
||
325 | |||
326 | +illyse.ovpn+ |
||
327 | <pre> |
||
328 | client |
||
329 | dev tun0 |
||
330 | proto udp |
||
331 | mssfix 1300 |
||
332 | fragment 1300 |
||
333 | explicit-exit-notify |
||
334 | remote vpn.illyse.net 1194 |
||
335 | #http-proxy 192.0.2.1 8080 |
||
336 | route-delay 2 |
||
337 | nobind |
||
338 | |||
339 | persist-key |
||
340 | persist-tun |
||
341 | |||
342 | redirect-gateway def1 |
||
343 | #route 80.67.160.0 255.255.224.0 |
||
344 | |||
345 | tun-ipv6 |
||
346 | route-ipv6 ::/1 |
||
347 | route-ipv6 8000::/1 |
||
348 | |||
349 | auth-user-pass |
||
350 | verb 3 |
||
351 | |||
352 | remote-cert-tls server |
||
353 | <ca> |
||
354 | -----BEGIN CERTIFICATE----- |
||
355 | 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 |
||
388 | 1 | Pierre-Arnaud Poudret | LSVaB9OD7iVWkW5eo6ng3XA390HIUUtf/0IdtiCoMsjuZbVagfiaUu0kUJpR6d2k |
389 | r5czdLFhRu8uw0sWn1rMQXlUAqH0WAfoq8XinaHesWs5MEnvevjoUTkNhFnqe1Ra |
||
390 | rkwU9mzr1/N6GfpPalbveD0duTGAkJN5mwLZi+HZ4ctLgO1ShYFU/NbC7jNU3YCU |
||
391 | sjvtdavgLFaMPLPrI2DAcjpVMUuL1VgdqUcQkhc= |
||
392 | -----END CERTIFICATE----- |
||
393 | </ca> |
||
394 | 4 | Fabien Michel | |
395 | </pre> |
||
396 | 8 | Baptiste Jonglez | |
397 | 9 | Baptiste Jonglez | h1. Configurations avancées |
398 | 8 | Baptiste Jonglez | |
399 | 9 | Baptiste Jonglez | h2. Client sans IP montée sur le tunnel |
400 | 8 | Baptiste Jonglez | |
401 | 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. |
||
402 | 10 | Baptiste Jonglez | |
403 | h2. Utiliser simultanément la connexion normale et le VPN |
||
404 | |||
405 | 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). |
||
406 | |||
407 | 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). |
||
408 | |||
409 | 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. |
||
410 | |||
411 | 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 :) |
||
412 | (la configuration ci-dessous est similaire à http://multipath-tcp.org/pmwiki.php/Users/ConfigureRouting ) |
||
413 | |||
414 | +/etc/openvpn/up.sh+ |
||
415 | <pre> |
||
416 | #!/bin/bash |
||
417 | |||
418 | dev="$1" |
||
419 | tun_mtu="$2" |
||
420 | link_mtu="$3" |
||
421 | local_ip="$4" |
||
422 | remote_ip="$5" |
||
423 | |||
424 | # Routing table to use |
||
425 | table=4242 |
||
426 | |||
427 | # Source-specific routing: use the normal default route by default, |
||
428 | # but use the VPN for replying to packets coming from the VPN. |
||
429 | # IPv4 |
||
430 | [ -n "$local_ip" ] && ip rule add from "$local_ip" table "$table" && ip route add default dev "$dev" table "$table" |
||
431 | # IPv6 |
||
432 | [ -n "$ifconfig_ipv6_local" ] && ip -6 rule add from "$ifconfig_ipv6_local" table "$table" && ip -6 route add default dev "$dev" table "$table" |
||
433 | </pre> |
||
434 | |||
435 | +/etc/openvpn/down.sh+ |
||
436 | <pre> |
||
437 | #!/bin/bash |
||
438 | |||
439 | dev="$1" |
||
440 | tun_mtu="$2" |
||
441 | link_mtu="$3" |
||
442 | local_ip="$4" |
||
443 | remote_ip="$5" |
||
444 | |||
445 | table=4242 |
||
446 | |||
447 | # Delete table for source-specific routing. |
||
448 | [ -n "$local_ip" ] && ip rule del from "$local_ip" && ip route del default table "$table" |
||
449 | [ -n "$ifconfig_ipv6_local" ] && ip -6 rule del from "$ifconfig_ipv6_local" && ip -6 route del default table "$table" |
||
450 | |||
451 | exit 0 |
||
452 | </pre> |
||
453 | |||
454 | +/etc/openvpn/illyse.conf+ |
||
455 | <pre> |
||
456 | ## Configuration VPN Illyse pour accepter des connexions entrantes |
||
457 | ## à la fois via le VPN et via la connexion normale, grâce au policy routing (Linux uniquement) |
||
458 | ## https://www.illyse.org/projects/publicdocs/wiki/Vpn_doc_user#Utiliser-simultanément-la-connexion-normale-et-le-VPN |
||
459 | |||
460 | # Gestion des routes via des scripts externes. |
||
461 | script-security 2 |
||
462 | up up.sh |
||
463 | down down.sh |
||
464 | |||
465 | |||
466 | # Reste de la configuration normale. |
||
467 | # Penser à enlever "redirect-gateway" et "route-ipv6", on gère les |
||
468 | # routes via up.sh et down.sh |
||
469 | client |
||
470 | remote vpn.illyse.net 1194 |
||
471 | #http-proxy 192.0.2.1 8080 |
||
472 | dev tun0 |
||
473 | |||
474 | #proto udp6 |
||
475 | proto udp |
||
476 | #proto tcp |
||
477 | explicit-exit-notify |
||
478 | |||
479 | mssfix 1300 |
||
480 | fragment 1300 |
||
481 | |||
482 | route-delay 2 |
||
483 | nobind |
||
484 | persist-key |
||
485 | persist-tun |
||
486 | |||
487 | tun-ipv6 |
||
488 | |||
489 | auth-user-pass credentials |
||
490 | |||
491 | verb 3 |
||
492 | log-append /var/log/openvpn-illyse.log |
||
493 | |||
494 | # Certificat permettant de vérifier que c'est bien à Illyse que |
||
495 | # l'on se connecte et donc à qui on donne notre mot de passe. |
||
496 | remote-cert-tls server |
||
497 | <ca> |
||
498 | -----BEGIN CERTIFICATE----- |
||
499 | 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 |
||
535 | sjvtdavgLFaMPLPrI2DAcjpVMUuL1VgdqUcQkhc= |
||
536 | -----END CERTIFICATE----- |
||
537 | </ca> |
||
538 | </pre> |