Add your blog

To have your blog added contact pollux AT inl DOT fr.

Planet EdenWall Guidelines

The content aggregated at Planet EdenWall is the opinions of its authors, but the sum of that content gives an impression of the project. Please keep in mind the following guidelines for your blog content and keep the content inside the correct code of conduct]. The EdenWall project reserves the right to remove an inappropriate blog from the Planet. If that happens multiple times, the Community Working Group can be asked to consider what needs to happen to get your blog aggregated again.

Microblogging from EdenWall

août 30, 2010

Emmanuel Garette (gnunux)

Mécanisme de "clef obligatoire" par utilisateur sous Mozilla Firefox

Je cherche depuis deux jours comment avoir un mécanisme de "clef obligatoire" (mandatory key) par utilisateur avec Mozilla Firefox.

Mon but est de pré-configurer des postes clients Firefox suivant l'utilisateur qui s'y connecte.

Le plus simple est de modifier le fichier "prefs.js" dans le profile utilisateur se trouvant dans le répertoire personnel de l'utilisateur. Le problème c'est que l'utilisateur aura la possibilité de modifier les paramètres. A chaque connexion il verra son paramétrage disparaître sans forcement comprendre.

Il existe un second fichier "user.js" qui prévaut sur le fichier "prefs.js". Cela signifie que l'utilisateur peut modifier les paramétrages, mais ceux-ci ne s'appliquent ni maintenant, ni après redémarrage. C'est assez perturbant.

La troisième solution est d'utiliser le mécanisme de verrou. Mais le fichier de verrou est global pour tous les utilisateurs. Impossible alors de personnaliser quoi que ce soit.

Après recherche, je suis parvenu a réalisé ce que je souhaite.

Voici la méthodologie :

Commençons par ajouter le support des "clefs obligatoires" :

Dans le fichier, /usr/lib/xulrunner-x.x.x.x/greprefs/all.js (sous Mandriva en tout cas, il est possible que ce répertoire soit directement dans le répertoire de firefox), ajouter :

pref("general.config.filename", "mozilla.cfg");
pref("general.config.obscure_value", 0); 

Cela permet d'ajouter le support du fichier "mozilla.cfg". C'est ce fichier qui est censé contenir les "clefs obligatoires" global pour tous les utilisateurs. L'option "obscure_value" est à "0" pour éviter l'avoir à le convertir en ROT13 (sécurité par obscurantisme inutile).

Pour avoir un support multi-utilisateur, j'ajoute dans le fichier /usr/lib/firefox-x.x.x/mozilla.cfg :

//
var env_user = getenv("USER');
lockPref("autoadmin.global_config_url", "file///etc/firefox/"+env_user+".js");

(attention, le "//" au début du fichier semble obligatoire).

EDIT : sous Windows, il faut visiblement : var env_user = getenv("USERNAME"); (non testé). Pour un support multi-platforme il est alors possible de faire :

if(getenv("USER") != "") {
  // *NIX settings
  var env_user = getenv("USER");
} else {
  // Windows settings
  var env_user = getenv("USERNAME");
}

Il est alors possible d'avoir un fichier de configuration par utilisateur. Dans le fichier /etc/firefox/nom_de_l'utilisateur.js, mettre des clefs commençant par lockPerf (penser à la première ligne "//").

Pour les clefs, vous pouvez utiliser les informations de cette page : http://www.pcc-services.com/kixtart/firefox-lockdown.html.

Reste un soucis de taille ... à la prochaine mise à jour de Firefox ... il faudra reconfigurer le fichier all.js ...

Si quelqu'un à une solution pour cette limitation, je suis intéressé.

20:32, lundi, 30 août UTC

août 02, 2010

Eric Leblond (regit)

Splitting and shrinking a git repository

I have recently faced the challenge to rewrite a git repository. It has two problems:

  • First problem was small: an user has commited with a badly setup git and E-mail as well as username were not correctly set.
  • Second problem seems more tricky: I was needing to split the git repository in two different one. To be precise on that issue, from the two directories at root (src and deps) have to become the root of their own repository.

I then dig into the doc and it leads me directly to ‘filter-branch’ which was the solution of my two problems. The names of the command is almost self-explanatory: it is used to rewrite branches.

Splitting the git repository

A rapid reading of ‘git help filter-branch’ convince me to give a try to the ‘subdirectory-filter’ subcommand:

--subdirectory-filter

Only look at the history which touches the given subdirectory. The result will contain that directory (and only that) as its project root. Implies
--remap-to-ancestor

Thus to split the directory, I have simply to copy my repository via a clone call and run the filter command:

git clone project project-src
cd project-src
git filter-branch --subdirectory-filter src

Doing once again for the deps directory and I had my two new repositories ready to go.

At once during this cleaning task, I wanted to avoid to loose my directory structure. I mean I want to keep the ‘src’ directory in the ‘src’ repository. Thanks to the examples at the end of ‘git help filter-branch’, I’ve found this trickier command:

git filter-branch --prune-empty --index-filter \\
 'git rm -r --cached --ignore-unmatch deps' HEAD

This literally do the following : for each commit (--index-filter), suppress (rm) recursively (-r) all items of the ‘deps’ directory. If a commit is empty then suppress it from history (--prune-empty).

Shrinking the resulting repository

‘deps’ directory was known to take a lot of disk space and I thus done a check to see the size of the ‘src’ directory. My old friend ‘du’ sadly told me that the split repository has the same size as the whole one ! There is something tricky here. After googling a little bi I’ve found out (mainly by reading Luke Palmer post) that git never destroy immediately a commit. It is always present has an object in the .git/objects directory. To ask for an effective suppression, you’ve got to tell git that some objects are expired and can now be destroyed. The following command will destroy all objects unreachable since more than one day:

git gc --aggressive --prune=1day

Unreachable objects means objects that exist but that aren’t readable from any of the reference nodes. This last definition is taken from ‘git help fsck’. The ‘fsck’ command can be used to check the validity
and connectivity of objects in the database. For example to display unreachable object, you can run:

git fsck --unreachable

Fixing commiter name

My problem on badly authored commits was still remaining. From the documentation, --env-filter subcommand was the one I need to use. The idea of the command is that it will iterate on every commit of the branch giving you some environnement variables:

GIT_COMMITTER_NAME=Eric Leblond
GIT_AUTHOR_EMAIL=eleblond@example.com
GIT_COMMIT=fbf7d74174bf4097fe5b0ec559426232c5f7b540
GIT_DIR=/home/regit/git/oisf/.git
GIT_AUTHOR_DATE=1280686086 +0200
GIT_AUTHOR_NAME=Eric Leblond
GIT_COMMITTER_EMAIL=eleblond@example.com
GIT_INDEX_FILE=/home/regit/git/oisf/.git-rewrite/t/../index
GIT_COMMITTER_DATE=1280686086 +0200
GIT_WORK_TREE=.

If you modify one of them and export the result, the commit will be modifed accordingly. For example, my problem was that commit
from ‘jdoe’ are in fact from ‘John Doe’ which mail is ‘john.doe@example.com’. I thus run the following command:

git filter-branch -f --env-filter '
if [ "${GIT_AUTHOR_NAME}" = "jdoe" ]; then
GIT_AUTHOR_EMAIL=john.doe@example.com;
GIT_AUTHOR_NAME="John Doe";
fi
export GIT_AUTHOR_NAME
export GIT_AUTHOR_EMAIL
'

Git show here once again it has been made by semi-god hackers that have developped it to solve their own source management problems.

21:53, lundi, 02 août UTC

juin 16, 2010

Pierre Chifflier (pollux)

LE pare-feu OpenOffice

Internet ça a du bon. Enfin, pas toujours .. Et en combinant une jolie boulette avec quelques outils, on peut réaliser des choses dont personne n'aurait pensé au début ..

En bref, et notamment pour faire suite au challenge que certaines personnes m'ont lancé au SSTIC 2010 (très bonne année d'ailleurs), le voila: LE pare-feu OpenOffice ! Mais attention: pas un truc codé à l'arrache, nan, un vrai pare-feu avec un design toussa

Donc, comment ça marche:

  • on veut filtrer des paquets avec OpenOffice, donc on a besoin d'OpenOffice
  • n'ayant pas eu le temps de planifier le portage d'OpenOffice en mode noyau, j'ai donc fait l'inverse: amener les paquets en espace utilisateur avec nfqueue + python
  • on manipule OO avec python-uno

Donc, je commence à coder: on crée une feuille calc avec les numéros de ports à filtrer, je récupère la valeur des cellules (et là je peux vous le dire: quand on a l'habitude de LaTeX, OO c'est pas la joie), et on s'en sert pour filtrer les paquets récupérés par nfqueue.

Premier problème: pour utiliser nfqueue, il faut être root. Et faire tourner OpenOffice en root (donc avec une interface graphique) sur le firewall, c'est pas top. Pas de problème ! On va donc séparer les idées, pour pouvoir:

  • installer la couche de filtrage (en root) sur le pare-feu
  • installer OpenOffice sur le poste de l'administrateur, avec une couche de communication entre les deux.

Donc, le design de la solution (schéma faire avec OO - et surtout du mal - pour pas multiplier les technos):

Design OOwall

Pour le serveur XML-RPC, j'ai pris pyUNOserver

Après, il reste à définir le format de la feuille calc. Au départ, je comptais juste utiliser une colonne pour avoir les numéros de port à autoriser, mais quand même on fait un pare-feu qui s'adresse à des décideurs, donc va falloir faire mieux. Donc, idée: on va ajouter des colonnes pour avoir des compteurs de paquets droppés ou acceptés, et on va les mettre à jour en temps réel. Et c'est là qu'on commence à comprendre la vraie puissance du truc (ou pas): on va pouvoir faire des graphes ! Et, bonus point, ils seront remis à jour en temps réel !

Après le bla-blah, les screenshots:

Le prototype original Le prototype original

La version améliorée: La version améliorée

Et donc, le code dans tout ça ?

D'abord, on envoie tout le trafic TCP sortant vers NFQUEUE:

# iptables -A OUTPUT -o eth0 -p tcp -j NFQUEUE

On lance le serveur XML-RPC avec OpenOffice sur le poste de l'admin:

$ ./startPyUnoServer.sh &

Et, sur le pare-feu, on lance le script:

$ sudo python2.6 oowall.py
localhost - - [16/Jun/2010 22:00:37] "POST /RPC2 HTTP/1.0" 200 -
/home/pollux/oowall.ods
...

Et ça marche !

Le code est dispo (j'ai juste copié les fichiers ...) sur: http://www.wzdftpd.net/downloads/oowall/

J'ai fait une video, dispo ici: http://www.wzdftpd.net/downloads/oowall/video_oowall.avi ou sur youtube: http://www.youtube.com/watch?v=pftjkGAORkA

Conclusion

Il fallait faire mieux que le pare-feu météo, là je pense que l'objectif a été atteint. Seule déception: pas avoir pu le faire à temps pour les rumps du SSTIC :/ Maintenant, vous pourrez générer en live des statistiques, des rapports PDF, des présentations, donc la sécurité rejoint enfin le côté user-friendly.

Il y a pas mal d'évolutions possibles, notamment le fait d'utiliser des macros, pouvoir sécuriser la connexion XML-RPC etc.

Pour les performances, c'est tout simplement assez lamentable (ici j'ai ~10 paquets par seconde), mais finalement c'est mieux parce que ça empêchera surtout le peer to peer :)

update: apparemment, j'ai été un peu pessimiste, j'ai réussi à atteindre presque 200 paquets / seconde :)

21:31, mercredi, 16 juin UTC

mai 23, 2010

Eric Leblond (regit)

Using Suricata with CUDA

Suricata is a next generation IDS/IPS engine developed by the Open Information Security Foundation.

This article describes the installation, setup and usage of Suricata with CUDA support on a Ubuntu 10.04 64bit. For 32 bit users, simply remove 64 occurances where you find them.

Preparation

You need to download both Developper driver and Cuda driver from nvidia website. I really mean both because Ubuntu nvidia drivers are not working with CUDA.

I’ve first downloaded and installed CUDA toolkit for Ubuntu 9.04. It was straightforward:

sudo sh cudatoolkit_3.0_linux_64_ubuntu9.04.run

To install the nvidia drivers, you need to disconnect from graphical session and close gdm. Thus I’ve done a CTRL+Alt+F1 and I’ve logged in as normal user. Then I’ve simply run the install script:

sudo stop gdm

sudo sh devdriver_3.0_linux_64_195.36.15.run

sudo modprobe nvidia

sudo start gdm

After a normal graphical login, I was able to start working on suricata build

Suricata building

I describe here compilation of 0.9.0 source. To do so, you can get latest release from OISF download page and extract it to your preferred directory:

wget http://openinfosecfoundation.org/download/suricata-0.9.0.tar.gz

tar xf suricata-0.9.0.tar.gz

cd suricata-0.9.0

Compilation from git should be straight forward (if CUDA support is not broken) by doing:

git clone git://phalanx.openinfosecfoundation.org/oisf.git

cd oisf

./autogen.sh

Configure command has to be passed options to enable CUDA:

./configure –enable-debug –enable-cuda –with-cuda-includes=/usr/local/cuda/include/ –with-cuda-libraries=/usr/local/cuda/lib64/ –enable-nfqueue –prefix=/opt/suricata/ –enable-unittests

After that you can simply use

make

sudo make install

Now you’re ready to run.

Running suricata with CUDA support

Let’s first check, if previous step were correct by running unittests:

sudo /opt/suricata/bin/suricata -uUCuda

It should display a bunch of message and finish with a summary:

==== TEST RESULTS ====
PASSED: 43
FAILED: 0
======================

Now, it is time to configure Suricata. To do so we will first install configuration file in a standard location:

sudo mkdir /opt/suricata/etc

sudo cp suricata.yaml classification.config /opt/suricata/etc/

sudo mkdir /var/log/suricata

Suricata needs some rules. We will use emerging threats one and use configuration method described by Victor Julien in his article.
wget http://www.emergingthreats.net/rules/emerging.rules.tar.gz
cd /opt/suricata/etc/
sudo tar xf /home/eric/src/suricata-0.9.0/emerging.rules.tar.gz
As our install location is not standard, we need to setup location of the rules by modifying suricata.yaml:
default-rule-path: /etc/suricata/rules/
as to become:
default-rule-path: /opt/suricata/etc/rules/
The classification-file variable has to be modified too to become:
classification-file: /opt/suricata/etc/classification.config
To be able to reproduce test,  will use a pcap file obtained via tcpdump. For example my dump was obtained via:
sudo tcpdump -s0 -i br0 -w Desktop/br0.pcap
Now, let’s run suricata to check if it is working correctly:
sudo /opt/suricata/bin/suricata -c /opt/suricata/etc/suricata.yaml -r /home/eric/Desktop/br0.pcap
Once done, we can edit suricata.yaml. We need to replace mpm-algo value:
#mpm-algo: b2g
mpm-algo: b2g_cuda
Now, let’s run suricata with timing enable:
time sudo /opt/suricata/bin/suricata -c /opt/suricata/etc/suricata.yaml -r /home/eric/Desktop/br0.pcap 2>/tmp/out.log
With Suricata 0.9.0, the run time for a 42Mo pcap file is with starting time deduced:
  • 11s without CUDA
  • 19s with CUDA

Conclusion

As said by Victor Julien during an IRC discussion, CUDA current performance is clearly suboptimal for now because packets are sent to the card one at a time. It is thus for the moment really slower than CPU version. He is working currently at an improved version which will fix this issue.
An updated code will be available soon. Stay tuned !

21:10, dimanche, 23 mai UTC

mai 01, 2010

Emmanuel Garette (gnunux)

Et ca continoooooo ...

Une nouvelle modification dans le script nootv.py. Ce script permet de regarder les émissions de la chaîne de télévision locale Vootv avec des logiciels libres.

Cette nouvelle version permet de visualiser rapidement les émissions déjà regardé.

Après l'identifiant une "*" est affiché si l'émission a été récupéré.

Exemple :

  54* : Le Grand Rendez-VOO du 28 Avril 2010 partie 2 (Le Grand Rendez-Voo)
  55* : Le Grand Rendez-VOO du 28 Avril 2010 partie 1 (Le Grand Rendez-Voo)
  56  : Le Grand Rendez-VOO du 29 Avril 2010 partie 1 (Le Grand Rendez-Voo)

Attention, la base de donnée a été modifié et je n'ai pas prévu la migration. Il faut donc supprimer le fichier nootv.sqlite avant de lancer le script.

Pour récupérer le script ... : http://gitorious.org/nootv/nootv/blobs/raw/master/nootv.py

Bon Vootv.

22:32, samedi, 01 mai UTC

mars 25, 2010

Victor Stinner (haypo)

Visualiser une image qui ne tient pas en mémoire vive : utilisez nip2 !

La majorité des applications se portent pâles quand il s'agit d'afficher de grandes images. Par grande, j'entend 5000x5000 pixels voir beaucoup plus. Le pire étant quand l'image décompressée est plus grande que la mémoire vive : l'application épuise petit à petit la mémoire, commence à utiliser le swap (utilise le disque dur, très lent), et finit par se faire tuer par OOM Killer. Sauf que l'application met du temps à se faire tuer, et l'ordinateur devient très rapidement totalement inutilisable (la charge de la machine monte à 5, 10, puis on n'arrive même plus à l'obtenir dans top).

La solution est le programme nip2 qui ne charge en mémoire que ce qui est affiché à l'écran, ce qui permet de d'afficher des images qui ne tiennent pas en mémoire. Il affiche une barre de progression lorsqu'il prépare l'image (il crée sûrement un index position en pixels => offset dans le fichier).

nip2 affichant une photo JPEG de 27.684 × 3.488 pixels

La bibliothèque GEGL permet également d'afficher de très grosses images, mais je ne connais pas d'outil facile à prendre en main qui l'utilise pleinement. Gimp a commencé à l'intégrer dans sa version 2.5, mais c'est encore expérimental et tout n'utilise pas GEGL. Il me semble que Gimp ne sait pas afficher d'image plus grande que la mémoire vive. En tout cas, je n'ai pas envie de tester !

En parlant de grosses images, j'en connais deux types : « grosses » photos (souvent un photomontage de plusieurs autres photos) et schémas (typiquement vectoriel) générés par un logiciel.

Il existe par exemple les photos panoramiques qu'on peut créer avec le logiciel Hugin. Wikipédia en contient un grand nombre : voir la catégorie Panoramics de Wikimedia Commons. Exemple au pif : Paysage - vue panoramique - rocher du pain de sucre - Guadeloupe - Les Saintes, photo JPEG de 27.684 × 3.488 pixels (17,9 Mo : énorme pour une image JPEG !).

Pour les schémas générés par ordinateurs : on trouve souvent des graphes représentant les relations entre différentes entités. En ce moment, c'est par exemple la mode des graphes montrant la relation entre des personnes (réseau social) ou projets informatiques. Exemple du jour : Github explorer, schémas présentant les relations entre les utilisateurs du site github (hébergeur de programmes libres). L'idéal est d'utiliser le schéma au format vectoriel, car un ordinateur sait très bien dessiner ça efficacement... Sauf que c'est rare que la version vectorielle soit disponible, ou alors dans un format bizzare (tout ce qui n'est pas SVG est bizzare pour moi :-)).

Mais les plus grosses photos que j'ai vu venaient de la NASA : une photo satellite de 100.000x100.000 pixels. Je ne me souviens plus où je les ai trouvées, mais OnEarth semble être une bonne piste. On dirait qu'ils offrent maintenant une interface web pour navigurer directement dans l'énorme image et donc télécharger petit bout par petit bout comme le font Google Maps & cie.

Enfin, il existe un logiciel (propriétaire et payant) qui permet de se balader dans de grandes images : Zoomify. La version Flash permet de l'utiliser très simplement dans un navigateur web. Je trouve le résultat plutôt réussi. La page d'accueil affiche une vue aérienne de Paris avec une excellente résolution, sûrement des photos prises par avion (comme sur mappy.com).

... Tout ce blabla uniquement pour me souvenir du nom « nip2 ». Pourtant c'est pas dur, il suffit de penser à des tétons !

13:27, jeudi, 25 mars UTC

mars 22, 2010

Emmanuel Garette (gnunux)

Parti pirate suisse sur TSR

TSR a diffusé un reportage sur le parti pirate suisse.

Le sujet est plutôt intéressant (trop porté peu être sur la gratuité). A quand la même chose en France ?

http://www.tsr.ch/tsr/index.html?siteSect=500000&bcid=743992#bcid=743992;vid=11905380

Pour le visualisé avec des logiciels libres ...

flvstreamer_x86 -x -r "rtmp://stream.tsr.ch:1935/ondemand/media/map/2010/map_03212010-701k.mp4" > video.flv
totem video.flv

22:21, lundi, 22 mars UTC

mars 16, 2010

Emmanuel Garette (gnunux)

Logiciel libre sur Vootv

Dans l'émission Le Grand Rendez-VOO du 15 Mars 2010, nous pouvons voir très clairement le logiciel libre Mozilla Firefox.

Le logiciel n'est pas le sujet du reportage. L'application n'est pas une application choisit par la chaîne de télévision. En effet, c'est durant un reportage sur les élections régionales que l'ont peut voir le navigateur libre.

Logiciel libre sur Vootv

21:40, mardi, 16 mars UTC

mars 05, 2010

Emmanuel Garette (gnunux)

Noooooveauté

Voici la quatrième version de mon script nootv.py (j'espère la dernière !).

Nootv.py est toujours un script permettant d'accéder aux contenus du site de la chaine de TV local Vootv avec des logiciels libres.

La grosse nouveauté de cette version est l'utilisation d'Elixir et d'une base de donnée Sqlite pour sauvegarder le titre des émissions et des programmes en locale.

Lorsqu'on lance l'application, nous voyons maintenant la liste les programmes ajoutés depuis la dernière consultation (attention, le temps de téléchargement est maintenant beaucoup plus long ... parce qu'il faut que je parcours un ensemble des pages du site avant de créer ce menu) :

# ./nootv.py
Téléchargement ...

Nouveaux programmes
  144 : Le Grand Rendez-VOO du 4 Mars 2010 partie 2 (Le Grand Rendez-Voo)
  145 : Le Grand Rendez-VOO du 4 Mars 2010 partie 1 (Le Grand Rendez-Voo)
vide pour voir les anciennes émissions
>>> 

Soit je tape l'ID de l'émission voulu (par exemple 144) soit je fais "entrée" pour retrouver l'ancien menu.

Emissions
  1 : Grand Tourisme
  2 : L'Agenda quotidien
  3 : Le Grand Rendez-Voo
  4 : Sports
  5 : Météo
  6 : Associez-voo
  7 : Watt's in
  8 : Le Rendez-vous Politique
  9 : L'Atelier des Chefs
vide pour quitter
>>> 

Si je ne tape pas d'ID, je quitte l'application, sinon, j'accède aux programmes de l'émission choisit :

Programmes
  138 : Atelier des chefs n°2 Maquereau de David Zudas (L'Atelier des Chefs)
  139 : Atelier des chefs n°1 Délice Maltée (L'Atelier des Chefs)
  140 : Atelier des chefs n°4 Verrines chocolat et suprèmes de pamplemousse de Franck Pourrier (L'Atelier des Chefs)
  141 : Atelier des chefs n°5 Gambos et tofu par  fumi mitera (L'Atelier des Chefs)
  142 : Atelier des chefs n°3 Croustillant de veau de Cyril Riandet (L'Atelier des Chefs)
  143 : Atelier des chefs n°6 Boeuf bourguignon (L'Atelier des Chefs)
vide pour retour aux émissions
>>>

Si aucun programme ne m'intéresse, je n'ai qu'a taper entrée pour revenir à la liste des émissions. Et ainsi de suite.

Et oui, la seconde nouveauté c'est que je ne suis pas obligé de lancer plusieurs fois l'application pour accéder à plusieurs contenus.

N'hésitez pas à laisser un commentaire pour des éventuelles suggestions ou autres.

Sinon, pour récupérer le script, c'est toujours : http://gitorious.org/nootv/nootv/blobs/raw/master/nootv.py

21:09, vendredi, 05 mars UTC

février 25, 2010

Victor Stinner (haypo)

Ce qui m'énerve dans les pubs télévisées

Petit billet d'humeur sur ce qui m'énerve dans les publicités à la télévision.

Bandeau de texte illisible

Les pubs vantent souvent une offre précise. Sauf que les offres sont limitées par de nombreuses conditions qu'il est obligatoire d'afficher (si ce n'était pas le cas, les publicitaires s'en passeraient volontiers). Souvent, un bandeau de texte défile en bas pendant la pub. Problème : certains publicitaires malhonnêtes font en sorte que ce texte soit illisible. Il y a plusieurs manière de faire, comme utiliser un police très fine ou bien faire défiler le texte trop vite. En ce moment, j'ai vu encore pire :

Si on regarde le texte de plus près :

On pense à un problème dans sa télévision ou qu'on a besoin de lunette. Bah non, c'est uniquement le bandeau de texte en bas qui est flou ! Le texte en grand et la voiture sont nets. Pour obtenir cette image, j'ai utilisé le logiciel VLC en regardant la télévision via le multiposte Free. J'ai coché l'option « Vidéo > Désentrelacement > Moyenne », et j'ai pris une capture d'écran avec KSnapshot. Je précise tout, car je n'ai pas réussi à trouver ces publicités sur Internet. Sur Youtube ou Dailymotion, j'ai trouvé les publicités, mais... sans les bandeaux de texte défilant.

Fiat n'est bien sûr pas le seul à utiliser du texte flou. La MAIF, la pub pour la Renault Mégane DCI (coupé 2009) ou encore la Citroën C4 Picasso utilisent aussi cette astuce (arnaque ?). Et il y en a sûrement bien d'autres.

Volume sonore

La plupart des chaînes augmentent le volume sonore lors de l'interruption publicitaire. Ça a bien sûr pour effet d'éveiller mon attention, mais ça m'énerve car à chaque fois je dois baisser le volume.

Côté possitif : on peut utiliser cette singularité pour détecter le début et la fin de la publicité. Cette astuce a été utilisée sur les boitiers TiVo aux États-Unis (fonction « commercial-skip »). D'ailleurs, aux États-Unis, la quantité de publicité à la télévision est incomparable avec ce qu'on a en France. Mais ce n'est pas une excuse pour ne pas râler !

Divers

Il y a d'autres trucs qui m'horripilent. Les pubs utilisant une animation 3D pour en mettre plein la vue, mais avec une animation complètement bidon (bien loin de la réalité). Exemples typiques : action de la brosse à dent, d'un dentifrice, du shampoing ou d'une lessive.

Autre horreur : la mode des publicités en chanson. Votre banquier ou votre assureur se met à chanter sur un air connu... sauf que c'est une reprise. Le pire étant un slogan repris régulièrement pendant plusieurs mois comme la publicité « C'est la MAAF ». Raaaaah !

Il y a aussi les publicités en deux parties. La plus ridicule étant la même publicité (ou deux versions très proches) diffusée deux fois dans un intervalle très court (genre deux ou trois minutes). Sinon il y a une première partie qui crée le suspense, puis la 2e partie qui révèle la nouvelle (décevante bien sûr).

Pour finir, sachez que les agences de publicité ont leur QG : Syndicat National de la Publicité TéléVisée (SNPTV). Si vous en avez ras la pub, c'est le moment de relire ou revoir 99 francs ;-)

01:15, jeudi, 25 février UTC

Victor Stinner (haypo)

Partager une imprimante avec CUPS

Je partage mon imprimante USB entre deux ou trois ordinateurs (selon mon humeur). Chaque fois que je dois (re)configurer le serveur qui la partage ou un poste client, je m'arrache les cheveux. Pourtant, c'est simple, mais j'oublie toujours une étape importante. Voici donc une petite liste récapitulative, sûrement incomplète et imprécise, pour partager une imprimante sous Linux.

Serveur

Installation l'imprimante

Pour l'installation, l'interface web de CUPS (http://localhost:631) est bien foutue et inclut même de la documentation ! Sinon il existe des assistants graphiques qui fonctionnent pas trop mal. Bref, rien de spécial à dire pour cette étape.

Partager l'imprimante

Il faut bien marquer l'imprimante comme étant partagée. Par exemple avec l'outil Ubuntu (ou Gnome ? system-config-printer.py), il faut faire un clic droit sur l'imprimante et s'assurer que « [x] Partagée » soit coché.

Partager le serveur d'impression

Il faut que le serveur CUPS soit accessible sur le réseau local. Pour cela, il faut « Publier les imprimantes partagées connectées à ce système ».

Après il se peut qu'il y ait des soucis de permissions. Mais alors là, bonne chance :-)

Poste client

cups-bsd

Sous Debian, s'assurer que c'est le paquet cups-bsd (et non lpr) qui est utilisé. lpr pose des problèmes, notamment avec Kpdf.

/etc/cups/client.conf

Il n'y a pas besoin de serveur CUPS (enfin, j'ai jamais trop su... mais je crois pas). Il suffit d'une seule ligne dans le fichier /etc/cups/client.conf :

ServerName lisa

où lisa est le nom du serveur.

Test en ligne de commande

Le programme lpq permet de voir la liste des tâches d'impression :

$ lpq
HP_LaserJet_P2015_Series est prêt
aucune entrée

Ça marche !

Configurer KDE

Avec KDE 3.x, assurez-vous d'utiliser le « pilote » CUPS et non pas LPD :

  • Allez dans le menu : K > Configuration > Périphériques > Imprimante
  • Système d'impression : choisissez CUPS

Utilisez du laser !

Mon imprimante est une HP LaserJet 2015 noir & blanc branchée sur USB. Elle m'a coûté cher (environ 300€ je crois), mais depuis que je l'ai (2 ans je crois ?) je n'ai jamais changé le toner. Elle est très rapide : la première page sort en 10 secondes maxi et les suivantes se suivent directement sans interruption. En plus, le papier est chaud et j'aime bien l'odeur. Par contre, parfois elle clignote quand elle est ronchon :-) Je lui tripote les boutons et ça la calme. Ah oui, elle s'installe sans aucun problème sous Linux.

Si comme moi vous n'imprimez que du texte sans schéma (article de recherche, facture, recette de cuisine, etc.) : je vous conseille d'investir dans du laser noir et blanc plutôt qu'une imprimante jet d'encre droguée qui réclame sans arrêt ses doses à 30€ (quand c'est pas 50€ ou plus !). Je pense que les constructeurs vendent à perte, mais se rattrapent très vite sur les consommables. Et si possible, ils mettent des verrous matériels ou logiciels pour empêcher que vous achetiez des cartouches concurrentes ou que vous rechargiez vos cartouches à la main (avec une seringue, opération rigolote).

00:13, jeudi, 25 février UTC

février 24, 2010

Victor Stinner (haypo)

Outils Xorg en ligne de commande

Xorg est fourni avec une large palette d'outils en ligne de commandes bien pratique pour dépanner un serveur Xorg malade. Voici une courte liste des commandes que j'ai déjà utilisées. Initialement, j'ai écrit ce billet juste pour me souvenir de xdpyinfo :-)

Clavier

Configuration la répétition du clavier :

 xset r rate 500 30

Changer la disposition du clavier. Passer en QWERTY :

setxkbmap us

Changer la disposition du clavier. Passer en AZERTY (français) avec la variante latin9 :

setxkbmap fr -variant latin9

Définir les touches Propriété Windows et Menu Windows droit comme touches de composition :

setxkbmap -option compose:menu,compose:rwin

Écran

Afficher les écrans connectés, les résolutions disponibles et la résolution courante :

xrandr

Utiliser l'écran externe ("VGA") plutôt que l'écran interne ("LVDS") d'un ordinateur portable :

xrandr --output VGA --auto --output LVDS --off

Lire la taille en millimètres et la résolution en points par pouce (PPP, ou DPI en anglais). Chercher « screen #0: » dans la sortie de la commande :

xdpyinfo

Exemple :

...
screen #0:
  dimensions:    1280x1024 pixels (294x235 millimeters)
  resolution:    111x111 dots per inch

Désactiver l'économiseur d'écran :

xset s off

Divers

Application affichant les événements claviers et soucis. Peut par exemple server à trouver le code d'une touche (keycode). Voir mon article sur la touche compose de mon article Touche compose) qui en parle.

xev

Générer un fichier de configuration Xorg dans le dossier courant (créer un fichier « xorg.conf.new ») :

Xorg -configure

Si Xorg est déjà en foncitonnement, utiliser le second display :

Xorg :1 -configure

Autoriser l'utilisateur toto à se connecter à votre serveur X :

xhost +toto

Puis xhost -toto pour retirer la permission. Désactiver les bips du buzzer :

xset -b

23:31, mercredi, 24 février UTC

février 21, 2010

Emmanuel Garette (gnunux)

Noo, voo, ils ...

Voici la troisième version de nootv.py.

En réalité le premier menu (la sélection du jour) n'était pas utile. En effet, le jour de la semaine n'a aucun intérêt, on tombe régulièrement sur des rediffusions. Cette nouvelle version récupère l'ensemble des émissions de la semaine et les affichent directement.

La version des émissions étant listé par jour de diffusion, c'est suffisant.

Exemple ... :

L'émission :
   1 : Associez-voo
   2 : Grand Tourisme
   3 : L'Agenda quotidien
   4 : L'Atelier des Chefs
   5 : Le Grand Rendez-Voo
   6 : Le Rendez-vous Politique
   7 : Météo
   8 : Sports
   9 : Watt's in
>>>(1) 
9

Version de l'émission :
   1 : Watt's in du 10 Décembre 2009
   2 : Watt's in du 19 novembre 2009
   3 : watt's in 17 Décembre 2009
   4 : watt's in 8Janvier 2010
>>>(4) 

Enfin, j'ai mis la licence "qui va bien" dans le script, à savoir la licence libre "DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE".

Pour récupérer le script ... : http://gitorious.org/nootv/nootv/blobs/raw/master/nootv.py

Bon Vootv.

22:08, dimanche, 21 février UTC

Emmanuel Garette (gnunux)

Pourquoi je n'irai pas à LibrexpOS 3

Ce billet est écrit à titre personnel et ne représente pas l'association COAGUL.

Je viens de prendre connaissance d'un courriel envoyé par, sauf erreur de ma part, le vice président de Ubuntu-dijon.

Ce courriel me fait changer d'avis sur l'événement Librexpos 3. Alors que j'avais décidé, initialement d'y participer, je viens de changer radicalement d'avis et décidé ... de rester chez moi (ou pas).

Moi j'ai pas envie de reproduire le coup du premier LibrExpOs ou ils sont arrivés, excusez moi de l'expression 'comme un éléphant dans un magasin de porcelaine' à 11h, au courant de rien, alors que tout était déjà installé et commencé.

Réinventer l'histoire de cette façon ... c'est un peu fort !

J'étais personnellement présent à l'heure pour tenir mon stand. Il était prêt à l'heure. Presque rien n'était installé en tout cas autour de moi. J'estime ne pas être arrivé comme "comme un éléphant".

De même, Tony et Jibux était présent. Ils sont arrivés pratiquement en même temps que moi. A l'heure.

Je devais et j'ai tenu le stand sur les "données libres". Tony devait installer le stand de COAGUL et Jibux, si mes souvenir sont bons, filmait l'événement.

Soit nous étions, aux yeux de cette personne, totalement inutiles et transparents. Soit, il y a volonté manifeste de dénigrer l'engagement des membres de l'association COAGUL.

En réalité, il fait référence au 4ème membre qui lui est arrivé, comme prévu, après l'heure d'ouverture. Il est évident qu'il est parfois difficile d'associer vie de famille, vie professionnelle et vie associative. Il faut parfois faire des compromis entre ces trois univers. Si un vice-président ne peux pas comprendre cela ...

Normalement Tony devait tenir le stand de COAGUL, jusqu'à l'arrivé de notre président. Je ne vois pas en quoi cela devrait être jugé choquant et irrespectueux. En réalité, le problème venait d'un malentendu entre Ubuntu-dijon et l'association COAGUL. Nous devions avoir une place durant l'événement. Bien. Mais nous ne pouvions nous contenter d'un bout de table dans le couloir. En effet, nous avions pris part, activement, à l'organisation de l'événement (place qui nous était normalement réservé).

Tony était venu se réfugier sur le coin de la table de mon stand (alors qu'il ne devait pas être là) plutôt que de rester seul dans le couloir. Mais il est évident que cet état de fait ne pouvait convenir au président de COAGUL. Il a donc installé le stand, comme cela était prévu lors de l'organisation.

Notre tord à uniquement était de ne pas avoir su nous imposer avant son arrivée.

Ce malentendu n'est pas passé du côté d'Ubuntu-dijon puisque deux ans après, nous voyons que cet petit épisode n'est toujours pas digéré.

Dans ce cadre, je ne vois pas comment je pourrais participer sereinement à nous nouvelle édition. Si la suspicion est toujours de mise si longtemps après. Je ne voudrais pas recréer un "incident diplomatique" pour des faits futiles que je pourrais commettre.

Mais à une unique condition, qu'ils viennent aux réunions de préparation.

C'est une façon un peu sommaire de proposer la co-organisation de l'événement. Pourquoi pas, mais il faudrait un définir les contours, les engagements et les intérêts réciproques AVANT de venir aux réunions d'organisation. Chose qui n'est pas à l'ordre du jour (dans tous les cas, je n'ai pas vu de telle demande).

Néanmoins, il est toujours possible de participer à l'événement sans être co-organisateur (je suis allé récemment présenter OpenStreetMap dans un événement organisé par Séquanux). Mais ... c'est exclu pour Ubuntu-dijon.

Nous voyons ici l'habileté de la rhétorique. Faire croire que COAGUL ne répond pas aux sollicitations ... qui n'ont jamais été formulé ! Si Ubuntu-dijon propose de co-organiser l'événement avec COAGUL, pourquoi pas, mais il faut qu'elle fasse des propositions claires pour que nous puissions les évaluer.

Tous les ateliers seront sous Ubuntu (ou Os proprio pour présenter que des applis libres tournent aussi dessus). Lors du premier, on a eu plusieurs visiteurs sont repartis, n'ayant pas compris pourquoi il y avait Ubuntu et Mandriva, et sont reparit avec le sentiment comme quoi c'était la guerre chez nous ....

Il est ironique de lire ces phrases alors qu'un peu plus loin il évoque la présence de la distribution Toutoulinux. Qu'est ce que c'est que Toutoulinux ? La distribution francisé de Puppy ... plus ou moins héritière de la distribution Slackware. Rien a voir avec Ubuntu donc.

C'est tout de même drôle de constater que cette règle ... ne s'applique qu'aux membres de COAGUL, et non au membre d'Ubuntu-dijon.

Comme le vice-président sait que la plupart des membres susceptibles de venir n'utilisent pas Ubuntu, créer une règle qu'on ne s'applique pas à soi même permet d'exclure de facto les autres ... sans le dire.

Cela montre, tout au plus, le sectarisme dont fait preuve l'association Ubuntu-dijon envers les autres distributions.

Edition : Comme on me le signal, Ubuntu-dijon est particulièrement bien veillante envers les "Os proprio", mais pas envers les distributions GNU/Linux.

Toujours ironiquement, je me rappelle avoir vu la plupart de l'après midi, sur un vidéo projecteur, une application privatrice avec des données fermées développée par un célèbre moteur de recherche. Alors que je présentais les données libres d'OpenStreetMap sur mon petit écran, pendant que les membres d'Ubuntu-dijon faisait la promotion du même type de données ... mais fermé.

Personnellement, je pense que le mélange privateur/libre est plus un risque de confusion pour les visiteurs que de montrer que le libre c'est l'innovation, la concurrence et la saine compétition.

c'est pas pour rien que ça fait 3 mois que je leurs envois des invits sur leurs mailing list.

Je n'ai vu aucun message sur nos listes de diffusion. En réalité, il existe des messages sur la liste du collectif bourguignon de promotion du logiciels libres. En effet, j'ai mis en place et héberges la liste "Bourguinux". Mais, j'ai toujours voulu (et c'est la même chose pour COAGUL) que toutes les sensibilités soient au même niveau sur cette liste.

Ne pas comprendre que la fédération des utilisateurs des logiciels libres est important, démontre bien que l'association Ubuntu-dijon est sectaire et ne désire pas s'ouvrir aux autres.

Conclusion :

Etant donné que le vice-président (et certainement d'autres dans l'association Ubuntu-dijon) sont sectaire aux autres distributions, que des faits anodins reste présent dans leur esprit (et que cela servent à calomnier notre association) et devant le peu d'ouverture je ne serais pas présent à Librexpos 3.

Il ne faut pas non plus oublier que, par simple esprit sectaire, les membres de Ubuntu-dijon ne viennent jamais aux événements, ateliers et réunions organisé par l'association COAGUL.

10:30, dimanche, 21 février UTC

février 10, 2010

Emmanuel Garette (gnunux)

Et de deux ...

Voici une nouvelle version de nootv. Pour rappel, nootv permet de visualiser les vidéos de la chaine locale de Dijon vootv avec des logiciels libres.

Avec le nom des vidéos, il est difficile de déterminer quelle vidéo nous voulons réellement voir.

Voici un nouvelle exemple de menu (plus clair) :

Version de l'émission :
   1 : Atelier des chefs n°2 Maquereau de David Zudas
   2 : Atelier des chefs n°1 Délice Maltée
   3 : Atelier des chefs n°4 Verrines chocolat et suprèmes de pamplemousse de Franck Pourrier
   4 : Atelier des chefs n°5 Gambos et tofu par  fumi mitera
   5 : Atelier des chefs n°3 Croustillant de veau de Cyril Riandet
   6 : Atelier des chefs n°6 Boeuf bourguignon

Pour télécharger la nouvelle version, c'est encore ici :

http://gitorious.org/nootv/nootv/blobs/raw/master/nootv.py

19:46, mercredi, 10 février UTC

février 07, 2010

Emmanuel Garette (gnunux)

Première version de nootv.py

Je viens de publier la première version de nootv.

Nootv est un script permettant de regarder les vidéos Vootv avec des logiciels libres (ce que ne propose pas le site officiel).

Pour fonctionner, il faut python 2.6 et flvstreamer ou rtmpdump d'installer.

Lancer le script :

python nootv.py

Il faut ensuite répondre à trois questions :

Le jour de l'émission :
   1 : Lundi
   2 : Mardi
   3 : Mercredi
   4 : Jeudi
   5 : Vendredi
   6 : Samendi
   7 : Dimanche
>>>(7)

(le jour par défaut correspond au jour d'exécution du script)

L'émission :
   1 : Grand Tourisme
   2 : Le Grand Rendez-Voo
   3 : Sports
   4 : L'Atelier des Chefs
   5 : L'Agenda quotidien
>>>(1)

et enfin :

Version de l'émission :
   1 : GRV-604-0030485AE30C13_3
   2 : GRV-604-0030485AE30C15_2
   3 : GRV-604-0030485AE30C80
   (...)
   31 : GRV-604-0030485AE30C24_1
>>>(31)

La version émission par défaut correspond à la dernière émission de la catégorie.

L'émission est enregistrer dans le fichier "nootv.flv". Vous pouvez regarder l'émission avec votre lecteur préféré (mplayer, totem ou vlc par exemple) même si le téléchargement n'est pas fini.

Tout n'est pas encore parfait (surtout le dernier menu est particulièrement illisible) mais cela semble fonctionner. J'attends les retours d'expérience pour l'améliorer.

Pour télécharger, c'est ici :

http://gitorious.org/nootv/nootv/blobs/raw/master/nootv.py

15:35, dimanche, 07 février UTC

février 06, 2010

Pierre Chifflier (pollux)

Creating a live cd for open source SIM Prelude and Suricata

I have started to work on a Live CD for Open Source tools like Prelude SIEM, and software like Suricata, Snort, OpenVAS to send alerts. The goal is to easily test these tools, register new agents, get some alerts and be able to correlate them etc. I also want to add some visualization tools, so this CD could maybe become a reference for security alert detection and report.

Prewikka

First, a few points on applications used:

  • Debian Live for building the CD. It's very easy, it's based on Debian, and it allows me to re-use some work I've done
  • Suricata IDS, which is a very promising project
  • Snort IDS, with the free signatures
  • OpenVAS to be able to generate alerts
  • Prelude SIEM is the key point: suricata, snort, syslog etc. will send alerts to Prelude, which has a database, a correlator, a web interface (Prewikka) etc.
  • Standard useful tools: nmap, scapy, wireshark, p0f, etc.

This first version is based on Debian Lenny and arch x86. Everything is based on packages (.debs) to make it easier to maintain, upgrade versions or add patches: most of the time, I just have to rebuild packages from squeeze or sid.

The build tools are:

  • Debian live (package name is live-helper, I'm running sid/unstable here)
  • About 2-3 GB of free space (including cache, chroot and image).
  • A local Debian repository for custom packages (I use reprepro)
  • (optional) a chroot or pbuilder for rebuilding packages (I use cowbuilder).

Building the CD

You need to be root for that. We'll assume you have created a container directory (for ex. LIVE_SIEM) and extracted the sources in that directory.

Configuration is done in the config subdir. Added packages are just named in packages lists (files in the config/chroot_local-packageslists/ directory). D-L is nice, since it respects dependencies so you add the name of the package and it should be enough.

Default window manager is LXDE, to have a good compromise between size, speed and features. You can change that in file config/chroot.

Default keyboard is qwerty

Just run:

* lh clean
* lh build

and wait for a few minutes. The first command cleans up the chroot and binary directories (keeping the cache), and the second will rebuild completely the cd (download required packages, install them in chroot, run hooks, create compressed image etc.). Clearly, this is not the fastest way of making changes and quickly rebuilding the ISO, and it can be quite boring if you have to test small changes .. Using individual helpers (See this page) may help.

After that, you should have a file called binary.iso in the directory.

Download

I've uploaded a very preliminary version of the iso here: http://live.nufw.org/dl/siem-live-20100205.iso

Edit

Download page is now available : http://www.prelude-technologies.com/dl/ The homepage is in French for the moment, I'll add the english version ASAP.

Changes: add GLPI, OCS Inventory, Prelude Notify and a basic homepage

This iso has:

  • A qwerty keyboard
  • Prelude + syslog + snort configured and installed, started on boot
  • OpenVAS (server and client) installed but not started (due to the number of plugins, server can take several minutes to start ..)
  • Suricata 0.8 installed and basically configured to use all snort signatures. You have to start it manually, for ex.
sudo suricata -c /etc/suricata/suricata.yaml -i eth0

and look in /var/log/suricata/*.log for alerts

  • other tools like Scapy (hint: use ipython to use it in interactive mode), OpenSCAP libraries, etc.

Test

I don't like to reboot, so to test I use VirtualBox or qemu:

qemu -net tap -net nic -boot d -cdrom {build-root}/binary.iso -m 256

During the boot sequence, the live CD will automatically configure applications:

  • create databases
  • setup a default working configuration for most applications
  • create and register Prelude profiles for all applications supporting it
  • start X, and open a browser on the local Prewikka (default login is admin/admin)

SIEM live boot

Prewikka

What to do after boot ?

The live cd is running a syslog server, you can configure some servers / equipments to send logs and they will automatically be analyzed by Prelude.

You can connect to the http server to see the Prewikka interface (default login/pass is admin/admin).

To change the keyboard layout at runtime, use setxkbmap kb, where kb is the keyboard layout to use (for ex fr or de).

Next step ?

I'm waiting for ideas / contributors / whatever :) I'll update suricata with a recent version as soon as it will have support for Prelude, and other tools. Just reply to this post (or contact me) if you have any suggestion.

Help would be appreciated to add visualization tools etc.

Edit

Git repository is up !

22:12, samedi, 06 février UTC

février 04, 2010

Emmanuel Garette (gnunux)

Vootv ... oui ... mais nous ?

Vootv est une chaîne de télé local lancé fin de l'année dernière.

Elle est accessible sur la TNT et sur un site Internet. Problème, je n'ai pas la TNT (ben oui ...) et le site internet est complètement en flash et ... ne marche pas du tout avec swfdec.

Bien.

J'ai toujours un navigateur avec le plugin flash propriétaire disponible au cas ou.

Je peux enfin accéder aux grilles de programme (http://www.vootv.fr/grille.php) et aux vidéos flash.

Evidement, je ne suis pas satisfait du résultat (consommation processeur excessive, utilisation d'un plugin flash propriétaire, ...).

J'analyse donc un peu tout cela ...

D'abord il s'agit vraisemblablement d'un protocole rtmp(|t|s) qui est utilisé.

Reflèxe de base ... lancer un "ngrep rtmp". J'obtiens rapidement :

T 192.168.0.12:46006 -> 91.121.132.131:80 [AP]
  F(V.8.Q`..8..)%4...4.....bN....bsp...K.M}..0.....F..f/..m=.!...r.....o.D.0..........R.X.......X........connect.?........
  ..app...vod/vootv..flashVer...LNX 10,0,42,34..swfUrl..,http://www.vootv.fr/visionneuse/visio_v5.swf..tcUrl... rtmpt://91
  .121.132.131/vod/vootv..fpad....capabilities.@.........audioCodecs.@.........videoCodecs.@o........videoFunction.?......
  ....pageUrl..,http://www.vootv.fr/video.php?key=rY338EG7dQ..objectEncoding.@..........  

Super ! Voilà pas mal d'informations :

  1. c'est le protocole rtmpt qui est utilisé (déjà ce n'est pas le rtmps ... bonne nouvelle) ;
  2. le tcUrl est : rtmpt://91.121.132.131/vod/vootv.

Je sors donc mon "flvstreamer_x86" favoris ... Mais il me dit :

flvstreamer_x86 -r "rtmpt://91.121.132.131/vod/vootv/vootv/"
[...]
"ERROR: Connect, failed to connect socket. Error: 111"

Etrange, je ne vois jamais ce genre de message. Avec wireshark, je m'aperçois rapidement que tous le trafic est sur le port 80.

Essayons ...

flvstreamer_x86 -r "rtmpt://91.121.132.131/vod/vootv/vootv/" -c 80
[...]
Starting download at 0.000 kB

Bingo !

Il ne reste plus qu'à trouver le "Playpath".

Un petit "ngrep play" me donne :

T 192.168.0.12:42351 -> 91.121.132.131:80 [AP]
  POST /send/SrAmTv0dVQKGY3jp/7 HTTP/1.1..Host: 91.121.132.131..Accept: */*..User-Agent: Shockwave Flash.Connection: Keep-
  Alive.Cache-Control: no-cache..Content-Type: application/x-fcs..Content-Length: 73..........=.........play.............v
  ootv/associez_voo_003............@.....     

Donc le playpath est .. "vootv/associez_voo_003".

J'ai donc tout ! Et ca fonctionne :

flvstreamer_x86 -x -r "rtmpt://91.121.132.131/vod/vootv/vootv/associez_voo_003" -c 80 > vootv.flv

Reste une problématique ... comme récupérer le playpath des émissions ?

Pour l'instant ... je n'en sais rien.

Mise à jour : J'ai développé un script pour pouvoir regarder les vidéos : http://www.gnunux.info/dotclear2/index.php?post/2010/02/07/Premiere-version-de-nootvpy

23:10, jeudi, 04 février UTC

janvier 21, 2010

Emmanuel Garette (gnunux)

J'y serais !

Bon, cela n'est pas vraiment une surprise, mais je serais dans la bande annonce de Durian :

http://durian.blender.org/wp-content/content/filmcredits-dvd-durian.html

Et vous ?

21:11, jeudi, 21 janvier UTC

janvier 20, 2010

Emmanuel Garette (gnunux)

M, M., Mr, Mr., ... ?

Lors de la rédaction de la lettre mensuelle de COAGUL, l'utilisation de l'abréviation "Mr." pour Monsieur me semblait bizarre. En effet, j'ai toujours entendu dire qu'en français, l'abréviation était "M." et non "Mr.". Cette dernière étant l'abréviation Américaine.

En réalité, il faut bien écrire "M.". En Américain c'est "Mr" (sans point).

Il est possible d'écrire Mr également (comme on écrirait Mme) mais c'est visiblement moins utilisé.

La liste complète des abréviations est disponible sur l'excellent (encore une fois) wikipédia :

http://fr.wikipedia.org/wiki/Liste_d%27abr%C3%A9viations_courantes_en_fran%C3%A7ais#M

22:15, mercredi, 20 janvier UTC

Emmanuel Garette (gnunux)

COAGUL réagit au publi-reportage de la ville de Dijon

COAGUL a envoyé une lettre au maire de Dijon pour exprimer l'exaspération des membres suite à la diffusion d'un publi-reportage pour un système privateur. Plus d'informations dans la lettre : http://www.coagul.org/spip.php?article826.

A titre personnel, je suis allé à la réunion de quartier de présentation du budget. M. le maire était présent en personne et répondait aux questions.

Je l'ai donc questionné sur ce sujet. Il ne paraissait pas au courant de l'existence de ce publi-reportage.

J'ai posé 3 questions (retranscription de mémoire) :

- Est-ce que la ville soutien réellement la sortie de Windows 7 ?

Réponse : il doit voir avec ces services car n'est pas au courant. Mais a priori "non".

- Est-ce que la ville fait ou va faire d'autre publi-reportage ?

Réponse très clair : non

- Est-ce que la ville va contrebalancer ce publi-reportage en parlant des logiciels libres ?

Réponse : il s'est dit, bien éventuellement prêt a en discuter mais sur le principe "oui".

J'ai fini en lui disant que l'association dans laquelle je suis membre allait lui envoyer une lettre à ce sujet. Il a promis de regarder la question et de répondre.

A suivre.

22:00, mercredi, 20 janvier UTC

janvier 19, 2010

Eric Leblond (regit)

Quand ça fonctionne tout seul

Je venais d’avoir l’idée d’une modification d’ulogd2 pour réaliser la chose pratique d’avoir deux sorties sur la même stack. J’ai donc rajouté pour tester la stack suivante à mon fichier ulogd.conf :

stack=log2:NFLOG,base1:BASE,ifi1:IFINDEX,ip2str1:IP2STR, \\

print1:PRINTPKT,sys1:SYSLOG,mark1:MARK,emu1:LOGEMU

Les tests ont montré que c’était déjà fonctionnel ! D’un coup, la neuvième de Beethoven par Harnoncourt est encore plus grandiose.

01:15, mardi, 19 janvier UTC

décembre 31, 2009

Eric Leblond (regit)

Dan Brown est un génie

Et bien oui, dans Da Vinci Code, il a quand même réussi à passionner le monde avec l’histoire d’un mec super intelligent qui cherche à faire un test de filiation mère-fille pour prouver une paternité.

Il faut être génial pour faire passer un truc pareil. Ou alors, on est tous super stupide…

PS: bonne année 2010

09:06, jeudi, 31 décembre UTC

décembre 30, 2009

Eric Leblond (regit)

Vers une nouvelle agora ?

Récemment, le Nouvel Observateur a réalisé un dossier intitulé « Internet en procès ». Ce dossier a semble-t-il été motivé par l’apparition de plus en plus fréquente d’informations qui font suffisamment de bruit sur Internet pour devoir être reprises par les médias classiques. Le dossier est intéressant mais l’avis des partisans d’un contrôle d’internet me fascine. L’éternel tentation de la censure est toujours bien présente. On peut certes comprendre qu’au vu des affaires récentes (Jean Sarkozy ou Frédéric Mitterand) une envie d’étouffer la contestation naisse dans l’esprit de certaines personnes.

Pour moi, cette envie est d’autant plus forte que la source de l’information n’a pas de visage, ou plutôt qu’elle n’a pas de visage identifiable. Twitter est l’outil par excellence de cette propagation virale et presque anonyme de l’information. Celle-ci se distingue complètement de ce qui se faisait dans les médias standards où tout finit par prendre un visage (le porte parole d’un collectif quel qu’il soit par exemple). Et s’il n’y a pas de visage c’est par un sondage (qui traite de réponses à des questions formulées par le média lui-même) que la voix du peuple s’exprime. Dans cette fabrication de l’information, la communication se fait toujours d’un individu identifié vers le grand nombre. Or, qui dit identification, dit possibilité de contrôle (par contre direct ou par pression par exemple) et c’est pour cela en bonne partie que les médias traditionnels n’effraient aucun homme politique.

Internet fait d’autant plus peur que 2009 a été l’année de l’émergence de Internet comme lieu politique. De nombreux événements ont été architecturés ou conditionnés par Internet :

  • L’élection de Barack Obama qui a fait une campagne utilisant intelligemment les moyens offert par Internet
  • La contestation en Iran (Internet intervenant notamment pour la diffusion des images et pour la synchronisation des manifestants)
  • La manifestation anti-berlusconi du 5 décembre à Rome organisée par des blogueurs

Ces trois événements relèvent du champ de la politique mais Internet est aussi l’endroit de toutes les contestations. J’en tiens pour preuve que Rage Against The Machine a été le numéro 1 de Noël des charts anglais avec « Killing in the Name of » une chanson de 18 ans d’age. L’origine de ce fait inédit est une volonté d’échapper à la « dictature de X-factor » qui s’est matérialisé par un groupe Facebook dont la popularité a explosé en quelques jours. Là aussi, pas de leader charismatique de la contestation mais un intérêt commun qui se nourrit des contributions de chacun et renverse une institution (ici la programmation médiatique de la prise de la tête des charts par le vainqueur de X-factor). Cette histoire est certes anecdotique mais elle montre que l’influence des médias classiques (ici comme prescripteur) peut-être contrée par un mouvement né spontanément sur Internet.

L’équilibre des forces semble être sur le point de basculer. Internet a maintenant la potentialité de devenir une nouvelle agora globalisée, unique et multiple à la fois. Un lieu où une information plus fluide rend possible un échange des idées et un refus de l’arbitraire. Un lieu où des volontés particulières se concertent, se concentrent et font entendre leur voix. Un lieu où des « gus dans un garage » peuvent changer des lois.

GUG !

02:03, mercredi, 30 décembre UTC

décembre 27, 2009

Victor Stinner (haypo)

Cette grosse plaie de PulseAudio

PulseAudio est un serveur sonore visant à simplifier la lecture de son sur le bureau. Il remplace le vieux Esound (ESD). Il permet d'envoyer le son sur les hauts parleurs d'un autre ordinateur, d'utiliser plusieurs cartes son, prend en charge les oreilettes bluetooth, gère la consommation d'énergie, etc. Sur le papier, ça semble super : relire Why you should care about PulseAudio (and how to start doing it) pour s'en convaincre. Par contre, en pratique c'est une grosse plaie : PulseAudio rajoute une couche entre les applications et ALSA qui consomme du temps processeur, de la mémoire, et (dans mon cas) dégrade la qualité du son (rajoute des petits pics sonores).

Problèmes liés à PulseAudio sur un Eee PC (Fedora 11)

En particulier, sur mon Eee PC (1101 HA) équipé de Fedora 11 : mplayer est incapable de lire une vidéo (le film Sympathy for Lady Vengeance) bien que mon processeur graphique (la célèbre puce Poulsbo) accélère grandement le décodage de l'image. Dans les logs noyaux (/var/log/messages), j'ai pu voir que PulseAudio tente de rattraper la situation :

Nov 15 23:07:57 maggie pulseaudio[6894]: alsa-sink.c: Increasing minimal latency to 1,00 ms
Nov 15 23:16:27 maggie pulseaudio[6894]: alsa-sink.c: Increasing minimal latency to 2,00 ms
Nov 15 23:16:50 maggie pulseaudio[6894]: alsa-sink.c: Increasing minimal latency to 4,00 ms
Nov 15 23:20:43 maggie pulseaudio[6894]: alsa-sink.c: Increasing minimal latency to 8,00 ms
Nov 15 23:20:48 maggie pulseaudio[6894]: alsa-sink.c: Increasing minimal latency to 16,00 ms
Nov 15 23:21:19 maggie pulseaudio[6894]: alsa-sink.c: Increasing minimal latency to 26,00 ms
Nov 15 23:22:03 maggie pulseaudio[6894]: alsa-sink.c: Increasing wakeup watermark to 15,99 ms
Nov 15 23:37:22 maggie pulseaudio[6894]: alsa-sink.c: Increasing minimal latency to 36,00 ms
Nov 15 23:37:37 maggie pulseaudio[6894]: alsa-sink.c: Increasing wakeup watermark to 25,99 ms
Nov 15 23:43:03 maggie pulseaudio[6894]: alsa-sink.c: Increasing minimal latency to 46,00 ms

Toutes à 5 à 10 minutes, le son finit par sauter et mplayer se fige. J'ai trouvé un contournement : revenir un peu en arrière puis aller un peu en avant (touches gauche puis droite).

Solution : passer directement par ALSA

Après trois coupures dans mon film (c'est-à-dire après un quart d'heure), j'ai fini par me décider à le couper et à chercher à résoudre ce problème énervant. J'ai vu que Mplayer utilisait PulseAudio. J'ai alors essayé l'option « -ao alsa » (-ao : Audio Output), mais mplayer utilisait quand même PulseAudio. Bizarre.

En regardant la configuration ALSA, j'ai vu dans le fichier /etc/alsa/pulse-default.conf :

# Let's make it the default!
pcm.!default {
    type pulse
    ...
}

Donc PulseAudio est configuré pour être le pilote par défaut. J'ai supprimé ce fichier et j'ai redémarré la machine (vu que PulseAudio a trituré ALSA, j'ai préféré tout réinitialiser).

Après le redémarrage, j'ai relancé mon film et j'ai pu le voir jusqu'au bout sans la moindre coupure !

Utilisation du processeur

  • mplayer -ao pulse : le processus pulseaudio utilise 20% du CPU, et au total 20 à 25% du CPU est utilisé
  • mplayer -ao alsa : le processus pulseaudio n'est plus solicité (et n'est donc plus visible dans top), et au total 5 à 10% du CPU est utilisé

Réglage du volume

Avec PulseAudio, alsamixer (et autres mixeurs de sons) n'affiche qu'une seule sortie. Il faut utiliser « alsamixer -c 0 » pour que je puisse avoir accès à toutes les sorties. En particulier, ça me permet de régler le volume du casque, chose nécessaire car le volume est insuffisant.

Problèmes liés à PulseAudio qu'ont d'autres utilisateurs

Lors de la migration à PulseAudio, pas mal d'applications ne fonctionnaient plus (le son en tout cas). Flash et Skype supportent aujourd'hui PulseAudio (Flash 10+ et Skype 2.1+), par contre Audacity ne le supporte toujours pas. Les jeux utilisant la bibliothèque SDL (ex: l'excellent xmoto) ont également des problèmes. Correction : SDL 1.2.12 a un pilote natif pour PulseAudio.

Complaintes :

Le démon PulseAudio a besoin de tourner en priorité temps réel (SCHED_FIFO). Or il faut être root pour cela. Une faille de sécurité dans PulseAudio a déjà servi pour exploiter des failles du noyau Linux (2.6.30, 2.6.31, 2.6.32), notamment via la boîte à outils de Brad Spengler.

Conclusion

Sympathy for Lady Vengeance est un excellent film ! Il fait parti de trilogie sur la vengeance du sud-coréen Park Chan-wook. La fin est bien gore, j'adore :-)

Pour PulseAudio, c'est plutôt mauvais signe étant donné qu'il est activé par défaut sur Ubuntu, Fedora et Mandriva. Bien que j'ai du mal à voir l'intérêt de PulseAudio, il doit bien en avoir un pour que les distributions bureaux majeures l'activent par défaut. Par contre, il serait bon de donner le choix de désactiver complètement PulseAudio le temps que le code soit stabilisé.

18:48, dimanche, 27 décembre UTC

décembre 06, 2009

Victor Stinner (haypo)

Nettoyage de clavier

Pour nettoyer un clavier, la méthode la plus simple est de secouer le clavier à l'envers :

(Alternate method: convince them to pretend it's an Etch-a-Sketch and try to erase it.)

Ça marche pas trop mal, mais quand le clavier est maltraité pendant plusieurs années, il en faut un peu plus. J'ai complètement démonté mon clavier pour tenter de débloquer la touche S qui s'était coincée durant le nettoyage. La quinzaine de vis de la coque en plastique était cachées derrière des bouts de caoutchouc (sûrement un message pour me dire « non, ne le fait pas ! »). Et à l'intérieur il y a encore un grand nombre de vis.

J'ai trouvé une grosse touffe de cheveux et une poignée de miettes (miam !). Malheureusement, vu l'état du clavier, je me suis dit qu'il serait plus rapide d'en racheter un autre ...

En même temps, pas mal de des lettres étaient effacées, ce qui ne facilitait pas la frappe à une main (ex : avec un bébé dans les bras). Peut être que ça va enfin me motiver à apprendre à utiliser mon clavier bépo !

14:03, dimanche, 06 décembre UTC

décembre 04, 2009

Victor Stinner (haypo)

Compiler PyPy trunk en activant le compilateur à la volée (JIT)

PyPy est une interprète Python écrit en Python. Il implémente Python 2.5 et offre quelques fonctionnalités supplémentaires. Je m'intéresse surtout au compilateur à la volée, car il laisse espérer une vitesse d'exécution des programmes Python bien meilleure. Lire ces benchmarks du blog PyPy pour se faire une idée :

Prérequis

  • Linux
  • Processeur 32 bits (le compilateur à la volée ne gère pas encore le 64 bits)
  • 2 Go de mémoire (1,5 Go semblent suffisant selon ce que j'ai lu)
  • Une bonne heure pour la compilation

Téléchargement

svn co http://codespeak.net/svn/pypy/trunk/ pypy-trunk

Installer les dépendances

Sous Debian / Ubuntu :

sudo apt-get install libffi-dev libbz2-dev libexpat1-dev libexpat1-dev

La compilation proprement dite

cd pypy-trunk/pypy/translate/goal
python translate.py -Ojit

Prévoir 60 minutes sur un CPU Intel @ 3 GHz et 2 Go de mémoire. Pour faire patienter, PyPy dessine de jolies fractales : C

Le résultat est le programme testing-1 (environ 18 Mo) dans le dossier /tmp/usession-trunk-0/testing_1/. Je vous conseille de le déplacer le fichier testing-1 à la racine du projet PyPy sous le nom pypy-c-jit.

C'est prêt !

Voilà, vous avez un PyPy prêt à l'emploi. Vous pouvez jouer avec l'option --jit :

$ ./pypy-c-jit --help
usage: /home/haypo/prog/SVN/pypy-trunk/pypy-c-jit [options]

options:
 (...)
 --jit debug=N              low-level JIT parameter (default 2)
 --jit hash_bits=N          low-level JIT parameter (default 14)
 --jit inlining=N           low-level JIT parameter (default False)
 --jit optimizer=N          low-level JIT parameter (default 1)
 --jit threshold=N          low-level JIT parameter (default 1000)
 --jit trace_eagerness=N    low-level JIT parameter (default 200)
 --jit trace_limit=N        low-level JIT parameter (default 10000)

Un sprint PyPy est prévu fin janvier 2010 (dans un chalet en Suisse) pour finaliser la version 1.2 qui devrait donc sortir peu après (je l'espère).

Unladen Swallow

J'attend aussi beaucoup d'Unladen Swallow qui a pris une autre voie. C'est un fork de CPython 2.6 qui utilise LLVM pour la boucle d'évaluation du bytecode Python. LLVM intègre notamment un compilateur à la volée. Contrairement à PyPy qui redéveloppe tout depuis zéro dans leur coin, LLVM est un projet très populaire utilisé par Apple pour ses effets graphiques, dans les pilotes 3D Xorg récents (Gallium), pour compiler des programmes en C, etc. Non pas que les développeurs de PyPy soient moins bons, j'ai plus confiance dans un projet (LLVM) utilisé par un grand nombre des personnes pour des usages très différents. C'est un gage de pérénité, et LLVM semble plus actif.

D'ailleurs, PyPy avait un backend LLVM pendant un temps, mais ils l'ont abandonné. Il me semble que la raison avancée par les auteurs de PyPy était que LLVM n'était pas adapté à Python, langage trop dynamique.

Unladen Swallow a aussi l'avantage d'être 100% compatible avec CPython... vu que c'est un fork de CPython, notamment au niveau des modules tiers écrits en C (utilisant l'API C de Python) comme PyQt ou numpy.

00:24, vendredi, 04 décembre UTC

décembre 03, 2009

Victor Stinner (haypo)

Installer Fedora 11 et 12 depuis une clé USB

Ce bref article explique le minimum pour installer Fedora 12 sur un Eee PC blanc à partir d'une clé USB (vu qu'un Eee PC blanc ne dispose pas de lecteur de CD-Rom). Mais vu les galères que j'ai eu avec Fedora 12 et Poulsbo, j'ai fini par installer Fedora 11. Cet article explique donc aussi une procédure pour installer Fedora 11 à partir d'une clé USB. Les deux installations se basent sur la méthode « Netinstall » qui utilise un petit média pour le boot, puis télécharge les paquets depuis Internet.

Prérequis

  1. Un Eee PC blanc modèle 1101HA, chipset Poulsbo, sinon ça marche pas (mais non je déconne !)
  2. Une clé USB d'au moins 200 Mo que vous pouvez formatter (perdre toutes les données écrites sur la clé)
    • N'importe quel média de stockage USB devrait faire l'affaire. Évitez tout de même de formatter la partition FAT de votre appareil photo numérique : une clé USB 4 Go coûte 8€ en supermarché (voir moins) !
  3. Choisir un miroir Fedora près de chez vous
    • ATTENTION : si vous choisissez un miroir FTP, assurez-vous qu'il supporte le téléchargement partiel (commande FTP "REST") : Fedora 12 l'exige (j'ai ouvert un rapport de bug pour Fedora 12 Beta, mais il n'a pas pu être corrigé avant la version 12 finale)
  4. Une bonne heure devant vous

Création puis boot de la clé USB

  1. Télécharger Fedora-12-Beta-i386-netinst.iso depuis votre miroir ou depuis le site principal
  2. Taper la commande dd if=Fedora-12-Beta-i386-netinst.iso of=/dev/sdX où sdX est le périphérique de votre clé USB. Vérifiez trois fois que sdX est bien votre clé USB, avec fdisk ou cfdisk par exemple, sous peine de perdre tous les données de votre disque dur !
  3. Au démarrage de l'Eee PC blanc, taper la touche Echappe sans arrêt pour afficher le menu de sélection du média sur lequel booter (disque dur, clé USB, ...) : choisir USB:
  4. Le menu de boot Fedora s'affiche : choisir Install or upgrade

Installation Fedora

  1. Choix de la langue : French
  2. Choix du clavier : fr-latin9
  3. Choix du média d'installation : ne pas choisir /dev/sdXY, faire précédent (sûrement une blague des développeurs de Fedora pour empêcher les débutants d'installer Fedora), puis :
    1. Choisir la méthode "URL"
    2. Interface réseau : prendre eth0 (carte ethernet)
    3. [x] Activer le support IPv4 (*) Dynamic IP configuration (DHCP)
    4. Pour l'URL, chercher dans votre miroir Fedora le chemin vers le dossier "os" de l'architecture et de la version de votre choix : (...)/releases/test/12-Beta/Fedora/i386/os/. Exemple avec le miroir Free :
ftp://ftp.free.fr/mirrors/fedora.redhat.com/fedora/linux/releases/test/12-Beta/Fedora/i386/os/
  1. À partir de là, c'est l'installeur Fedora classique qui est bien foutu et explique bien ce qu'il y a à faire. Si vous êtes perdus, consultez la documentation Fedora (en anglais pour le moment)

Note : le miroir Free ne gère que FTP et ne supporte pas le téléchargement partiel. Il n'est donc pas utilisable pour installer Fedora !

Échecs successifs

Comme j'ai pas de bol, j'ai du m'y reprendre à dix fois (au moins) pour arriver à installer Fedora 12...

  • Je n'arrivais pas à booter sur la clé USB : j'ai mis du temps à deviner qu'il fallait utiliser la touche Echappe au boot. J'avais tenté de changer la configuration du BIOS : j'ai mis le média "Removable device" en premier, mais ça ne fonctionne pas pour l'USB !?
  • J'ai tenté de lire le contenu de l'image ISO, en extraire install.img, et écrire install.img sur la clé USB (dd if=install.img of=/dev/sdX)... Mais ça ne fonctionne pas, ce n'est pas la bonne méthode. Conseil : ne pas lire de vieux billets de blogs.
  • À l'installation, j'ai choisi le média /dev/sda1 comme source d'installion. Or pour une Netinstall, il faut faire précédent et choisir "URL"... La vieille feinte de l'ours !
  • J'ai pris le miroir Free, or le serveur FTP de Free ne supporte pas l'extension "téléchargement partiel" (commande FTP "REST"). Du coup, l'installeur graphique a échoué lors qu'il a téléchargé le 1er paquet RPM...

Créer une clé USB bootable pour installer Fedora 11

Créer une clé USB bootable pour Fedora 11 n'est pas possible depuis Debian (pas facilement). Il vaut mieux avoir une Fedora sous la main pour créer la clé USB.

  1. Télécharger Fedora-11-i386-netinst.iso
  2. Sous Fedora, installer les paquets livecd-tools et syslinux (sudo yum install livecd-tools syslinux)
  3. Créer une partition ext3 (/dev/sdXY) de 300 Mo sur la clé USB (ex: avec gparted)
  4. Marquer la partition /dev/sdXY bootable. Exemple avec parted :
$ sudo parted /dev/sdX
(parted) toggle Y boot
(parted) quit
  1. Enfin, taper la commande : sudo livecd-iso-to-disk Fedora-11-i386-netinst.iso /dev/sdXY

Note : Remplacez X et Y par le nom et le numéro de partition de votre choix.

--

Lire aussi Installer Ubuntu Ibex depuis un disque dur USB externe.

23:54, jeudi, 03 décembre UTC

novembre 21, 2009

Victor Stinner (haypo)

Analyse de spam (commentaires de ce blog) : sites chermou.org et denjala.com

Avec mon antispam maison (NIH powa !), je filtre une grosse partie du spam (dans les commentaires), mais quelques uns passent à travers le filtre. La plupart sont ponctuels, mais un spam persiste dans la durée : chermou. Cet article tente de comprendre l'insistance de ces spams (qui visent à amener du trafic vers certains sites précis), notamment en analysant le contenu et la stratégie commerciale de ces sites.

Analyse des spams

Le mardi 29 septembre 2009 à 02:40
Email : 
Site : http://www.denjala.com
@IP : 41.249.40.88
mais pourquoi les americains sont si fort et dans tout les domaines!!!

L'auteur des messages est différent pour chaque message (bomi41, s3aidia, tafrawte, windman, ...). Par contre, la même adresse de courriel est utilisée pour plusieurs messages durant plusieurs semaines (mais sur plusieurs mois, il y a donc plusieurs adresses différentes). Le contenu des messages est en français (plutôt correct) et semble avoir un rapport avec l'article (peuvent passer inaperçu si on n'est pas attentif).

Le plus intéressant reste les noms de domaine (les sites vers lesquels ces spams tentent d'amener du trafic) :

  • www.jeseraimillionnaire.com
    • Crée en juin 2008 (voir plutôt en 2006 ?)
    • Registrar: ENOM, INC.
    • (autres informations : cachées)
  • www.twinibila.com
    • Crée le 16 août 2007
    • Propriétaire : Leblanc SARAH
    • Registrar : ONLINE SAS
  • www.chermou.org
    • Propriétaire : Mourad Chermou
    • Registar : Gandi
    • Crée le 24 décembre 2008
  • www.lannuairegrand.com
    • Crée le 26 février 2009
    • Propriétaire : Mourad Chermou
    • Registar : Espace 2001
    • Adresse postale : Mohammedia, Maroc
  • www.lannuairesport.com
    • Propriétaire : Mourad Chermou
    • Adresse postale : Mohammedia, Maroc
    • Registar : Espace 2001
    • Crée le 25 février 2009
  • www.denjala.com
    • Propriétaire : Mourad Chermou
    • Registar : Gandi
    • Crée le 21 mai 2009

Sur mon blog, c'est essentiellement chermou.org et denjala.com que j'ai croisé. Bon mais sinon, que vendent ces sites ?

Présentations des différents sites

Denjala.com ressemble à un annuaire très généraliste de sites webs : 2000 thèmes divers allant de Dictionnaire à Tissage en passant par Perruque. Il propose d'acheter une « page » pour 50€. Le contenu pornographie est interdit. Si j'ai bien compris, une « page » est une annonce publicitaire. La page d'accueil contient un emplacement Google Ads, et chaque page contient deux emplacements Google Ads : un bandeau textuel (en espagnol) et une image (bannière horizontale).

C'est là que je ne comprend pas. Le seul contenu proposé par denjala.com est de la publicité ? Quel est le public visé : des annonceurs, des internautes égarés, voir carrément des fans de publicité sur Internet ? En tout cas Mourad espère gagner 100.000€ avec son affaire. L'annuaire contient quelques entrées, mais je ne sais pas si les webmestres de ces sites ont payé pour être enregistrés.

Lannuairesport.com est également un annuaire, dédié au sport. Il comporte un emplacement de publicité Google Ads.

Lannuairegrand.com est un « annuaire de tous les meilleurs sites du web francophone ». L'inscription d'un site est manuelle et gratuite. Il y a un bandeau (image) Google Ads sur la page d'accueil, et deux bandeaux textuels sur chaque page.

chermou.org est un site de question/réponse. La page d'accueil contient des liens vers les questions résolus et non résolues, et un lien pour poser une question. Juste sous le menu, il y a une ligne d'annonces Google sous forme textuelle sur une seule ligne « Annonces Google Reponse Question Eau Poser Loisirs 92 Loisirs En » (les mots clés me semblent assez étonnants). Cliquer sur un des mots amène à une page qui liste des publicités Google (textuelles avec un grand bandeau en bas). Il semble que des personnes utilisent ce site pour poser des questions, et répondent aux autres questions. Le concept de site question/réponse n'est pas nouveau, il existe par exemple Yahoo! Questions/Réponses ou l'oracle Wikipédia.

Google Ads

Si j'ai bien compris, les sites chermou visent à faire gagner de l'argent à son auteur, grâce à la publicité (Google). La question que je me pose donc est « Google Ads, combien est-ce que ça rapporte ? ». Problème : La charte interdit de dire combien on gagne... Les mots clés sont vendus aux enchères chaque jour, de 2 cents à plusieurs dollars par clic. Une rémunération est perçue à chaque clic sur une annonce. Les annonces sont choisies selon le contenu de la page web où les annonces sont placées. Par contre, il faut gagner au moins 100$ pour avoir le premier versement : « Les gains vous sont reversés tous les mois par chèque ou virement bancaire à partir du moment où vos gains dépassent la somme de 100$. Sinon, ils sont reportés au mois suivant et ainsi de suite. » Pour en savoir plus, lire par exemple googlecash.

Mourad Chermou achète également des mots clés vers son site. Du coup, cliquer sur un pub menant vers son site va donc lui coûter des sous.

Ce qui m'étonne surtout, c'est les formes que prennent les publicités sur les sites que j'ai cités. Publicités pas très attirantes, parfois en espagnol, parfois uniquement sous forme de quelques mots qui me semblent aléatoires... La logique est difficile à suivre.

jeseraimillionnaire.com

En juin 2008 (ou 2006 ? j'ai pas trouvé de date exact), Mourad avait également lancé le site jeseraimillionnaire.com : Comment devenir millionnaire sans bouger... (novembre 2006). Exemple de spam pour ce site : « Paris 28 juin 2008. Je m'appelle chermou mourad, j'ai 31 ans je suis marocain je vie depuis 5 ans en france sans papiers, je suis venu en france pour terminer mais études mais j'ai pas terminé... J'ai créé ce site pour être millionnaire et retourner chez moi pour mettre fin à cette mésaventure! La france, je l'aime mais je dois la quitter » (source). Il y a 2000 mots et si vous voulez que votre site apparaisse dans la page d'un mot, vous devez payer 100 €.

Étant donné que Google référence gratuitement (et représente 90% des moteurs de recherche ou plus), je ne vois pas trop l'intérêt de ces sites.

Twinibila.com

Parmi cet ensemble de sites, Twinibila.com se détache du lot. C'est un site d'annonces gratuites pour vendre des voitures au Maroc. Ce site semble actif et pas mal utilisé par des particuliers. Alors que les autres sites sont essentiellement statiques, celui là comporte un moteur de recherche. Il héberge également un forum phpBB. Le site est plutôt bien foutu. L'enregistrement DNS indique le nom « Sarah Leblanc ». Je suppose que le site a été conçu par une personne différente de tous les autres sites.

00:03, samedi, 21 novembre UTC

Older blog entries