L’histoire des gros cailloux racontée par le professeur

Un jour un vieux professeur remplit de sagesse s’adresse à ses élèves. Le vieux prof leur dit : « Nous allons réaliser une expérience » .

Il prit un grand pot, qu’il posa délicatement en face de lui. Ensuite il prit une douzaine de cailloux qu’il mit dans le grand pot. Lorsque le pot fut rempli jusqu’au bord, il demanda : « est-ce que le pot est plein ? »

Tous répondirent : « oui ».

« Vraiment ? ».

Alors il prit un récipient rempli de graviers. et versa ce gravier sur les gros cailloux puis remua le pot. Les graviers s’infiltrèrent entre les gros cailloux jusqu’au fond du pot. Le vieux prof demanda encore : « est-ce que le pot est plein ? »

L’un des élèves répondit : « probablement pas ! »

« Bien » dit le professeur.

Il prit alors un bac de sable qu’il versa dans le pot. Le sable alla remplir les espaces entre les gros cailloux et le gravier. Encore une fois il demanda : « est-ce que le pot est plein ? »

Cette fois, sans hésiter, les élèves répondirent « Non ! ».

« Bien ! » dit le vieux prof.

Il prit alors un pichet d’eau et remplit le pot jusqu’à ras bord. Le vieux prof demanda finalement : « Quelle grande vérité nous démontre cette expérience ? »

Un des élèves, songeant au sujet du cours, répondit : « cela démontre que, même lorsqu’on croit que notre agenda est complètement rempli, si on veut vraiment, on peut y ajouter plus de rendez-vous, plus de chose à faire ».

« Non, dit le vieux prof, ce n’est pas cela ! la grande vérité que nous montre cette expérience est la suivante : si on ne met pas les gros cailloux en premier dans le pot, on ne pourra jamais les faire entrer tous. »

J’ai découvert cette histoire pendant une bonne dépression due au travail.

Alors effectivement, je me suis posé la question de « Quels sont mes gros cailloux ».

Et non, ce n’était pas le boulot.

Cette liste de gros cailloux est plutôt classique. Même si elle a changé depuis que je l’ai établie.

Les gros cailloux sont mes enfants, ma chérie, mes ami(e)s proches …

Ce qui a énormément changé, c’est la liste des cailloux plus petits, ainsi que le sable et l’eau.

Il FAUT l’adapter à la vie. Les cailloux plus petits sont maintenant mes loisirs, mes amis.

Le sable, c’est mon boulot.

L’eau c’est … j’en sais rien. Je ne crois pas en avoir en fait.

Guidon Wink Bar

Je vais pas me mentir à moi même, je suis un geek. Donc quand j’entends parler d’un objet connecté, j’ai un sourcil qui se lève façon Spock.

En l’occurrence, ma société a participé à la campagne de financement participative pour le guidon Wink bar de Velco Bikes. Et donc, ils nous ont proposés de tester la bête pour 15 jours.

je l’ai récupéré Mercredi 28 août, pour un peu plus de 15 jours donc. Le montage est relativement rapide, même si il faut faire attention à quelques points :

  • Le guidon fait 31,8 mm de diamètre et nécessite donc une potence adaptée.
  • Le guidon est TRES large, il faudra adapter la longueur des gaines et câbles freins sinon vous aurez des mauvaises surprises en tournant le guidon
  • L’embout droit du guidon est en plastique et peut se désolidariser du guidon en enlevant une vis Torx (question : mais qu’est ce que ça cache ?). Serrer une poignée sur cet embout fait que la poignée tourne légèrement sur elle-même. Aussi, il faut préférer les poignées qui se serrent des deux côtés, ou qui se serrent du côté le plus proche de la potence.

Au chapitre des inconvénients, pour l’instant j’en vois un : le câble qui sert à la recharge du guidon quand celui-ci est monté sur un VAE. Ce câble n’est pas amovible, il n’y a aucune prise pour le débrancher. La solution serait donc de le couper mais si jamais un jour on achète un VAE, on se prive de la possibilité de le recharger via la batterie du VAE.

Alors que faire ? Pour ma part, considérant que j’ai le guidon uniquement pendant 15 jours, j’ai fait le choix d’enrouler le câble autour du guidon et de la potence, mais ce n’est pas particulièrement pratique si je devais avoir le guidon plus longtemps.

 

Montage

Le montage initial du guidon m’a pris 20 minutes sans trop forcer. On démonte les différentes poignées et manettes du guidon actuel du vélo, on desserre la potence et on monte l’ancien. On remet ensuite les manettes et poignées.

Cependant, les premiers kilomètres ont été surprenants, je n’avais pas fait attention à la longueur des câbles de freins, et surtout des gaines : en tournant un peu trop le guidon vers la droite, la roue arrière se bloquait.

Le lendemain, j’ai donc remis le vélo sur le pied d’atelier pour changer les gaines et les câbles, et c’est quand même 10x mieux 🙂

 

Utilisation courante

Le guidon est très confortable à utiliser. Je n’avais jamais trop roulé avec un cintre moustache, étant habitué aux modèles route et droits.

Au final, la position est agréable et permet de mieux voir la route.

 

Utilisation connectée

Je ne vais pas le cacher, c’est quand même un des points intéressants de ce guidon.

Déjà, il est pourvu de deux petits voyants qui s’allument dès que le guidon se réveille. Ça ne remplace pas un bon éclairage (on est à deux fois sept lux hein), mais ça permet un minimum de visibilité avant que le phare dynamo se réveille. Et surtout, toute lampe supplémentaire qui s’allume permettra d’être mieux vu et c’est toujours bon à prendre.

L’application mobile (dans mon cas sous Android) est pratique à utiliser.

 

Elle permet de régler le comportement des leds du guidon, et d’accélérer son extinction quand on s’éloigne du vélo.

Et surtout, elle permet de démarrer une session de

Navigation

Le guidon affiche une série de voyants visibles du cycliste. Ceux-ci vont s’allumer de différentes façons, selon les instructions de navigation :

L’application est très bien faite sur ce point. Un tutoriel est intégré et allume les différentes Led en fonction de l’instruction (tournez à gauche, à droite, prenez la 4ème sortie au rond point, etc etc)

Par contre, un des points noir de cette application, c’est le routage. Elle est en mode « distance minimale ». Celle-ci vous proposera de vous faire passer pas un chemin à travers champs, par une venelle étroite, et autres voies qui ne sont pas forcément propres à la circulation à vélo, du moins quand on veut arriver à destination sans passer sous la douche et se changer.

 

C’est pas nous

Aaaah ça, en ces temps de révolte contre le gouvernement sur le thème du prix du carburant, on entend et on lit souvent cette phrase, sous différentes formes :

C’est pas nous c’est les industries
C’est pas nous c’est les portes containers
C’est pas nous c’est les avions
C’est pas nous c’est les paquebots
C’est pas nous c’est les camions

C’est l’excuse facile : que les autres qui sont pires commencent par changer. Or, quand va-t-on se rendre compte qu’en fait, les autres, c’est nous ?
C’est nous qui achetons les produits des industries.
C’est nous qui nous déplaçons en avion, en paquebot, la plupart du temps pour les loisirs.
C’est nous qui achetons les produits transportés par les portes containers, les camions.

Et si on arrêtait d’acheter des produits qui font le tour de la Terre avant d’arriver entre nos mains ?

Si il n’y a plus de besoin de transporter des biens, les camions, avions et porte containers tant décriés arrêteront de circuler, et les industries polluantes qui fabriquent ces biens arrêteront de fonctionner.

Bref, c’est QUAND MEME bien nous qui sommes fautifs, notre mode de vie EST la cause de cette consommation d’énergies fossiles.

La transition énergétique

Soyons clair, nous ne pourrons jamais nous passer de pétrole. Nous en avons besoin pour autre chose que pour se déplacer.

Le plastique et ses produits dérivés sont fabriqués à partir de pétrole.

le recyclage étant ce qu’il est, il faudra toujours refabriquer du plastique, même dans le monde idéal où tout le plastique est recyclé, et rechercher de nouveaux matériaux, pourquoi pas à partir de pétrole.

Mais une chose est sûre, l’humanité ne peut plus dépendre uniquement du pétrole comme elle le fait à l’heure actuelle.

Alors quoi ?

Trouver de nouvelles sources d’énergie est primordial. Et j’insiste bien sur le pluriel : on ne pourra pas se satisfaire d’une seule source d’énergie (et pour rappel, l’électricité n’est pas une énergie, c’est un vecteur de transport de l’énergie)

Ces énergies peuvent être :

la bio masse
Le vent
Le soleil
La géothermie
Le nucléaire


Et d’autres sources d’énergie qui restent à découvrir.

Notez que j’écarte le pétrole de ces énergies potentielles.

Velui-ci se raréfiant, il faudra de toutes les façons s’en passer comme source d’énergie, quelque soit son but : se chauffer ou se déplacer.

Et alors ?

Et alors, comment on fait pour vivre ?

Bah on recycle, on adapte, on répare, on arrête de surconsommer des produits électroniques.

Plutôt que de râler parce que l’électricité et le gaz augmentent, on en consomme moins.

On se fait violence et on sort de notre zone de confort.

On achète de la nourriture produite localement, si possible chez le producteur du coin pour éviter de se fournir dans les GMS qui font faire le tour de la Terre aux produits qu’elles nous vendent. 

On s’entraide, on se soutient mutuellement. On mutualise nos compétences. Je répare et révise les vélos de mes enfants, de ma chérie, de mon ex femme, et d’ami(e)s (en achetant l’équipement nécessaire chez mon vélociste local). Ça permet à ceux qui le souhaitent de rouler, quelque soit leurs motivations. Et ça me va très bien.

Bref, on contourne le système actuel, sans nous endormir sur nos lauriers car dans 30 ans, il faudra recommencer … Il faut qu’on arrête de s’endormir sur nos lauriers et penser que notre mode de vie est acquis. Les générations futures nous jugeront sévèrement pour leur avoir laissé une poubelle à ciel ouvert en guise de planète.

On doit agir, et on doit agir maintenant. Demain, il sera trop tard.

VPN, Turris Omnia et sécurité …

Après quelques avertissements pendant que je télécharge mes séries sur Internet, j’ai décidé de mettre en place une solution me permettant de profiter de Sheldon et Leonard sans risquer d’amende où autre désagrément.

J’ai pris un abonnement à FastestVPN, ça fait le job même si c’est pas démentiel. L’avantage est que l’accès à vie était à 39$ au moment où j’ai souscrit.

Maintenant, il reste à configurer ça sur le Turris. Bien entendu, le firmware du Turris supporte déjà transmission-daemon et openvpn en tant que client ou serveur.

Mais je suis partisan de laisser le routeur router. Donc j’ai installé un container LXC dessus, hébergé sur un disque dur de 1To raccordé en USB au routeur.

Une fois le container déployé, je lui donne une adresse IP fixe sur mon réseau, et j’installe les paquets nécessaires :

apt install transmission transmission-daemon openvpn wget tcpdump nfs-common ssh iptables iptables-persistent dnsutils inetutils-ping

(comme vous pouvez le constater, le template LXC pour Debian est un peu léger en outils préinstallés, ce qui me convient très bien)

Le paquet nfs-common est là pour gérer un éventuel montage NFS si vous souhaitez stocker les fichiers téléchargés en dehors du container. Ici, je ne m’en sers pas.

Les paquets iptables et iptables-persistent sont là pour une bonne raison : une connexion VPN PEUT tomber et vous exposer.

Aussi, les quelques règles suivantes permettent de s’assurer que SEUL le trafic vers le VPN est autorisé à sortir de votre réseau :

iptables -A INPUT -i eth0 -s 192.168.10.0/24 -j ACCEPT
iptables -A INPUT -i tun0 -j ACCEPT iptables -A OUTPUT -o eth0 -p udp –destination-port 4443 -j ACCEPT
iptables -A OUTPUT -o eth0 -d 192.168.10.0/24 -m state –state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o eth0 -j DROP
iptables -A OUTPUT -o tun0 -j ACCEPT

Deux choses concernant ce script :

L’adresse IP de mon container Debian est dans le sous réseau 192.168.10.0/24

Le port udp/4443 est celui FastestVPN mais là encore, tout dépend de votre fournisseur

Une fois que vous aurez exécuté ces quelques commandes, TESTEZ ! gardez vous un accès console sur la machine, ces règles fonctionnent pour moi mais je ne garantis pas que ça fonctionnera pour vous.

Tapez ensuite la commande iptables-save pour sauvegarder les règles et les rendre persistantes au redémarrage.


Turris Omnia

Ayant déménagé il y’a maintenant presque un an, je me retrouve avec un abonnement ASDL à 2Mb/s via une livebox play. Quand on a deux ados à la maison, c’est peu. Trop peu.

Propriétaire d’un routeur Asus RTAC68U, et titulaire d’un abonnement Free 100Go en 4G, j’ai essayé de les paramétrer ensemble. Peine perdue. L’interface de management ne voit pas le routeur Huawei que j’utilise, et en utilisant un téléphone Android (ce qui est censé être compatible), le lien ne monte pas.

J’ai donc monté une usine à gaz à base de Raspberry pi 3, mais ce n’était guère stable et surtout très peu pratique à administrer. Par ailleurs, ce n’était pas très souple : tout passait par l’abonnement 4G, et avec un ado friand de Youtube, ce n’était pas une idée géniale.

J’ai donc cherché une meilleure solution, et suite à une série de toots visible sur Mastodon, j’ai découvert le routeur Turris Omnia.

Le but de cet article n’est pas de faire une présentation dans le détail du routeur, je vous encourage à visiter le blog (excellent) de Stephane Bortzmeyer, qui l’a fait bien mieux que moi.

Je vais juste m’attacher à détailler mon installation, pourquoi et comment j’en suis arrivé là.

Commande passée sur Amazon, j’en profite pour acheter aussi un SSD mSata de 120Go, le routeur permettant de base de gérer des containers LXC. Cela permet d’ajouter des services supplémentaires sur le routeur sans pour autant impacter le système de base, qui continue à faire ce pourquoi il est prévu à la base : router et filtrer le trafic. J’y reviendrai.

Premier point, quand on reçoit le routeur et qu’on veut installer le SSD : le port mSata est déjà occupé par la carte Wifi 2,4 Ghz. Il faut donc retirer la carte et l’installer sur le port libre, et installer le SSD. Cela nécessite de démonter entièrement la carte mère, afin de démonter les entretoises et les remonter correctement.

une fois cela fait, on démarre le routeur et on le paramètre. On est sur du routeur OpenWrt classique, l’interface Luci est accessible sans problèmes. Sinon, le SSH et vi fonctionnent très, très bien 🙂

L’intérêt de ce genre de routeurs, c’est qu’il est possible d’utiliser d’autres modems que celui fourni par l’opérateur. Par contre, on perd une bonne partie du support, et je pense qu’il faut garder le modem/routeur opérateur pour tester en cas de dysfonctionnement. Ainsi, en plus du Turris Omnia, j’ai investi dans un modem DLink DSL-320B, qui, étant un vrai modem, permet de faire gérer l’adresse IP de mon abonnement Orange/sosh directement par le Turris Omnia. L’ado voulant accéder à ses serveurs Minecraft depuis chez sa mère, cela m’évite le cauchemar de la mise en place d’un double NAT, vu que je chaine deux routeurs.

Le paramétrage dans le Turris est simple, du moins quand on sait à peu près comment marche un routeur. Le paramétrage du DLink est très simple, l’assistant de configuration étant facile à suivre. Par contre, on est bien sur un modem … Donc il ne faut SURTOUT PAS oublier de paramétrer les logins et mot de passe de la connexion Orange dans le Turris. Ce n’est PAS comme une freebox ou, même en mode bridge, celle-ci envoi directement l’accès Internet au premier qui fait une requête DHCP sur un des ports réseaux … j’ai perdu 30 minutes dans l’histoire, ça aurait pu être pire.

Routage avancé

Ensuite, on paramètre l’accès 4G Free sur ce routeur. Utilisateur un Huawei E5272 (donc un routeur WIfi 4G avec un port USB), il faut installer aussi un petit module supplémentaire (kmod-usb-net-huawei-cdc-ncm) sur le routeur afin que celui-ci puisse reconnaitre le Huawei.

On envoi la route par défaut sur la 4G Free, ça permet de profiter du débit 4G (une bête case à cocher dans l’interface Luci). MAIS, les ados voulant toujours regarder Youtube, on souhaite pouvoir faire passer ces flux par l’accès ADSL. Cela nécessite un petit script :

#!/bin/bash
set -x
CURRENTROUTE=/tmp/currentroute
FUTUREROUTE=/mnt/log/futureroute
Orange_gateway=$( ifconfig -a pppoe-wan | grep inet | awk '{print $2}' | awk -F ':' '{print $2}')

# Generate the routes from google's DNS

dig @8.8.8.8 TXT _netblocks{,2,3}.google.com | tr ' ' '\n' | grep '^ip4:' | sed 's/ip4://'| sort > ${FUTUREROUTE}

diff ${CURRENTROUTE} ${FUTUREROUTE}

DIFFERENT=$?

if [ ${DIFFERENT} -gt 0 ]; then

# Flush the old routes

for route in $(cat ${CURRENTROUTE}) ; do
 ip route del ${route} via ${Orange_gateway}
 done

# Add the current ones

for route in $(cat ${FUTUREROUTE}) ; do
 ip route add ${route} via ${Orange_gateway}
 done

fi

mv ${FUTUREROUTE} ${CURRENTROUTE}

# Source routing to force a particuliar IP address to use the Orange ISP

ip rule add from 192.168.10.7/255.255.255.255 table 200
ip route add default via ${Orange_gateway} dev pppoe-wan table 200
ip route flush cache

 

Comme vous le notez, ce script est loin d’être parfait. Mais pour l’instant, il suffit à mon utilisation. Il est découpé en deux parties : le routage via Orange de Google (routage par destination) et le routage de certaines IP via Orange (routage par source).

une fois que le script est enregistré dans un chemin où il ne sera pas perdu (je l’ai mis sur le SSD pour ma part), on ajoute son lancement dans le fichier /etc/rc.local, afin de s’assurer qu’il est bien lancé à chaque reboot.

Containers

Déjà, un container, c’est quoi ? C’est un moyen d’isoler une application ou un système. Ce n’est pas réellement de la virtualisation au sens Vmware, Hyper-V, Xen ou que sais-je encore.

Le système « containarisé » tourne à côté de l’OS de son hôte, il est simplement cloisonné. C’est un jail Freebsd quoi.

Afin d’éviter de changer les fichiers de configuration de Turria (j’ai moyennement confiance dans leur processus de mise à jour qui me ferait sauter les changements), j’ai simplement créé un lien symbolique vers /mnt/lxc, qui contiendra tous mes containers.

L’interface de gestion de containers est bien faite, déployer un nouveau container n’est pas très compliqué.

Ensuite, le container s’administre comme un système tout à fait standard. Il faut bien penser à lui donner une adresse IP fixe si on ne veut pas galérer. Si vous avez un serveur DHCP sur votre réseau (Le turris, ou autre), le container prendra une adresse IP variable au démarrage, à vous ensuite de vous y connecter par SSH pour fixer sa configuration réseau.

Conclusion (temporaire)

En conclusion temporaire, le Turris Omnia est un très bon routeur, bien fini et rempli de fonctionnalités. Ceci dit, son firmware ne le met pas à la portée de n’importe qui, il est possible de faire énormément de choses avec mais il faut maitriser SSH et vi (ou nano, je ne suis pas sectaire). Et même pour les admins Unix/Linux chevronnés, il y’a quand même quelques spécificités, le répertoire /etc/config n’étant pas le moyen habituel de configurer une distribution Linux, quel qu’elle soit. L’avantage de l’Omnia est qu’il est basé sur de l’OpenWrt, distribution spécialisée qui dispose d’une énorme quantité de documentation. Il est donc aisé de faire à peu près tout ce qu’on veut sur le routeur.

Configuration d’une passerelle Linux pour accéder au VPN Ovh

Annoncée le 12 avril en version bêta par Octave himself, l’offre VPN OVH pour les particuliers est très intéressante :

débit symétrique de 10 Mbps

Support jusqu’à 3 clients (premier client à 5 € HT par mois puis 1 € HT par client supplémentaire)

Basé sur IPSec donc standard du marché utilisable partout et par toutes les plateformes, même les plus exotiques (Windows Phone …. )

 

Si les tutoriaux disponibles sur le site sont clairs et expliquent la procédure à suivre pour configurer le VPN sur un terminal client, ce post de blog a pour ambition d’expliquer comment faire pour configurer ce VPN sur une passerelle Linux, pour en faire profiter l’ensemble des terminaux raccordés dans la maison (TV connectées, lecteurs bluray, and so on … )

NB : les commandes sont celles utilisées par Debian, parce que c’est ce qui tourne sur mon routeur

On commence par installer les paquets nécessaires :

root@proxy:~# aptitude install vpnc vpnc-scripts
The following NEW packages will be installed:
vpnc
0 packages upgraded, 1 newly installed, 0 to remove and 16 not upgraded.
Need to get 95.5 kB of archives. After unpacking 258 kB will be used.
Get: 1 http://ftp.fr.debian.org/debian/ wheezy/main vpnc amd64 0.5.3r512-2 [95.5 kB]
Fetched 95.5 kB in 0s (212 kB/s)
Selecting previously unselected package vpnc.
(Reading database … 101409 files and directories currently installed.)
Unpacking vpnc (from …/vpnc_0.5.3r512-2_amd64.deb) …
Processing triggers for man-db …
Setting up vpnc (0.5.3r512-2) …

On attend ensuite impatiement le mail confirmant l’inscription, qui arrive au bout de quelques minutes :

support@ovh.com
8:34 AM (9 minutes ago)

to me

OVH – http://www.ovh.com
2 rue Kellermann
BP 80157
59100 Roubaix

Bonjour,

Nous vous confirmons l’activation de votre compte VPN chez OVH.

Vos informations de connexion groupe sont les suivantes :

– Serveur / Adresse / Passerelle : 111.222.123.234

– Groupe / Identifiant IPsec : gyyyy.vpn
– Clé partagée / PSK / Mot de passe IPsec : nonmaisvouscroyezquejevaismettrelevraimotdepasse?

Vos informations d’utilisateur sont les suivantes :

– Nom d’utilisateur : user1@gyyy.vpn
– Mot de passe : xxxxxxxxxx
Vous trouverez de l’aide pour la configuration sur différentes plateformes sur nos guides :
– Windows : http://www.ovh.fr/g1052.vpn-ovh-configuration-windows
– Mac OS : http://www.ovh.fr/g1045.vpn-ovh-configuration-mac
– Linux : http://www.ovh.fr/g1046.vpn-ovh-configuration-linux
– iOS : http://www.ovh.fr/g1047.vpn-ovh-configuration-ios
– Android : http://www.ovh.fr/g1048.vpn-ovh-configuration-android
– BalckBerry : http://www.ovh.fr/g1049.vpn-ovh-configuration-blackberry

RAPPEL des conditions de l’essai gratuit du VPN OVH :
– Accès gratuit activé pour une durée de 1 mois maximum
– IPv4 fixe publique dédiée Française
– Compte pour 1 utilisateur
– Service et infrastructure soumis à modifications sans avis préalable

Cordialement,

L’équipe OVH

Pendant la phase de Bêta gratuite, vous pouvez nous contacter et partager vos avis ou questions via notre mailing-liste vpn@ml.ovh.net
Inscrivez-vous en envoyant un e-mail à : vpn-subscribe@ml.ovh.net

Cordialement,

Support Client OVH
Support Technique : 08.99.49.87.65 (1,349 Euro/appel + 0,337 Euro/min)
Support Commercial : 08.20.69.87.65 (Numéro Indigo 0,118 Euro/min)
Fax : 03.20.20.09.58
E-mail : support@ovh.com
Du lundi au vendredi : 8h00 – 20h00
Le samedi :            9h00 – 17h00

On crée le fichier de configuration (default.conf, on se fait pas ch.er) :

#IPSec gateway <gateway>
#IPSec ID <group-id>
#IPSec secret <group-psk>
#IKE Authmode hybrid
#Xauth username <username>
#Xauth password <password>
IPSec gateway 111.222.123.234
IPSec ID gyyy.vpn
IPSec secret nonmaisvouscroyezquejevaismettrelevraimotdepasse?
#IKE Authmode hybrid
Xauth username user2@gyyy.vpn
Xauth password pisquoiencore?

On lance ensuite la connexion :

root@proxy:~# vpnc default.conf
VPNC started in background (pid: 12511)…

On ajoute ensuite ceci dans le firewall du Linux :

VPN=’tun1′

#VPNERIES
${IP4T} -t nat -A POSTROUTING -o ${VPN} -j MASQUERADE

Pour n’autoriser que google (au hasard) à passer par le VPN :

On commence par noter la passerelle par défaut habituelle (ou pas … )

Une fois que la connexion au VPN est établie, VPNC remplace la route par défaut poru que tout le trafic passe par le VPN.

On supprime donc la route :

route del default dev tun0

On refait la configuration DHCP de notre box (afin de récupérer la default gateway, je suis un gros flemmard) :

dhclient eth0.200

On ajoute ensuite les routes vers les 2 /16 que je connais de Google :

route add -net 74.125.0.0 netmask 255.255.0.0 dev tun0

route add -net 173.194.0.0 netmask 255.255.0.0 dev tun0

 

 

 

Youtube & Free

Free a des problèmes de peering avec Google. C’est indéniable.

Free ne veut pas payer l’upgrade des lignes et supporter les modifications de trafic due à Google. C’est normal, c’est comme ça que fonctionne Internet depuis le début.

Ceci dit, c’est quand même nous, les utilisateurs, qui somment lésés car il est impossible d’aller sur Youtube le soir, et quasiment impossible d’y aller en journée.

Alors la solution, c’est de changer d’opérateur ? Que nenni …

On peut commencer par utiliser une des offres VPN qui pullulent, et dont ce n’est pas le but premier, mais on ne va pas s’attacher à des détails.

On peut aussi, quand on a loue déjà un serveur dédié chez OVH, installer un petit openvpn dessus, et l’utiliser ensuite pour surfer sur Youtube.

C’est ce que j’ai fait.

Je passerais sur la configuration de base de l’openvpn, c’est très bien détaillé dans différents sites sur Internet.

Cependant, j’y ai ajouté une couche de difficulté supplémentaire, qui est de faire en sorte que le serveur ne prenne en charge QUE le trafic vers Google.

Il suffit d’ajouter quelques lignes dans le fichier de configuration Openvpn :

push "route 74.125.0.0 255.255.0.0"
push "route 173.194.0.0 255.255.0.0"

Bon, vous allez me dire que si l’utilisateur est malin (et il le sera !) il peut tripoter la configuration de sa bécane pour qu’elle route TOUT son trafic via le VPN, risquant ainsi de faire passer des flux peu recommandable.

C’est pour cela que la configuration d’iptables sur le serveur VPN est un poil plus complexe :

#!/bin/bash
set -x

# Ressetting Firewall
iptables -F
iptables -t nat -F
iptables -X LOGGING

# Known networks
VPN="10.8.0.0/24"
GOOGLE="74.125.0.0/16,173.194.0.0/16"

# Interfaces
IFACE="eth0"
VFACE="tun0"

#Creating a LOGGING table for dropped packets

iptables -N LOGGING
iptables -A LOGGING -m limit --limit 60/min -j LOG --log-prefix "IPTables-Dropped: " --log-level 4
iptables -A LOGGING -j DROP

# Allow traffic initiated from VPN to access "the world" only if destination is a Google address

iptables -A FORWARD -i ${VFACE} -o ${IFACE} -s ${VPN} -d ${GOOGLE} -m conntrack --ctstate NEW -j ACCEPT
iptables -A FORWARD -j LOGGING

# Allow established traffic to pass back and forth

iptables -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

# Masquerade traffic from VPN to "the world" -- done in the nat table

iptables -t nat -A POSTROUTING -s ${VPN} -d ${GOOGLE} -o ${IFACE} -j MASQUERADE

Commentaires ouverts, lâchez vous.

 

 

Sandisk RescuePro et mac OS Snow leopard et supérieur.

Bon, si vous êtes comme moi et que vous manipulez de la Compact Flash à longueur de journée, il a du vous arriver ce gag éculé ou vous formatez la mauvaise carte. Vous savez, celle qui contient les photos du mariage ou vous êtes payés 2500 € la journée.

Si vous êtes comme moi, vous avez une large réserve de cartes. Vous arrêtez donc d’utiliser la carte et la rangez en lieu TRES sûr.

De retour chez vous, vous cherchez désespérément un utilitaire pour vous sortir de ce faux pas.

Vous vous souvenez alors que vous aviez un papier dans l’emballage de la carte Sandisk que vous aviez achetés juste avant le mariage.

Vous téléchargez le logiciel et patatra, celui-ci ne se lance pas. Si comme moi, vous utilisez Mac OS 10.6 ou supérieur, il faut savoir que par défaut, tout ce qui est issu d’internet est en quarantaine. Malheureusement, le lanceur de RescuePro étant différent de l’exécutable réel, le système de quarantaine est perdu.

Une simple commande vous sauvera la vie :

xattr -d -r com.apple.quarantine /Users/oupsman/Applications/RescuePRO\ Deluxe/rp

Ne me remerciez pas, c’est normal. J’ai juste passé 2h sur ce problème à la con. Et non, pas de mariée attendant impatiemment ses photos, juste l’envie d’avoir une assurance en cas de problème de carte mémoire sur un shoot projetallegories.

Freebox V5 en mode bridge, boitier HD et NAS

Quand on a un setup pas simple, on assume !

Etant donné que les gosses surfent sur Internet avec leur DSi XL, j’ai un routeur Linux (mono interface, j’y reviendrais) qui me sert donc de proxy filtrant.

La freebox est en donc en mode bridge. Ce qui pose un problème, dans le sens ou l’uPnP ne passe plus, du moins sans configurer correctement le routeur.

Il faut installer les démons permettant de faire le routage multicast, et proxy uPnP. Sur une debian :

aptitude install smcroute linux-igd

On configure ensuite linux-igd en modifiant le fichier de configuration pour qu’il reflète notre installation.

On ajoute ensuite une route statique multicast :

smcroute -a eth0 192.168.10.246 239.255.255.250 eth0.200

On autorise l’igmp sur le firewall en ajoutant la ligne suivante à notre script firewall.sh :

iptables -A INPUT -p igmp -j ACCEPT

On autorise ensuite le firewall à router les paquets à destination de 239.255.255.250 :

iptables -A FORWARD -i eth0.200 -d 239.255.255.250 -j ACCEPT

Problème : les paquets uPnP sont envoyés avec un TTL à 1 (ie : ça correspond au nombre de sauts que peut faire le paquet, c’est à dire un).  C’est insuffisant pour traverser le routeur. On va donc utiliser la table mangle d’iptable pour modifier les paquets entrant par l’interface interne. Pour cela :

iptables -t mangle -A PREROUTING -i eth0 -d 239.255.255.250 -j TTL –ttl-inc 1

Un reboot du boitier HD et quelques minutes plus tard, le boitier HD voit bien le NAS et peut naviguer dessus. On vient dans un tcpdump que c’est freeplayer.freebox.fr qui accède au NAS (d’ou l’absence de modification de TTL sur les paquets transitant par le NAS) :

18:18:01.467680 IP 192.168.10.246.50002 > freeplayer.freebox.fr.59741: Flags [.], seq 1029873:1047397, ack 82, win 1448, options [nop,nop,TS val 931499 ecr 884835], length 17524
18:18:01.467898 IP 192.168.10.246.50002 > freeplayer.freebox.fr.59741: Flags [.], seq 1047397:1058181, ack 82, win 1448, options [nop,nop,TS val 931499 ecr 884835], length 10784
18:18:01.511466 IP freeplayer.freebox.fr.59741 > 192.168.10.246.50002: Flags [.], ack 1058181, win 5954, options [nop,nop,TS val 884846 ecr 931499], length 0
18:18:01.511690 IP 192.168.10.246.50002 > freeplayer.freebox.fr.59741: Flags [.], seq 1058181:1068965, ack 82, win 1448, options [nop,nop,TS val 931504 ecr 884846], length 10784
18:18:01.555512 IP freeplayer.freebox.fr.59741 > 192.168.10.246.50002: Flags [.], ack 1068965, win 722, options [nop,nop,TS val 884857 ecr 931504], length 0
18:18:01.555736 IP 192.168.10.246.50002 > freeplayer.freebox.fr.59741: Flags [.], seq 1068965:1070313, ack 82, win 1448, options [nop,nop,TS val 931508 ecr 884857], length 1348
18:18:01.592254 IP freeplayer.freebox.fr.59741 > 192.168.10.246.50002: Flags [.], ack 1070313, win 22304, options [nop,nop,TS val 884866 ecr 931508], length 0
18:18:01.592531 IP 192.168.10.246.50002 > freeplayer.freebox.fr.59741: Flags [.], seq 1070313:1090533, ack 82, win 1448, options [nop,nop,TS val 931512 ecr 884866], length 20220
18:18:01.592733 IP 192.168.10.246.50002 > freeplayer.freebox.fr.59741: Flags [.], seq 1090533:1098621, ack 82, win 1448, options [nop,nop,TS val 931512 ecr 884866], length 8088
18:18:01.635492 IP freeplayer.freebox.fr.59741 > 192.168.10.246.50002: Flags [.], ack 1098621, win 8570, options [nop,nop,TS val 884877 ecr 931512], length 0
18:18:01.635727 IP 192.168.10.246.50002 > freeplayer.freebox.fr.59741: Flags [.], seq 1098621:1113449, ack 82, win 1448, options [nop,nop,TS val 931516 ecr 884877], length 14828
18:18:01.635878 IP 192.168.10.246.50002 > freeplayer.freebox.fr.59741: Flags [.], seq 1113449:1114797, ack 82, win 1448, options [nop,nop,TS val 931516 ecr 884877], length 1348
18:18:01.679583 IP freeplayer.freebox.fr.59741 > 192.168.10.246.50002: Flags [.], ack 1114797, win 722, options [nop,nop,TS val 884888 ecr 931516], length 0
18:18:01.679804 IP 192.168.10.246.50002 > freeplayer.freebox.fr.59741: Flags [.], seq 1114797:1116145, ack 82, win 1448, options [nop,nop,TS val 931520 ecr 884888], length 1348
18:18:01.723457 IP freeplayer.freebox.fr.59741 > 192.168.10.246.50002: Flags [.], ack 1116145, win 48, options [nop,nop,TS val 884899 ecr 931520], length 0