All links of one day
in a single page.
<Previous day - Next day>

rss_feedDaily RSS Feed
floral_left The Daily Shaarli floral_right
——————————— November 1, 2016 - Tuesday 01, November 2016 ———————————

Parmi toutes les directives de configuration géniales d'OpenVPN, j'en ai encore découverts deux : config et local.

La première, config, permet d'inclure un ou plusieurs fichiers de configuration dans un autre fichier de configuration. C'est extrêmement utile pour factoriser votre configuration quand vous avez plusieurs isntances (UDP et TCP, sécurisée et moins sécurisée, etc.).

La deuxième, local permet d'écouter sur une ou plusieurs IP spécifiées au lieu d'écouter sur toutes les interfaces réseaux. Bon, forcément, vous perdez la fonctionnalité de Linux qui permet d'écouter en IPv6 et en IPv4 en même temps, avec la même socket. Du coup, il vous faudra plusieurs instances : une v4, une v6. Pour peu que vous ayez déjà une instance udp et une instance tcp, ça vous fera 4 instances.



J'ai utilisé la deuxième option pour monter deux VPN dans une même VM : l'un proposant un chiffrement du canal de transport des données en Blowfish + SHA-1 (la config' par défaut depuis des années) et l'autre proposant un chiffrement AES-128 + SHA-256. On route 2 IPv4 et v6 jusqu'à la VM, on attribue les IP sur l'interface. Ensuite, on souhaite associer chaque VPN à une IP. Ce type de configurations permet de conserver un ancien VPN avec un chiffrement qui tend à être démodé aujourd'hui tout en mettant en prod' un VPN avec un chiffrement plus fort pour qu'il puisse être essayé par les utilisateur-rice-s car le chiffrement peut impacter le débit (bon, pas sur l'ADSL, faut pas charrier) et la latence sous certaines conditions, voir : https://shaarli.guiguishow.info/?r6npkg. Au total, on se retrouve avec 8 processus OpenVPN, 8 instances : legacy ipv4 udp, legacy ipv4 tcp, legacy ipv6 udp, legacy ipv6 tcp et la même chose pour le VPN au chiffrement différent. :D



Pourquoi ne pas avoir mis le VPN de test dans une autre VM ?

  • Parce qu'il fallait synchroniser la CRL et les fichiers contenant les adresses que l'on attribue à nos utilisateur-rice-s. Oui, on peut partir sur du DRBD ou, plus adapté, du lsyncd mais bon, ça complexifie le bouzin.

  • Parce que ça pose un problème de routage dans notre infra. Hé oui, par défaut, les blocs d'adresses IPv4 et v6 que nous dédions à notre service de VPn sont routés sur le VPN "classique". mais il faut bien que les IPs des aboné-e-s qui testent le VPN "renforcé" soient routées sur l'autre VM. Ça suppose d'utiliser un protocole de routage dynamique pour que l'utilisateur-rice puisse tester en changeant de VPN (classique ou renforcé) à volonté. Sauf que ce routage pose problème.

    • Si l'on monte 2 sessions BGP (une avec chacun de nos routeurs), ça foire lorsque la VM est sur le routeur qui n'est pas équipé de Quagga. Car, du point de vue de ce routeur Quagga, le next-hop est alors récursif : le next-hop du VPN est l'IP de la VM, le next-hop de la VM, c'est l'autre routeur. Or, Quagga refuse la récursivité quand elle consiste à piocher dans autre chose que des routes statiques ou des routes apprises grâce à un protocole de routage interne. Vieux principe Cisco. Or, nous utilisons exclusivement BGP puisque nos deux routeurs sont les seuls routeurs de notra infra.

      • Sans compter qu'en fonctionnement normal, on aurait une difficulté à prioriser une session par rapport à une autre : il nous faut utiliser du eBGP (avec des ASN privés) pour qu'il y ait redistribution en iBGP entre nos routeurs. Or, l'algorithme de sélection des routes privilégie une session eBGP sur une route iBGP (patate chaude, on sort le trafic le plus vite possible de notre réseau, principe de base du routage BGP). On a donc un routage sous-optimal et, si la VM est active sur notre premier routeur-hyperviseur, on aura le problème de récursivité présenté juste ci-dessus.
    • Une piste possible est de monter deux sessions BGP et d'envoyer les routes uniquement au routeur-hyperviseur sur laquelle la VM se trouve présentement. Celui-ci sera chargé de le re-annoncer en iBGP à l'autre routeur et vu qu'on écrase le next-hop sur cette session iBGP, ça fonctionnerait. C'est du routage conditionnel. Ça se fait plutôt bien avec ExaBGP, il nous faut juste écrire le programme kiVaBien. Juste, ça sera un while(true) bien monstrueux (ben oui, quoi d'autre pour vérifier si la VM n'a pas changé d'hyperviseur-routeur ?).

    • Si l'on monte une seule session BGP, uniquement avec le routeur-hyperviseur sur lequel la VM est active présentement, il faut le faire sur une IP locale au lien sinon les deux sessions se monteront automatiquement. Cela fonctionne en IPv4 mais en IPv6, il est impossible de monter une session sans préciser l'interface… sauf qu'avec Ganeti, on ne la connaît pas à l'avance donc impossible de la mettre dans la configuration du routeur BGP. On peut faire un mix incluant neighbor IPv6 globale et source-address locale + multihop mais BIRD ne supporte pas (ce qui est logique, c'est totalement illogique).

      • On pourrait faire une session BGP sur les IP publiques + multihop (en restreignant le nombre de sauts, donc) mais alors, lors de la migration de la VM d'un hyperviseur à l'autre, la réactivité de BGP dépend des timers BGP. Certes, on peut les configurer plus agressif mais bon, c'est foireux de base…

    De plus, si on a qu'une seule session active à la fois, le monitoring va gueuler (bah oui, y'a une session configurée mais down, c'est bien son rôle de prévenir). Certes, on peut re-écrire le check pour exclure la session BGP avec la VM VPN.

Y'a des services qui refusent de démarrer au boot quand on leur demande d'écouter sur une ou plusieurs IPs (v4 ou v6) spécifiques. C'est typiquement le cas d'Unbound, de BIND et d'OpenVPN.

Ces services s'attendent à trouver les IP configurées sur une interface réseau dès leur lancement. Or, même s'ils sont lancés après le réseau par l'init, en IPv6, il y a une vérification automatique que l'IP n'est pas déjà utilisée sur le réseau. Pendant cette vérification, le noyau n'indique pas aux applications qu'une IPv6 est associée à l'interface réseau, ce qui entraîne l'arrêt des services sus-mentionnés.

Le meilleur moyen de résoudre ce problème est de vérifier si le logiciel n'a pas une option pour re-scanner les interfaces réseaux. BIND dispose de interface-interval, NTPd dispose de -U, par exemple.

Si ce n'est pas le cas, il est toujours possible de désactiver la détection d'IPs dupliquées en ajoutant la ligne suivante dans la définition de l'interface réseau dans /etc/network/interfaces :

pre-up /sbin/sysctl -w net.ipv6.conf.$IFACE.accept_dad=0

ÉDIT DU 1/11/2016 À 22h55 : non, « dad-attempts 0 » ne permet pas de résoudre ce problème. FIN DE L'ÉDIT.

Entretien avec Stéphanie Bortzmeyer par Camille Paloque-Berges et Valérie Schafer le 23 avril 2015 dans le cadre du projet WEB90. http://web90.hypotheses.org

Le but du projet de recherche WEB90 est de comprendre et documenter les années 1990 en matière de numérique.

Quelques notes :

  • Parcours : études de physiques -> il se retrouve dans un labo avec un nouveau système d'information dont il doit s'occuper -> il trouve l'informatique très amusante -> il laisse tomber son doctorat. Pénurie accrue donc on recrute sans diplôme à l'époque. Il poursuivra ses études au Cnam mais il ne les terminera pas. Il commence sa carrière à l'INED en 1986.

  • Paysage de l'époque : l'INED n'était même pas encore connecté à EARN/Bitnet, réseau orienté éducation/recherche basé sur des technos IBM et qui fournissait des services type messagerie. D'autres réseaux existaient : UUCMP (pour mail, news, transfert de fichiers). L'éducation nationale utilisait Decnet. Beaucoup de réseaux différents dans tous les sens et surtout : rien de standard. À l'époque, il se codait beaucoup de passerelles entre ces réseaux. La première expérience d'Internet pour Stéphane remonte à 1991, quand il entre au CNAM en tant qu'adminsys.

  • Les réseaux "pré-Internet" permettaient déjà de découvrir la coopération, l'auto-régulation, la technique. Tout cela existait avant Internet et UNIX. Il y avait des communautés : communauté UUCP, communauté DECUS, communauté Atari, etc. C'était toute la différence entre IBM et DEC : l'échange pair-à-pair de la doc' et des protips pour le second, référent commercial pour le premier.

  • À l'époque :

    • les services les plus utilisés étaient la messagerie, les news, le transfert de fichier et IRC. Transfert de fichiers = l'époque du FTP anonyme qui ne l'a jamais vraiment était : il était normal, par convention, de filer son adresse de courrier en guise de mot de passe. Cela permettait le debug. Les considérations opérationnelles passaient avant la vie privée.

    • la majorité des discussions politiques avaient lieu sur Usenet.

    • les modèles de facturation se cherchaient. Exemple : AFNet (ex-AFU) qui facturait à l'usage en imposant des contraintes techniques. La distinction entre utilisateur et administrateur était plus floue : il fallait bidouiller soi-même.

    • Le CNAM a été le premier établissement français connecté à Internet. Premier serveur HTTP de France de peu (l'INRIA "suivra" juste après).

    • À l'époque, on faisait circuler des listes de serveurs FTP avec les IPs. On n'avait pas confiance dans la fiabilité et la pérennité du DNS. :D Au début du web, il y avait aussi un annuaire actualisé de tous les sites web.

    • La majorité des discussions de l'époque s'apparentait au milieu des radios-amateur : elles étaient destinées à faire fonctionner le système. Il y avait les journées messagerie : réunions des universitaires, qui deviendront plus tard les JRES. Rien qu'à l'intitulé, on sent qu'on était obstiné à faire tomber en marche le service messagerie.

    • Pour la petite anecdote : c'est dans une journée messagerie que Stéphane suivra son premier cours sur le DNS et n'y comprendra rien. :D À cause d'un mélange de politique et de technique aka on prétend une contrainte technique qui n'en ait pas pour justifier des choix tout à fait politique.

    • L'expérience utilisateur était rude et faisait dire aux détracteurs d'Internet que "ça ne fonctionnera jamais". Comme si on avait jugé le succès de l'automobile avec les voitures des années 1900 qui avaient des sièges en bois, une manivelle pour l'allumage et qui subissaient l'absence de station services.

    • Internet était sous le radar des institutions et des médias. Il est apparût nécessaire de convaincre le public. C'est ça, l'objectif des stand informatique à la fête de l'Huma dès 1991/1992 puis des fêtes de l'Internet.
  • Citation de Laurent Chemla : toute nouvelle technique de communication a toujours été un succès parce que l'humain est un animal communicant. C'est pour ça qu'il n'y avait pas besoin d'être voyant-e pour prédire le succès d'Internet.

  • Le nommage des machines a un peu changé. À l'époque, l'admin donnait un nom à sa machine car il y avait une relation affective découlant de la rareté. Aujourd'hui, on a xx ordinateurs par foyer donc cette relation n'existe plus vraiment. Dans le monde pro, les noms sont devenus plus utilitaires : les parcs comprennent beaucoup de machines, surtout avec la virtualisation donc le nom est un identifiant qui dit lieu physique + identifiant local ou nommage selon le service que rend la machine. Dans les 90's, le nommage était déjà un sujet d'engueulades : qui distribue, qui peut utiliser tel nom, etc.

  • On ne pensait pas à la vie privée, pas tellement parce qu'osef ou hippies mais plutôt parce qu'on avait assez de problèmes à gérer sans cela : il fallait que le réseau tourne. La fin des années 80 et le début des années 90 marque le déclin de l'informatique partagée.

  • BBS : accès distant, via un modem (en composant donc un numéro de téléphone) à un ordinateur qui donnait accès à messagerie, téléchargement, forums, etc.

  • Service d'accès à distance du CNAM : service mis en place par Stéphane qui permettait d'accéder au net via le CNAM. 10 modems posés sur une étagère en bois. Les étudiants en ont peu profité car ils n'avaient pas forcément d'ordinateurs à la maison et qu'il fallait un modem "agréé" car les autorités françaises avaient décrétées que les modems étrangers, c'était le danger. Sauf que c'était du protectionnisme bidon qui justifiait de vendre les modems agréés 10 fois plus cher. Des modems étaient ramenés en douce lors de voyages aux US. En revanche, le service avait beaucoup plu en dehors du CNAM et la majorité des comptes créés l'ont été pour des externes genre des personnes du monde UUCP/BBSSS qui voulaient se connecter à Internet. Cela à contribuer à diffuser Internet et ses usages en France.

  • Le site web de Nicolas Pioche, nommé "le Louvre" puis "web louvre" puis "web museum" suite à des fights avec le Louvre, qui proposaient des photos de tableaux a été important car cela a montré que le web pouvait être utilisé pour des sujets d'intérêt général et pas uniquement pour transmettre de la doc'.

  • Fallait-il créer des associations spécifiques ? Les droits et libertés humaines, le droit de la consommation, c'est générique. D'un autre côté, des gens comme Barlow prétendaient qu'Internet est un nouveau monde totalement différent. Ce qui a justifié les assos, c'est que les structures existantes (partis politiques, par exemple) n'en avaient rien à faire d'Internet, il fallait donc que les informaticiens de l'époque fassent eux-même. Exemple de combat : l'Internet Society (ISOC) en partie montée pour faire tomber les marques « Internet » illégitimes (oui, des sociétés commerciales avaient vraiment déposé la marque « Internet » :- ).

  • Assos : AUI pour les utilisateurs. AFU (AFNet) très corporate avec de claires visées économiques. ISOC France, "filiale" (de fait) de l'ISOC sans réel succès puisque l'ISOC impose des contraintes strictes pour monter des relais locaux.

  • Premiers problèmes : racisme trash sur tous les groupes francophones sur Usenet, affaire Altern/Estelle Halliday, vente d'objets nazis aux enchères sur Yahoo (https://fr.wikipedia.org/wiki/LICRA_contre_Yahoo!).

  • AOL, Infonie, Calvacom, etc. posaient déjà la question d'un Internet ouvert versus des réseaux fermés qui se vantaient d'être contrôlés, vérifiés, "on sait ce qu'il y a dessus", etc. C'était un argument marketing. L'histoire a tranché. :)

  • Toute organisation humaine tend à créer de la politique (au sens noble) quand elle passe d'un petit groupe homogène (techniciens fan de science-fiction) à un groupe hétérogène plus vaste.

  • Particularités française :

    • Fin du réseau Cyclades en 1979, tué par les X-Mines qui expliquaient que le datagramme, ce n'est pas sérieux alors que ce réseau était au même niveau technique qu'ARPAnet. Cela a conduit à une cécité française, y compris dans les formations : aux USA, les formations étudiaient plusieurs réseaux alors qu'en France, on étudiait une forme de réseaux sans avenir. Le Minitel a eu un impact négatif car on a eu un égo surdimensionné : "le monde entier nous envie" qui conduit à un repli sur soi ("pas la peine d'aller voir ce que font les autres et comment car on est trop géniaux". Mais le Minitel a aussi permis à Niel de se faire du blé pour ensuite aller proposer autre chose dans le secteur fermé des télécoms. Exemple de cécité : en 1993, RENATER 1 était connecté à Internet mais il ne fallait pas le dire. Il ne fallait pas dire TCP/IP. Et il a fallu déployer X.25 (et forcément, déployer deux protocoles de si bas niveau, ça coûte).

    • Attendre que le chef tranche. En ce sens, le discours de Jospin à Hourtin en 1997 et le plan gouvernemental en 1998 ont été importants car ils ont donné des ordres aux personnes qui en attendaient.



Comme Youtube et les vidéos coupées, c'est le mal, je mets à disposition une version complète et dans un format libre (webm / VP8 / Vorbis) : http://www.guiguishow.info/wp-content/uploads/videos/Web90-Stephane_Bortzmeyer-15-04-2015.webm

Excellente vidéo qui résume bien les dangers de la robotisation de la censure privée ainsi que les problèmes de flous juridiques auxquels doivent faire face les auteur-e-s de vidéos.

  • Content ID : les vidéos uploadées sur Youtube sont automatiquement comparées à une base de données d'empreintes de vidéo/image/son fourni par des détenteurs de droits sur des contenus. Il s'agit donc d'une censure privée et aveugle. Si Content ID détecte quelque chose, le détenteur des droits de l'œuvre reproduite peut :

    • Monétiser la vidéo à son propre compte, c'est-à-dire voler la thune d'un-e auteur-e. Toute la thune, pas juste un pourcentage comme le prévoit la loi française ;

    • Bloquer le contenu dans un ou plusieurs pays ;

    • Distribuer un avertissement au Youtubeur fautif. Au bout de 3 "strikes", c'est une fermeture du compte, suppression des vidéos, etc.
  • Sauf que le robot Youtube ne peut pas détecter les usages légitimes de contenus protégés : droit français à la caricature, droit français de citation, fair use américain, etc. Il y a un flou juridique (pas de décision de justice définitive) pour savoir si le droit de citation français s'applique à une vidéo et quelle serait la limite temporelle de cette citation. Par contre, il n'y aucun doute sur l'existence droit à la caricature en droit français. Le droit français ne prévoit rien pour tout ce qui est détournement et transformation autre que caricature comme les fameux mash up. Les fan-fiction qui ne seraient pas des caricatures auraient quelques problèmes aussi… … …

  • Youtube a mis en place des procès virtuels Youtube pour contester une des mesures énoncées ci-dessus. Sauf que le détenteur des droits, celui qui est soit disant "volé" est juge et partie au procès et n'a pas besoin de motiver sa décision. La grande classe.

  • Une étude américaine (https://boingboing.net/2016/03/30/landmark-study-on-the-effects.html ) a montré que les abus de droit d'auteur ont un effet néfaste sur la liberté d'expression. Sans blague ?!

  • Il y a des abus en masse, que ça soit sur des caricatures, des critiques (droit de citation) ou de la pédagogie. Même pour 8 secondes de vidéo (soit 0,36 % de l'œuvre) situé après le générique (qui a donc été vu par moins de 20 % des personnes qui ont visionné la vidéo). L'auteur peut être dépossédé de l'intégralité des revenus publicitaires qu'il perçoit sur la vidéo pour 8 secondes d'extrait ! De même, l'accès aux Youtube Space (lieux loués par Youtube avec décors, matos et tout) est refusé s'il y a usage d'extraits… Quelques abus célèbres :

    • La vidéo Robocopyright de LQDN, qui parodie Robocop pour justement dénoncer cette robotisation de la censure privée se fait flinguer. Voir https://www.laquadrature.net/fr/les-robots-de-la-police-privee-du-copyright-attaquent-robocopyright

    • Le gouvernement sort une vidéo pédagogique sur comment réagir en cas d'attentats. Un Youtubeur la parodie en apposant une bande son différente et se retrouve avec un contenu bloqué et un strike donné par… Canal+. On suppose que la chaîne d'infos iTÉLÉ a probablement diffusé la vidéo du gouvernement puis a injecté son taff dans Content ID… Même chose quand un parti politique diffuse son speech sur Youtube, qu'il est repris sur une chaîne de TV qui injecte le contenu dans Content ID. Et forcément, tout le monde va se renvoyer la faute : les ayants-droits accuseront Youtube de sur-blocage et Youtube accusera les ayants-droits d'avoir injecté des contenus dont ils n'ont pas les droits dans Content ID.

    • Youtube a déjà bloqué plein de vidéos pour des bruits en fond sonore. Y compris pour des chants d'oiseaux… … …
  • Le Youtubeur moyen s'écrase car il n'a pas la thune pour aller contester devant un vrai tribunal surtout quand il n'est pas sûr de gagner vu les flous juridiques énoncés plus haut. Il y a donc une inégalité dans l'accès à la liberté d'expression : il faut avoir du blé ou une grosse communauté (donc de la visibilité) pour pouvoir se défendre. Il y a donc une majorité d'abus qui passe inaperçue…

  • Content ID est un système créé par les hébergeurs pour résister aux ayants-droits. La LCEN (France) ou le DMCA (USA) permettent aux ayants-droits de bombarder les hébergeurs de demandes de retrait de contenus en invoquant la responsabilité des intermédiaires techniques prévue dans ces textes.

  • Pistes d'amélioration :

    • Que les producteur-rice-s se regroupent pour créer une sorte de fond de défense afin d'aller au tribunal dans le but d'avoir une jurisprudence claire ;

    • Lobbying auprès des élu-e-s pour clarifier la loi et ajouter de nouvelles exception au droit d'auteur.

    • Système de répartition des droits afin de négocier les droits pour le moindre bout d'extrait. Attention cependant aux dérives du secteur privée : cela signifie que l'on n'utilise plus les exceptions au droit d'auteur prévues par la législation. Il y a donc une monétisation accrue pour certaines personnes et une diminution des libertés pour d'autres personnes.

    • Héberger soi-même son contenu, en dehors des grosses plateformes qui feront toujours chier. Il faudra trouver un compromis entre la visibilité apportée par Youtube et la liberté apportée par la décentralisation.
  • Autres dérives de la propriété intellectuelle (droit d'auteur mais pas que) : rubrique hebdomadaire « Copyright Madness » sur Numerama.



https://www.youtube.com/watch?v=JWQLhBVuuB4 :

  • « Major : des mecs déjà riches et bien portant qui se font du pognon sur des choses qu'ils n'ont pas fait ». :D

  • Lorsque tu te prends un "strike", tu dois répondre à un questionnaire. Tant que tu n'as pas tout juste, tu ne peux plus uploader de vidéo. C'est de l'endoctrinement : il faut penser comme eux pour avoir le droit de faire des choses. :)

  • N'importe qui peut "striker" n'importe quelle vidéo, sans preuve et sans démontrer qu'il détient bien les droits sur une œuvre qui serait plagiée dans la vidéo "strikée".

  • Ce n'est pas du délire parano : il y a déjà eu des vidéos "strikées" alors qu'elles ne contenaient aucun extrait ni audio ni vidéo. Exemple dans la vidéo.

  • Les dénonciations abusives ne sont pas sanctionnées, rien n'est prévu pour cela. C'est poutant une des dispositions prévues par la LCEN française.

  • En attendant, les critiques et les détournements, ça permet de faire du buzz sur des merdes qui n'auraient jamais connues le succès, permettant aux contenus soit-disant "volés" de rapporrter de la thune. Là aussi, la vidéo regorge d'exemples.



Via http://hs-157.moe/shaarli-culture-tube-content-id

-