T h e G l u 's blog

Faire mumuse avec une salle remplie de mac

a) Prendre une salle remplie de mac:

b) Charger Say dans la ram:

c) Faire mumuse:

d) Passer de la bonne musique. Fort. En dolby 160.0

Enjoie.

1 commentaire Digg this

Dévérouiller son pc avec son téléphone portable grâce à un qrcode (sisi)

Oui c’est un gros billet avec pleins de phrases compliquées. Pour ceux qui veulent lire en travers sautez à la partie Principe de fonctionnement directement ;)

Avertissements

Tout le système que je vais décrire par après c’est de la bidouille. Si vous voulez faire fonctionner ça sur votre machine il vous faudra forcément trifouiller dans le code (surtout si vous voulez un truc qui soit sécurisé vu que les exécutables ont tous le même ‘mot de passe’). De plus ce système n’est peut-être pas inviolable (on ne peut pas penser à tout ;) ), mais en tout cas (à mon avis) c’est quand même sûr.

Faire les manipulations décrites dans ce billet peut donc ouvrir des failles de sécurité, causer divers problèmes sur votre pc, donc suivez les instructions / jouez avec les programmes que si vous savez ce que vous faites ! Vous êtes prévenus. Na.

Tout le système ainsi que le billet n’est pas vraiment user-firendly. Je sais mais c’est un peu dur de faire simple ;) .

Le système marche sous linux, n’importe quelle distribution. Les paquets requis sont au moins disponibles sous ubuntu, au pire vous pouvez installer les dépendances à la main, sans utiliser votre gestionnaire de paquets.

S’authentifier sur son pc

Il existe pleins de manières différentes de s’authentifier sur son pc, notamment la plus basique, le mot de passe. Mais ce n’est pas très rigolo ! J’ai donc cherché un moyen plus sympa de m’authentifier sur mon pc.

Déjà, il y a la solution que l’on trouve sur bon nombre de portable, le lecteur d’empreintes digitales. Mais j’en ai pas sur le mien (de lecteur).

On peut aussi s’authentifier avec une clé usb (pam_usb). Mais bon je ne trouve pas ça super sécurisé, sachant qu’il suffit de pas beaucoup de temps pour juste lire les données de la clé et savoir quelles sont les informations à fournir pour faire une ‘fausse clé’. Surtout que c’est fait pour aller se brancher partout ces bébêtes et on n’est pas toujours sûr du pc sur lequel on va se brancher…

Il y a aussi l’authentification par bluetooth (pam_blue). Alors, non seulement ce système utilise inutilement de la batterie (faut bien laisser le bluetooth allumé sur le périphérique qui sert à s’authentifier), mais ensuite c’est aussi sécurisé que d’avoir son mot de passe avec un postit à côté de l’écran (et écrit en gros caractères).  Tout ce qui est radio c’est le mal, c’est interceptable aussi facilement que bonjour !

Il y a toutes les techniques d’identification avec la voix et la reconnaissance du visage. Le problème c’est que c’est très dépendant de l’environnement (des gens qui hurlent autour de vous / un fond pas normal et hop ça ne marche plus) et je n’ai pas envie de sourire à ma webcam pendant 15 minutes ou hurler une phrase aléatoire à mon pc pendant le même laps de temps.

Il y a aussi la technique de l’interrupteur à clé dans une boite de biscuit que je vous avais déjà présenté. Malheureusement j’ai plus de port imprimante sur mon pc et c’est aussi sécurisé qu’un mot de passe à une lettre (suffit de cour-circuiter les fils…).

Toutes ces techniques ont un élément commun : on essaie d’authentifier quelque chose d’unique et de personnel dont on remarque généralement vite la perte (un périphérique bluetooth (généralement un téléphone portable), une clé usb, un doigt ou encore son cerveau qui connais le mot de passe). Le truc serait d’arriver à un système permettant d’identifier à coup sûr un objet sans pouvoir le falsifier.

J’ai une webcam sur mon pc. Il existe un moyen de transiter des informations par l’image, les qrcodes. J’ai donc eu l’idée de m’en servir pour faire ‘transiter’ une information unique, permettant à coup sur d’identifier mon téléphone portable :]

Les qrcodes

L\'url de mon blog qrencodéeDéjà un qrcode c’est quoi ? La wikipedia nous dit ceci :

Le code QR ou QR Code (en anglais) est un code-barres en 2 dimensions (code matrice) pouvant stocker jusqu’à 7089 caractères numériques, 4296 caractères alphanumériques (contrairement au code-barre « traditionnel » qui lui ne peut stocker que de 10 à 13 caractères) ou 2953 octets . Il a l’avantage de pouvoir stocker beaucoup d’informations tout en étant petit et rapide à scanner. Ainsi, le sigle « QR » dérive de « Quick Response » car le contenu peut être décodé rapidement.

Le code QR a été crée par l’entreprise japonaise Denso-Wave en 1994. Le code QR est très utilisé au Japon ; c’est actuellement le code à deux dimensions le plus populaire au Japon.

Le standard japonais pour les codes QR, JIS X 0510, a été publié en 1999, et la norme ISO correspondante, ISO/IEC 18004, a été approuvée en juin 2000.

Un article sympa sur Clubic aussi si ça vous intéresse de voir comment les gens s’en servent : Live Japon : du QR Code aux publicités subliminales.

Si vous aussi vous avez envie de les lires avec votre portable je vous conseille ce lecteur (en plus c’est une société suisse alors bon ^^).

Principe de fonctionnement

Le but est de se servir de qrcodes pour faire passer un mot de passe unique, généré par un objet que l’on garde généralement toujours sur soi, un téléphone portable dans notre cas. Le téléphone affiche le qrcode et le pc prend une photo à l’aide de sa webcam. Il décode le qrcode et si celui-ci est valide il déverrouille le pc.

Évidemment, il ne faut pas que les données transitées par le qrcode soient toujours les mêmes, parque sinon il suffirait d’obtenir une fois les données (qui serait une simple chaine de texte) pour s’authentifier sur votre pc…
J’ai donc utilisé une technique consistant à obtenir un code d’authentification qui varie avec le temps. De cette manière, obtenir les données du qrcode à un instant T ne permet pas de se logger à un instant T+1, ce qui augmente le niveau de sécurité.

Le code d’authentification est créé ainsi :

  • On prend la date et l’heure actuelle (heure GMT)
  • On rajoute une chaine commue (une sorte de mot de passe)
  • On fait la somme md5 des deux éléments précédents

Exemple : Il est minuit 28, le 30 aout 2008 et ma chaine commue est mysupersecrectstring. On crée le code d’authentification comme suit : 200808292228mysupersecrectstring (notez que l’on recule de deux heures pour être à l’heure GMT (deux car c’est l’heure d’été)) et on calcule le md5 de cette chaine qui est bd76299ff48d23743b8c4a7cb85a2c74. C’est notre code d’identification, une sorte de mot de passe qui change toutes les minutes et qu’on n’a pas besoin de retenir.
Il est impossible (normalement) de revenir à la chaine commune depuis le md5, même en sachant l’heure qu’il est !

Du côté du pc, il faut lire le code et regarder qu’il corresponde. Mais il y a un problème : il faudrait que le téléphone portable et le pc soient synchronisés à la seconde près, de plus se trouver aux alentours de 00:00:59 quand on génère le code et à 00:01:12 quand on lit le code pose un problème, car la minute aura changé et donc le code d’authentification aura changé. Pour résoudre ces problèmes, le pc va accepter 5 codes d’authentification : celui pour la minute en cours, ceux des deux minutes précédentes et deux des deux minutes suivantes. Ainsi, même avec une minute de décalage entre le téléphone portable et le pc, on parviendra toujours à s’identifier !

Réalisation pratique

Il y avait trois choses à faire fonctionner : Capturer une image de ma webcam en ligne de commande (figurez vous que c’est compliqué…), être capable de lire un éventuel qrcode dans cette image et savoir générer un qrcode sur mon téléphone portable.

Déjà pour capturer une image c’est très compliqué. Il existe bon nombre de programmes avec une interface graphique qui savent le faire, mais là le but était de faire ça de manière automatique. Après de longues recherches, j’ai fini par trouvé uvccapture qui parvenait enfin à faire ce que je voulais. Je me suis servi de son code source et je l’ai modifié de manière à être capable de prendre une image quand mon téléphone portable est visible, mais pas encore surexposé (uvccapture est normalement capable de demander à la webcam une exposition particulière, mais avec la mienne ça ne marche pas, elle se règle toute seule…), après un temps X (dépendant aussi de l’initialisation de la webcam, etc.). J’ai fait le ménage dans le code pour garder que le nécessaire et on a notre exécutable qui prend une photo et la sauve sous 2snap.jpg (et aussi une image plus sombre sous 1snap.jpg, mais pour l’instant je ne l’utilise pas).

Ensuite, décoder un qrcode dans cette image. Le problème a été de trouver une libraire avec une licence libre et facilement réutilisable. La seule que j’ai fini par trouver est PyQrCodec, qui fait appel à une autre en C qui utilise OpenCV (cf les liens plus bas). Le truc plante de temps en temps au décodage et n’est pas capable de reconnaitre tous les qrcodes, mais ce n’est pas un problème vu que l’on va s’occuper aussi de la génération du dit qrcode il suffira de faire quelque chose de compatible.
J’ai implémenté toute la logique du système (génération des md5, déverrouillage de l’écran de veille) dans le script en python (vu que c’est le plus facilement modifiable).

Enfin il faut générer un qrcode. Ça à l’aire vachement sympa ces images en noir et blanc avec des carrés partout, mais en fait c’est super compliqué à faire (c’est pleins de maths compliqués). Après beaucoup de recherche j’ai fini par tomber sur une source en php capable d’en générer et qui sont lisibles par le décodeur (voir dans les liens plus bas). J’ai donc profité de cette source pour la réadapter en java (meilleure manière faire tourner quelque chose sur un téléphone portable à mon avis), ça prend du temps et j’ai sauté quelques parties mais ça a fini par fonctionner (en tout cas je n’ai pas rencontré de problèmes jusqu’à maintenant…). Le programme est un peut lent (~5 pour se lancer) (hors java) et il faudrait peut-être faire un peu d’optimisation (je n’ai pas tout récrit à la manière java et certaines parties ne sont pas très intelligentes, par exemple bosser avec des strings au lieu de faire tout avec des tableaux d’int (chose que j’ai faite quand j’étais obligé)) mais ça marche.

Et donc on a trois programmes qui font ce qu’ils doivent faire (c’est quand même sympa tous ces langages, du C, du python, du php et du java pour 3 programme pour ce système…) et il faut juste les mettre ensemble !

Et ça marche ?

Oui. (Ba tiens x]) Il faut en moyenne 5s pour que le code soit lu et reconnu si je tiens mon téléphone portable à 15cm de la webcam. Qu’il fasse nuit ou jour cela fonctionne, le système n’est donc pas perturbé par l’environnement !

Il faut encore que je trouve un moyen de le lancer automatiquement avant que l’écran de veille s’active (parce qu’à l’heure actuelle il désactive l’écran de veille) en évitant de changer toutes les entrées dans mes raccourcis :p

Les sources & exécutables

Bon, il y a pleins de langages différents et de licences différentes vu que j’ai récupéré du code de pleins d’endroits différentes, mais c’est normal. J’ai gardé les licences d’où le code provenais, j’ai mit la partie en java que j’ai réécrite en MPL/GPL/LGPL.

Alors oui ce n’est pas du très beau code et ce n’est pas commenté, mais c’est juste pour faire mumuse, si j’ai le temps je ferais quelque chose de clean.

Les exécutables (le mot de passe utilisé est  : mysupersecrectstring )

Notez qu’il vous faudra PyQrCodec (voir les liens) d’installé pour le décodeur. Suivez les instructions sur le site dans les liens, toutes les dépendances requises sont dans les dépôts d’ubuntu.

Pour le programme de capture de la webcam aussi, il vous faudra v4l2 d’installé, mais normalement c’est le cas.

Les sources :

À l’heure actuelle (programme et source), cela ne devrait fonctionner que si vous avez un matériel parfaitement compatible (taille de la webcam, même taille d’écran pour le téléphone portable (il faut une ’surface utile’ de 235×235 au moins)), mais rien de vous empêche de jouer avec le code source ;)

Pour lancer le programme mettez captureimage dans le même dossier. Faites un touch data.tmp et lancez python QrAuth.py. PyQrcodec doit être dans le path (si il est installé correctement normalement c’est bon, au pire copiez son dossier dans le dossier avec QrAuth.py (après compilation bien évidemment)). Attention ! Pour arrêter le programme il faut soit arriver à vous authentifier, soit appuyer sur ctrl-c jusqu’à ce qu’il s’arrête (ce qu’il ne fait pas tout le temps..). Ou fermer le terminal. Effectivement faudrait faire quelque chose de plus mieux bien sur ce point mais bon ;) . Normalement ça marche. Normalement.

Si vous avez une webcam qui fonctionne autrement vous pouvez modifier le code python pour capturer une image autrement et faire fonctionner le système quand même !

Les choses qu’il faudrait améliorer

L’ensemble n’est évidemment pas parfait et terminé, ça reste de la bidouille. Il faudrait exemple faire un peu de ménage dans le programme qui génère des qrcodes, il y a beaucoup de fichiers de définition qui ne servent probablement à rien. De plus, il serait beaucoup plus pratique d’arriver à prendre et analyser la présence d’un qrcode devant la webcam en permanence, mais pour cela il faudrait résoudre le problème de la luminosité. Notez aussi que le décodeur sur le pc est en deux parties et les informations entre les deux scripts sont échangés à l’aide d’un fichier… Ce n’est pas très intelligent, mais le problème est que la demande de décodage d’un qrcode fait de temps en temps planter le programme python qui s’arrête, d’où la séparation entre les deux programmes. Et l’information est passé à l’aide d’un fichier parque je n’avais pas envie de m’embêter à récupérer la sortie standard du deuxième processus, mais normalement il faudrait faire comme ça.

Un autre point serait aussi de pouvoir utiliser des fichiers de configuration ou des paramètres pour éviter par exemple de devoir recompiler le programme lorsque la webcam change de ‘fichier’ (c’est pas un fichier mais c’est comme tel) /dev, ou lorsque l’on veut changer le mot de passe.

De plus il faudrait arriver à utiliser la librairie qui décode les qrcode non pas en python,  mais directement en c, lors de la capture de la webcam, pour éviter d’avoir à utiliser un langage de plus, malheureusement je n’ai pas réussi à compiler la dite libraire directement en C.

Liens


Tout ça pour ça, effectivement… Il m’a quand même fallu 3 jours pour arriver à quelque chose qui marche x].

Sinon pour conclure une image qui n’a rien à voir, mais que j’aime vachement bien et que je peux m’empêcher de vous monter : C’est par ici.

12 commentaires Digg this

Que faire avec un palm ? [1/2: installer linux]

J’ai récupéré il y a quelques jours un vieux Palm, un Tungsten T3 pour être précis, avec sa base de chargement et un câble usb pour le connecter, des stylets (en 24 heures j’en ai consommé 2 sur 3, mais je les géolocalise plus ou moins (un sous mon lit et un sous mon bureau x] ). Alors bon c’est très rigolo, on peut faire deux trois trucs avec, mais rien de très rigolo : gérer des contacts, faire des beaux dessins avec le stylet. On trouve quelques applications sur internet mais voilà : mon E51 fait déjà tout ce que je veux et ne pèse pas 3 tonnes avec des dimensions qui se rapprochent de 1m sur 1m ;) .

Je étais sûr que je pouvais trouver une utilité à ce Palm et j’ai trouvé. Tout d’abord j’ai voulu lui installer, linux (Gnu/linux pardon) pour avoir plus de possibilités que le système d’exploitation par défaut qui sert en gros.. à rien.

La chose rassurante, c’est que quand vous avez des idées aussi intéressantes que « je vais installer linux sur mon palm », c’est que google vous indique que d’autres personnes ont déjà eu la même idée (vous n’êtes donc pas (trop) bizarre) et que mieux encore, certaines personnes ont réussi à bidouiller un kernel pour le faire fonctionner sur un T3 (c’est fou).

Voila donc un petit tutoriel parque ce serait bête de pas vous le faire partager hein !

Il vous faudra pour faire mumuse une carte SD avec au moins 128mo d’espace libre et être capable de mettre des fichiers sur la dite carte sd (pas juste votre palm tout seul quoi).

!!! ATTENTION, CAR VOUS ALLEZ PERDRE TOUTES LES DONNÉES DE VOTRE PALM, CELUI-CI SERA COMME NEUF ! SAUVEGARDEZ LE AVANT !

^— C’est clair ? —^

Récupérer les fichiers :

Je vous indique ici la marche à suivre avec les différents paquets qui ont fonctionné avec moi. Il en existe d’autres, regardez les liens en bas de billet si vous voulez essayer d’autres environnements (chez moi si c’est pas ceux-là ça ne boot pas…)

Tout d’abord, il vous faut récupérer les fichiers suivants (sauvegardez les sur votre disque dans un dossier temporaire) :

Copier les fichiers :

Maintenant il vous faut copier ces fichiers sur votre carte, c’est assez simple (si les dossiers n’existent pas, créez-les !)

Garux (garux.k106.prc) doit être copié dans palm/launcher/.
Tous les autres fichiers doivent être copiés dans /linux2ram.

Préparer Garux :

Une fois que que tout est copié, insérez la carte SD dans votre Palm. Normalement Garux devrait automatiquement apparaitre dans la liste affichée à l’écran, lancez le. Il va falloir d’abord régler quelques paramètres. Dans le menu, sélectionnez BFUSettings . Il a plusieurs Pannels à configurer. Sous Global, rien. Sous Network, si vous voulez être connecté au réseau par l’usb (sisi !) activez le et réglez les paramètres voulus. Sous Modules, définissez la modlist à OpieMini0719. Sous Tools rien de spécial à faire et sous Advanced je vous recommande de cocher Merge live_changes. Cliquez sur Save et faites Ok pour revenir à Garux.

Lancer Linux : (par la fenêtre x] *)

Vous pouvez maintenant cliquer sur Start Linux pour lancer.. Linux (c’est fouuuuuuu). Oubliez pas que vous perdez toutes vos données, etc… Si vous avez du bol ça marche.
Sur la photo (tout est en bas du billet), ça n’a pas marché. C’est quand même magique, j’ai booté des dizaines de fois correctement et ça foire juste pour la photo ! (C’est bien ça m’a donné le temps pour la prendre plus ou moins nette…) Après un petit coup de Reset c’était ok.

Au passage, quand votre Palm sera totalement bloqué (ça va arriver je vous rassure), il y a un petit bouton Reset au dos pour revenir sous l’os normal. Si ça ne marche pas, tenez appuyé le bouton d’allumage, appuyez sur Reset jusqu’à l’apparition de l’affichage et lâchez le bouton d’allumage, puis appuyez sur la touche haut.

Normalement voilà, vous êtes sous linux. Vous avez accès à une console pour faire mumuse notamment. Le mot de passe root est toor. Vous pouvez aussi connecter votre palm sur le réseau par le bias du port usb ! Personnellement j’ai simplement branché ça sur mon alix avec pfsense et tout a fonctionné nickel après configuration. En le branchant sur mon pc le palm arrivait à m’envoyer des paquets, mais je n’y arrivais pas, mais bon. Référez-vous aux manuels pour le réseau ;) . (Au passage il est possible de faire ça sous Windows, google sera probablement votre ami !).
Notez que vous avez accès à un ssh ! Vous rêviez de faire faire un uname -a sur votre Palm depuis votre pc ? C’est possible °o° (et ça donne Linux palm 2.6.21-hnd3-tt3 #42 PREEMPT Mon Sep 3 23:04:18 CEST 2007 armv5tel unknown pour information).
Notez que le script livesave.sh vous permet de sauvegarder les modifications que vous avez apporté au système pour les récupérer quand vous relancez linux (si vous avez coché ‘Merge live change’ dans les options de BFU).
Prochain billet sur le développement d’une interface d’administration pour contrôler mon réseau à partir du Palm (quand je l’aurais terminée, pas avant août…), parque oui, c’est le but ! Pour l’instant ça marche plutôt bien question affichage des pings et des uptimes, faut que je développe la partie gestion des arrêts et démarrages, ainsi que que ceux des sauvegardes. (Non ça sert à rien. Mais plus qu’un Palm dans un tiroir vous remarquerez ;) )

Le site avec tout pleins de choses pour Linux sur les Palm T3 Le site avec des tutos pour d’autres palms (attention c’est un peu le bordel, visitez aussi leur ancien site).

Les photos (tout à la fin parque la mise en page dans le billet n’allait pas bien) :

* Un jeu de mot pourri associé à un (voir même deux) troll(s) est caché sur cette ligne. Êtes vous capable de le découvrir ?

5 commentaires Digg this

Linux != Ubuntu et inversement.

Ubuntu c’est bien fait. Ubuntu c’est facile d’accès pour ceux qui débutent, ubuntu c’est pour les humains, etc. Ce n’est pas faux du tout : Ubuntu est simple, ubuntu aide à populariser Linux et sans ça dell n’aurait peut-être pas commencé à vendre du linux aux particuliers (entre autres).

Mais il n’y a pas de que des côtés positifs à cette démocratisation. Une erreur que je vois de plus en plus (et pas que moi d’ailleurs, voir les liens en fin de billet), c’est la confusion entre Linux et Ubuntu. Non, ubuntu n’est pas linux et linux n’est pas ubuntu. Ubuntu est une distribution linux (ou Gnu/Linux pour les puristes). Elle est basée sur une autre distribution, Debian. C’est un peu comme appeler toutes les voitures une Smart (désolé pour la pub, mais ça me traverse la tête) : il existe des millions d’autres voitures, des modèles différents et il ne faut pas restreindre son point de vue à quelque chose d’unique.

« Ubuntu » est un ancien mot africain qui signifie « humanité aux autres ». Ubuntu signifie également « Je suis ce que je suis grâce à ce que nous sommes tous » [Acceuil ubuntu-fr] C’est bien, mais il faudrait voir à ne pas oublier les ‘autres’ et le ‘tous’ ;) .

Pour voir la confusion, il n’y a pas besoin d’aller très loin, prenons par exemple Digg. Ce post parle de divers thèmes, mais il semblerait que ça fonctionne que sous Ubuntu selon l’auteur :

You need:
-Compiz and Emerald
-Ubuntu Gutsy or Hardy

Évidemment, c’est tout sauf le cas, un thème Gnome, emearld ou Kde, des icones, des polices, etc., tout cela fonctionne sous n’importe quelle distribution linux, les programmes sont généralement les mêmes (éventuellement les versions), mais pourquoi parler que d’Ubuntu alors ?

Pire encore, ceci, où il semblerait que le fait de pas avoir d’OS pré installé permettrait d’être compatible Ubuntu selon les commentaires. Déjà la majorité du matériel est compatible avec Linux (et donc ubuntu), ensuite faire la confusion entre Rien et Ubuntu, c’est pire qu’être Linux et Ubuntu…

Le titre de ce post est aussi rigolo : « Flash Player 10 [Beta] coming with Ubuntu support« . Je m’excuse, mais non, il n’y a pas un support d’ubuntu, il y a un support de Linux, comme avec le flash 9 au passage.

Un autre endroit où je vois fréquemment la confusion c’est sur le planet ubuntu-fr et à mon avis c’est du à une règle bien précise :

« les articles sont en lien direct avec ubuntu (le fait de pouvoir installer un logiciel est un lien direct) ou de sa communauté. Les articles parlant du libre en général sont interdits. »

D’accord. C’est un choix, c’est comme ça, personnellement je désapprouve, mais on n’est pas là pour troller sur ça (d’ailleurs on le fait déjà assez sur la mailing n’est-ce pas ;) ). Par contre, combien de personnes cela incite à restreindre à ubuntu seulement et faire comme si le reste n’existait pas ? Ce n’est pas parque l’on peut l’installer sous ubuntu que l’on ne peut pas le faire ailleurs et commencer tous les titres par « X disponible sur ubuntu » pour justifier un article c’est peut-être pas super, on peut quand même être un peu plus ‘large’ quand on parle d’un programme. Certains le font (exemple où on dirait pas que il n’y a q’Ubuntu dans la vie) d’autres pas (exemple) (exemples aléatoires et ne visant pas les auteurs en question !)

Autres exemples ?

Les jeux ça ne marche que sous ubuntu on dirait.

Astuce qui marche que pour ubuntu ?

Les choses qu’il n’y a que chez ubuntu ?

Les clients msn pour ubuntu. Que pour ubuntu.

Après certains croient qu’ils peuvent en profiter comme bon leur semble, mais non ;)

Je tiens quand même à préciser en conclusion que mon but n’est pas de critiquer quelque personne que ce soit, notamment en citant un de leur billet ou page sur internet, mais bien cette ‘tendance’ à prendre Linux pour Ubuntu, fait qui au passage ne se retrouve pas dans la plupart des textes de la communauté qui fait jour après jour un excellent travail, certains points n’en empêchent pas d’autres…

Voilà, fini de râler ^^’. Arrêtez donc de faire la confusion, en plus cela porte à croire que vous vous prenez pour le centre du monde des distributions linux ignorant le reste (ce qui n’est probablement pas le cas). En plus je suis sûr que je l’ai déjà faite, mais tout le monde peut changer ;)

D’autres personnes qui en parlent (en anglais) : [1] [2]

47 commentaires Digg this

Vulnérabilité dans l’openssl de debian et ses dérivés (comme ubuntu), mettez vous à jour !

C’est par ici. (en anglais)

Concrètement, openssl génère notamment des clés privées et des clés publiques pour chiffrer des données. Le problème est que les clé qu’il génère sont « prévisible », c’est-à-dire que l’on peu deviner à quoi elles vont ressembler…

En gros, il vous faut (au plus vite !) mettre le paquet à jour (apt-get update && apt-get upgrade) dans un terminal et régénérer TOUTES vos clés qui ont été « atteintes » (on parle là des clés faites avec openssl, vos clés GnuPG ne sont pas touchées…) si elles ont été générées avec debian depuis septembre 2006, ou sur la version 7.04, 7.10 et 8.04 d’ubuntu (notamment). Openvpn est, entre autres, touché par le problème.

Un petit script est disponible ici pour savoir si vos clés sont vulnérables.

Notez que si vous êtes sous une autre distribution que debian et ses dérivées, vérifiez aussi que vous n’avez pas importé de clé qui sont touchées par le problème, par exemple pour l’authentification par clé sur votre serveur ssh d’un utilisateur externe…

C’est quand même fou d’avoir laissé une faille pareille depuis le 17/09/2006… Vive arch :p

14 commentaires Digg this

Spicebird, encore un oiseau de plus pour gérer ses mails, rendez-vous et autres.

Attention ! Il s’agit d’un programme en version beta, il y a donc toujours des risques tels que les plantages inopinés, la perte de données, l’explosion de votre pc, la rupture des stocks de chocolat dans les magasins de votre ville, la chute d’une météorite sur la terre ou encore la disparition de l’univers (mais les statistiques montrent que les derniers points sont rares) lors de l’utilisation du programme.

Donc, voilà encore un programme en rapport avec les oiseaux. Comme vous l’aurez deviné après Songbird qui gère la musique en se basant sur la plateforme xul de mozilla, Sunbird qui gère votre calendrier en se basant sur la plateforme xul de mozilla, Thunderbird qui gère vos mails (en se basant sur la plateforme xul de mozilla d’ailleurs), Spicebird (l’oiseau aux épices ?) est aussi un logiciel aussi basé sur les technologies de mozilla (qui aussi permet aussi à firefox de fonctionner au passage). Et donc qui fonctionne aussi bien sous windows que sous linux, qui est plus ou moins standard dans sa structure / façon de coder et tout et tout. Cool.

Spicebird est un peu spice-ial (d’accord c’est nul, mais je le laisse ^^). Il s’agit d’un logiciel qui en regroupe (principalement) deux autres, Thunderbird pour les mails et Sunbird pour le calendrier. Il s’agit d’une sorte de fusion et d’amélioration de l’interface de ces deux logiciels, en rajoutant d’autres fonctionnalités comme la messagerie instantanée avec Jabber. Ne vous étonnez pas de voir les mêmes menus et textes que par exemple Thunderbird, parque c’est Thunderbird qui est utilisé (pratique le libre quand même :) )

En gros, Spicebird est :

  • Un client pour vos mails
  • Un client pour vos flux RSS
  • Un client de messagerie instantanée (Jabber)
  • Un gestionnaire de contact
  • Un gestionnaire de tâches
  • Un calendrier
  • Et un programme avec une page d’accueil éditable, un peu comme Netvibes (évidemment avec moins de choix)

Et d’autres choses sont prévues à l’avenir, dont notamment :

  • Un meilleur client de messagerie instantanée
  • Un gestionnaire de blog
  • Une intégration à un CMS (Dupral)
  • Un gestionnaire de documents
  • Des améliorations sur les taches, les contacts, etc.

De plus, étant basé sur la plateforme xul de mozilla (mais je crois que je l’ai déjà dit x]), des plugins ferons surement leur apparition à l’avenir pour améliorer le programme.

Les avantages du programme ? Principalement un regroupement de divers logiciels, pour éviter d’avoir par exemple Thunderbird, Sunbird et pidgin tous ouverts. Et on y gagne un peu de mémoire, j’observe 20Mo de différences avec les mêmes données (mail et agenda) à afficher entre Thunderbird/Sunbird et Spicebird, ça n’inclut pas un programme Jabber…

J’ai quand même rencontré quelques problèmes à l’utilisation, notamment pour utiliser un certificat non valide de mon serveur de mail (mais en important le certificat à la main c’est passé, c’est un avantage d’avoir toujours la même structure de programme…), ou encore quelques bugs d’affichage des mails sur la page d’accueil.

Pour installer le programme c’est très simple. Pour les utilisateurs d’archlinux, le paquet est dans les dépôts AUR. Pour les autres (ubuntu, debian et cie), une archive est disponible sur cette page. Téléchargez l’archive et décompressez celle-ci, par exemple avec le menu contextuel de nautilus, de celui de konqueror, ou avec tar xvf larchive en ligne de commande. Vous trouverez un fichier ’spicebird’ dans le dossier fraichement apparu après votre décompression, qu’il vous suffit d’exécuter, par exemple en double-cliquant dessus, ou en vous servant de votre terminal préféré.

L’utilisation est relativement simple et intuitive, je ne vais pas m’attarder dessus, sachant qu’elle correspond exactement aux programmes originaux. Voici quand même quelques captures pour vous présenter le programme :

Spicebird - HomeSpicebird - CalendrierSpicebird - MailSpicebird - TachesSpicebird - ContactsSpicebird - OptionsSpicebird - Fenêtre de conversation

Spicebird est à mon avis un programme assez sympathique et très prometteur, je le vois assez bien sur des petits systèmes mobiles type EEE pour faire du tout en un… (bien que sur celui-ci on reste assez coincé avec Spicebird, peut être une super-simplification de l’interface est à penser…)

[Le site officiel | La page de téléchargement | Sunbird | Songbird | Thunderbird]

Pas de commentaires Digg this

Apachetop, ou comment observer la vie trépidante de son serveur apache en direct.

Une nouvelle année est arrivée. Vous êtes devant votre pc et vous ne savez toujours pas quoi faire, mais vous avez un serveur apache. Ou alors vous êtes tout simplement curieux de voir les gens accéder à votre serveur (apache), mais sous une autre forme que l’habituel commande tail -f (Pour ceux qui ne la connaissent pas, cette commande permet d’afficher un fichier dans un terminal et d’afficher les nouvelles lignes de ce fichier au fur et à mesure que de nouvelles s’ajoutent dans le fichier, ce qui permet par exemple de lire un fichier journal en direct). Alors peut être qu’Apache top vous intéressera :) .

Apachetop c’est quoi ? Si vous connaissez top (Top est une commande qui affiche les différents processus en cours d’exécution sur une machine et d’autres informations telles que la charge système, le nombre d’utilisateurs, la mémoire utilisée, etc.) vous vous doutez bien qu’apachetop va faire quelque chose de semblable avec apache : apachetop va afficher en direct les accès à votre serveur apache, en se basant sur les fichiers journaux générés par celui-ci. De cette manière, vous pouvez surveiller l’activité de votre serveur !

L’installation est très simple : un paquet deb est disponible pour les utilisateurs de Debian, un paquet deb est disponible pour les utilisateurs d’ubuntu sur les serveurs respectifs de ces deux distributions (il suffit donc de faire un apt-get install apachetop). Pour les autres distributions vous trouverez probablement aussi un paquet, mais si vous trouvez rien (étonnamment il n’en existe pas dans les dépôts d’archlinux…), vous pouvez vous rendre sur le site officiel et télécharger cette archive. Il s’agit d’une source, je ne vais pas vous expliquer ici comment la compiler, mais si vous ne savez pas comment faire, une recherche google devrais rapidement vous aider ;) .

Capture d’apachetop en action.Quand le programme est fonctionnel, l’utilisation est très simple. À la base, il vous suffit simplement de taper apachetop dans un terminal (il s’agit d’un programme qui s’utilise en ligne de commande). Si vos fichiers journaux d’apache ne sont pas sauvegardés dans le fichier par défaut, vous pouvez spécifier un ou plusieurs (avec plusieurs -f différents) fichiers en rajoutant -f /chemin/vers/le/fichier/access.log comme argument au programme. D’autres options sur la ligne de commande sont disponibles tels que -d unnombre pour spécifier le nombre de secondes avant un rafraichissement de l’affichage, il vous suffit d’ajouter l’argument –help pour avoir la liste complète de ceux-ci.

Une fois le programme lancé, vous pouvez apercevoir la liste des requêtes sur votre serveur, après peut être un petit délai s’il n’est pas utilisé en permanence (votre navigateur peut l’aider un peu ;) ).

Vous pouvez vous servir de quelques touches, notamment :

  • h, qui permet d’afficher l’aide d’apachetop
  • d, qui permet de changer l’affichage entre l’url demandée, le referer de la page ou l’host.
  • p, qui permet de faire une pause de l’affichage
  • s, qui permet de trier l’affichage selon votre choix

Cette liste n’est pas exhaustive, utilisez h pour avoir la liste complète !

Voila, pour conclure apachetop sert donc ‘juste’ à vous montrer ce que fait apache, peut être que cela sera utile à quelques personnes (personnellement j’aime bien augmenter ma productivité en restant à regarder les lignes qui s’affichent ^^ ).

Liens : [Site officiel]

2 commentaires Digg this

Checkgmail ne marche plus ? Voici comment corriger le problème.

CheckgmailCheckgmail est un petit programme sympa qui permet d’afficher une sorte d’alerte dans la barre des tâches quand on reçoit un nouveau mail sur son compte GMail, avec pleins d’options permettant même de faire clignoter son clavier quand on reçoit des mails.

Le problème, probablement du à la mise à jour de GMail vers une nouvelle version, c’est que ce programme (ainsi que tous ceux ayant le même but, en tout cas ceux que j’ai testé), ne fonctionnait plus depuis quelques temps. Heureusement il existe un moyen très simple de résoudre le problème, trouvé sur le tracker du programme, astuce trouvée sur le forum ubuntu selon l’auteur (malheureusement anonyme).

À taper dans un terminal :

  • sudo mv /usr/bin/checkgmail /usr/bin/checkgmailsos On fait une sauvegarde, au cas ou.
  • cd /tmp On se déplace dans le dossier temporaire
  • wget http://checkgmail.svn.sourceforge.net/viewvc/*checkout*/checkgmail/checkgmail On télécharge la dernière version de checkgmail
  • sudo mv checkgmail /usr/bin/ On met à jour checkgmail
  • sudo chmod +x /usr/bin/checkgmail On met les droits d’exécution à checkgmail.

Et voilà, ça fonctionne :)

12 commentaires Digg this

Un peu de bricolage : comment verrouiller son pc avec un interrupteur à clé.

Hé oui, une fois n’est pas coutume, voici un billet après-midi bricolage !

Vous vous ennuyez ce week-end ? Vous n’avez pas d’idée cadeau originale pour votre copain/copine toujours sur son pc ? Vous avez du vieux matériel qui traine et vous voulez prouver aux autres qu’il peut encore servir ?

Montez donc un interrupteur à clé sur votre pc pour verrouiller et déverrouiller l’écran de veille !

Attention ! Si vous faites une erreur de manipulation, ça pourrait conduire à la mort de votre port ! Le risque est très très faible, mais on ne sait jamais. Tant que vousInterrupteur à clé vous ne faite pas autre chose que mettre un fil sur la broche 11 tout devrait aller. De plus, et surtout, ce montage est tout sauf sécurisé, il suffit d’un trombone pour le contourner ! Le but du billet est seulement à caractère informatif/démonstratif/distractif. Si vous vous en servez pour protéger le pc qui fournir l’accès au coffre de la banque où vous travaillez vous ne vous en prendrez qu’à vous-même. Remarquons que dans la plupart des cas, un accès à la machine est déjà problématique question sécurité ;) .

C’est donc quelque chose qui ne servira jamais à sécuriser correctement votre PC, bien au contraire ! Faites attention !

Voilà, fin du paragraphe qui fait peur, passons maintenant à l’aspect pratique de la chose. Il vous faut :Port parallèle

  • Un PC sous linux. Cela fonctionnera avec la majorité des distributions, j’ai testé avec Archlinux et Ubuntu.
  • Un environnement GNOME. Si vous êtes sous KDE et que vous avez quelques notions de programmation/connaissances écran-de-veilleiques, le code source est à la fin du billet, votre adaptation est la bienvenue !
  • Un port parallèle. C’est des vieux trucs assez gros pleins de trous, dont on se sert(servait ?) notamment pour les imprimantes. Cf. la photo.
  • Un câble d’imprimante, parallèle (un USB ça rentre pas étonnamment). Cf aussi la photo. Les prises n’ont pas trop d’importance, tant qu’une se connecte au port de votre pc et que sur l’autre vous voyez des petits numéros. Cf. Photo.
  • FilsUn interrupteur à clé. Ba oui, c’est logique. Vous pouvez en trouver un peut près n’importe où et pour pas cher, google est votre ami. Cf. Photo.
  • Une boite en carton. Personnellement j’ai pris une boite de biscuit (mea culpa pour la publicité), l’important c’est que le tout rentre dedans.
  • Des fils. Si vous en avez pas, prenez une nappe IDE, coupez les deux bouts et séparez délicatement les fils.
  • Une soudeuse OU du scotch. Beaucoup de scotch.

Cable pour imprimanteUne fois que vous avez le tout, il vous faut faire l’assemblage. Votre interrupteur à clé à probablement deux contacts (voir 3 s’il est à trois positions), le but est d’y accrocher deux fils sur ces deux contacts (1 seul par contact hein). Alors, soit vous avez une soudeuse et dans ce cas vous soudez, soit vous vous arrangez pour faire tenir le fil dessus et avec du scotch vous les faites bien tenir. Attention ! Il faut que le fil soit dénudé (non pas tout nu ^^), c’est-à-dire que c’est les trucs en métal à l’intérieur que vous devez faire toucher et pas le fil avec son plastique ! Voir photo.

Connexion avec la prise

Quand vos deux fils semblent tenir, il s’agit de les relier à la prise de votre câble pour imprimante. Vous devez relier un fil à la masse (le métal qui entoure votre prise (préférable) ou le trou/la broche numéroté 25) et l’autre au trou/la broche n°11. Pour repérer les broches/trous, c’est facile, normalement il y a des petits numéros visibles en lumière rase, il vous suffit après de compter. Si par exemple il y a un 1 en haut à gauche (et généralement c’est le cas), vous prenez la première ligne et vous comptez jusqu’à 11. Ensuite, vous vous arrangez pour coincer le fil et vous scotchez, ou vous soudez. L’important, c’est que ça ne touche pas les autres trous/broches, que ça tienne et que ça fasse contacte (ne lésinez pas sur le scotch).

Ensuite, il vous faut monter le tout dans votre boite pour que ce soit joli, je vous laisse vous débrouiller c’est normalement facile à faire. Essayez juste de ne pas tout arracher :) .

Normalement vous devriez arriver à ça :

Montage final

 

Ça donne tout de suite confiance pour protéger son pc hein !

Branchez maintenant votre montage. Si ça ne fait pas Poum/de la fumée violette/un kernel panic/léviter votre pc c’est bon, sinon voir plus haut, ce n’est pas de ma faute ;) .

Il s’agit maintenant de faire quelque chose quand la clé est activée ou pas. J’ai donc vite fait un petit programme en C qui va regarder dans quelle position est la clé et s’il y a eu changement désactiver/activer l’écran de veille.

Pour ‘installer’ le programme, il faut faire comme suit :

  • Téléchargez le programme que vous trouverez ici (touche droite/enregistrer sous, wget, etc.). (Vous pouvez aussi le compiler, la source et la commande sont plus bas)
  • Ouvrez une console, rendez-vous dans le dossier où vous l’avez téléchargé
  • Tapez la commande suivante : sudo chown root screenkey (change l’utilisateur à root)
  • Tapez la commande suivante : sudo chmod +x screenkey (permet l’exécution du programme)
  • Tapez la commande suivante : sudo chmod u+x screenkey (permet l’exécution du programme avec les droits root (nécessaire pour l’accès au port parallèle !))
  • Lancez le programme avec la commande ./screenkey. Si l’écran de veille s’active c’est bon signe, si vous tournez la clé pour le désactiver ou l’activer et qu’il ne se passe rien c’est moins bon signe. (Vous pouvez quand même désactiver l’écran à la main !). Si ça marche, bein voilà !

Si ça ne fonctionne pas, vérifiez les connexions, que vous êtes bien sur la broche 11, etc. !

Vous pouvez lancer la commande au démarrage avec d’autres commandes au démarrage si vous voulez garder le système en place, Système/Préférences/Sessions (sous gnome), et tapez le chemin complet (avec screenkey) vers le fichier !

Voila ! La source du programme est ici ! (Pour le compiler faut les outils (build-essential sous ubuntu), et se servir de la commande gcc -o screenkey screenkey.c -O. C’est fou ce qu’on peut faire quand on s’ennuie hein ?

11 commentaires Digg this

Songbird, le lecteur audio qu’il est pratique !

Logo Songbird

Songbird ?

Vous en avez peut-être déjà entendu parler : Songbird est basé sur le moteur de Firefox (la plateforme XULRunner pour être précis, utilisée par FireFox, Nvu, etc.), et est une sorte de fusion entre un navigateur et un lecteur audio (il y a VLC derrière pour lire les musiques). Il fonctionne sous toutes les plateformes, est pluginable, skniable, etc.

Attention : le logiciel n’est pas encore très stable, ne vous en servez pas comme lecteur audio principal et reportez les bugs !

Installation :

Pour les personnes sous Archlinux il y a bien un paquet dans l’AUR, mais celui-ci n’est pas tout à fait fonctionnel (gros problème de droits, un petit coup de chmod 777 peut aider), et pour Ubuntu rien est dans les dépôts. Il faut donc l’installer à la main (pas de compilation, rassurez vous)

Songbird se télécharge directement sur le site de Songbird, ici (version linux). Sauvez cette archive dans un dossier (par exemple votre dossier personnel). Extrayez les fichiers de l’archive, soit avec un terminal avec la commande tar xvf Songbird_0.3.1_linux-i686.tar.gz (si votre archive porte un autre nom adaptez en conséquence ;) ), soit avec les facilités que vous procure sûrement votre navigateur de fichier. Normalement, un dossier Songbird est apparu, avec un exécutable songbird qu’il vous suffit d’exécuter pour lancer le programme (magique). Vous pouvez faire un ‘Lanceur’ sur votre bureau, avec pour commande /ledossier/ou/c’est/rangé/Songbird/songbird comme commande à exécuter.

Utilisation

Après avoir accepté la licence (chose rare, mais c’est la GLP 2), Songbird vous propose de choisir la langue et quelques addons (ouioui, ça marche aussi comme pour firefox et autres !). Pour finir, il vous faut sélectionner le dossier où vous mettez votre musique, afin que Songbird la mette dans sa bibliothèque.

Donc vous voilà devant Songbird. Interface très noir, mais toujours modifiable avec des plugins ! Soit vous avez du bol, vous pouvez vous en servir (avec mon ubuntu c’est passé). Soit vous n’en avez pas et ça crash dès que vous touchez à un bouton (ça fait ça sous mon arch (mais seulement sur la principale)). Pour encore le répéter une fois, c’est une beta et ce n’est pas super stable.

SongbirdDonc le programme ressemble à un lecteur audio basique : bibliothèque, lecteur (c’est mieux hein !), listes de lectures, recherche, etc. Mais l’élément le plus intéressant est son navigateur et sa réserves de moteurs de recherche musicaux. Cherchez par exemple linux podcast. Vous arrivez sur une page de résultats de recherche, avec des fichiers audio. Mais Songbird est tout content quand vous surfez comme ça : il va vous afficher la liste des fichiers audio qu’il a trouvé sur la page, ainsi qu’après un petit moment de téléchargement les informations sur les pistes (artistes, etc.). Vous pouvez double-cliquer sur un morceau pour l’écouter et cliquer sur Télécharger pour le stocker dans votre bibliothèque ! De cette manière vous pouvez récupérer de la musique simplement en navigant sur le web ! ! Téléchargez de manière responsable, si vous aimez de la musique sous licence payez-la, pensez aux artistes derrière !

Songbird est donc un lecteur pratique vu sa capacité à ’sniffer’ les pages web pour trouver des fichiers audio, mais reste encore très instable (même quand je le quitte il plante x] ! )

Get Songbird Site de Songbird Get Songbird

14 commentaires Digg this

Page suivante »

Valid XHTML 1.0 Strict Valid CSS! Powered by Php5 MySql powered Apache powered Get FireFox ! The Ubuntu Counter Project - user number # 7261

phpMyVisites | Open source web analytics Statistics