Projet

Général

Profil

AtelierNuitDebout » Historique » Version 3

Laurent GUERBY, 12/04/2016 17:46

1 1 Laurent GUERBY
{{>toc}}
2 1 Laurent GUERBY
3 1 Laurent GUERBY
h1. AtelierNuitDebout
4 1 Laurent GUERBY
5 1 Laurent GUERBY
Mise en place OpenWRT+OpenVPN pour partage de connection a travers un tunnel pour Nuit Debout place du capitole
6 1 Laurent GUERBY
7 1 Laurent GUERBY
h2. Technique
8 1 Laurent GUERBY
9 1 Laurent GUERBY
Prendre deux routeurs supportés par Linux ou OpenWRT, ici on a pris 2 TP-Link 740N v4
10 1 Laurent GUERBY
Flasher OpenWRT sur les deux routeurs, ici on a pris Chaos Chalmer 15.05.1
11 3 Laurent GUERBY
Ensuite sur les deux routeur mettre un mot de passe a root, desactiver le firewall, changer la plage d'ip sur le LAN pour eviter 192.168.1.* (conflits) connecter le port WAN a internet, puis ssh dessus
12 1 Laurent GUERBY
<pre>
13 1 Laurent GUERBY
# opkg update
14 1 Laurent GUERBY
# opkg install ip openvpn-nossl
15 1 Laurent GUERBY
# ip link show dev eth1 # noter l'adresse MAC
16 1 Laurent GUERBY
</pre>
17 1 Laurent GUERBY
18 1 Laurent GUERBY
h3. Serveur OpenVPN
19 1 Laurent GUERBY
20 1 Laurent GUERBY
Un des deux routeurs, le "serveur" va faire serveur OpenVPN, il va etre branché en filaire via son port WAN (bleu) sur la box de la personne qui va preter son addresse IP fixe (identité), ici la box tetaneutral.net de Mix'Art Myrys le PC "chaussette" avec comme IP publique IP_PUBLIQUE_BOX_PRETEUSE
21 1 Laurent GUERBY
22 1 Laurent GUERBY
Sur cette box il faut donner une IP fixe dans le LAN pour le routeur serveur (via MAC <=> IP dans DHCP), et rediriger sur cette IP LAN fixe un port UDP.
23 1 Laurent GUERBY
24 1 Laurent GUERBY
Editer /etc/rc.local en remplaçant PORT et IP_LAN par les bonnes valeurs :
25 1 Laurent GUERBY
26 1 Laurent GUERBY
<pre>
27 1 Laurent GUERBY
sleep 20
28 1 Laurent GUERBY
29 1 Laurent GUERBY
openvpn --mktun --dev-type tun --dev tunndb
30 1 Laurent GUERBY
ip link set tunndb up
31 1 Laurent GUERBY
openvpn --dev tunndb --dev-type tun --port PORT --verb 3 --proto udp --local IP_LAN --daemon --keepalive 10 60
32 1 Laurent GUERBY
ip addr add 10.0.111.1/24 dev tunndb
33 1 Laurent GUERBY
34 1 Laurent GUERBY
iptables -t nat -A POSTROUTING -s 192.168.111.0/24 -o eth1 -j MASQUERADE
35 1 Laurent GUERBY
ip route add 192.168.111.0/24 dev tunndb
36 1 Laurent GUERBY
37 1 Laurent GUERBY
</pre>
38 1 Laurent GUERBY
39 1 Laurent GUERBY
Puis redemarrer le routeur
40 1 Laurent GUERBY
41 1 Laurent GUERBY
h3. Client OpenVPN
42 1 Laurent GUERBY
43 1 Laurent GUERBY
L'autre routeur, le "client" va etre client OpenVPN, il va etre branché en filaire via son port WAN (bleu) sur la box d'un sympathisant pas loin du capitole.
44 1 Laurent GUERBY
45 1 Laurent GUERBY
Editer /etc/rc.local en remplacant IP_PUBLIQUE_BOX_PRETEUSE et PORT par les bonnes valeurs.
46 1 Laurent GUERBY
<pre>
47 1 Laurent GUERBY
sleep 10
48 1 Laurent GUERBY
49 1 Laurent GUERBY
openvpn --mktun --dev-type tun --dev tunndb
50 1 Laurent GUERBY
ip link set tunndb up
51 1 Laurent GUERBY
openvpn --dev tunndb --dev-type tun  --lport 0 --proto udp --daemon --remote IP_PUBLIQUE_BOX_PRETEUSE PORT --keepalive 10 60
52 1 Laurent GUERBY
ip addr add 10.0.111.2/24 dev tunndb
53 1 Laurent GUERBY
54 1 Laurent GUERBY
ip route add default dev tunndb table 31
55 1 Laurent GUERBY
ip route add 192.168.111.0/24 dev br-lan table 31
56 1 Laurent GUERBY
ip rule add iif br-lan table 31 prio 1000
57 1 Laurent GUERBY
58 1 Laurent GUERBY
</pre>
59 1 Laurent GUERBY
60 1 Laurent GUERBY
Mettre sur le LAN du routeur 192.168.111.1/24 et comme serveur DNS 10.0.111.1
61 1 Laurent GUERBY
62 1 Laurent GUERBY
Activer et configurer le wifi si besoin.
63 2 Laurent GUERBY
64 2 Laurent GUERBY
TODO: IPv6 si disponible, sinon supprimer par sécurité l'interface WAN6 du routeur.