
Utilisateur de logiciels libres depuis de longues années déja, programmeur, je n'avais pourtant, jusqu'à présent, rien réellement sorti sous une license libre qui puisse être particulièrement utile à d'autres... Probablement pour plusieurs raisons, notamment un certain perfectionnisme (vouloir publier du beau code, essayer d'optimiser un certains nombres de choses, ...) et un relatif manque de confiance dans l'utilité que mes divers utilitaires pourraient avoir pour d'autres. Cela a, d'un point de vue technique, changer lorsque j'ai commencé à mettre en ligne, par exemple, les codes pour les différents projets que j'ai effectué à l'ECN, une instance de Trac ayant même été crée pour le projet de groupe, mais cela est resté relativement marginal, d'une part due à l'absence de publicité faites à ces divers référentiels, et d'autres part à la spécificité de ces projets, qui présentent relativement peu d'interet pour les personnes étrangères à Centrale Nantes.
Cela a commencé à changer lorsque j'ai commencé, l'année passé, à travailler sur une classe en PHP de templates, basé sur XML, XPath et DOM, librement inspiré des principes de XML::Template. Je cherchais une solution de ce genre depuis un certain temps, et j'avais envie d'un projet pour tester Mercurial, le petit système distribué de controle de version (DVCS pour les intimes) qui a mes faveurs depuis plus d'un an déja. J'ai donc profité de l'occasion pour combiné les deux, et de publier le référentiel. Je me suis assez rapidement convaincu du potentiel de cette solution pour avoir une séparation propre des couches de présentations et de logique du code, en envoyant l'ensemble du XHTML dans les divers fichiers XML de templates, mais j'avoue qu'il devait être relativement difficile de juger du potentiel réel de la solution en se basant uniquement sur les quelques exemples que j'avais inclu dans le référentiel afin de servir de tests unitaires me permettant d'éviter les régressions.
En conséquence, j'ai décidé de l'appliquer sur quelques choses de plus gros. La cible évidente aurait été Méga-Poudlard, mais deux facteurs importants m'ont fait lui préférer Dual Blog, du moins dans un premier temps:
J'ai donc commencé à ré-écrire Dual Blog, en utilisant au maximum ces templates: cet effort s'est conclu en novembre dernier, moment où j'ai mis en ligne la nouvelle version, présentant une caractéristique fort plaisante: la possibilité d'utiliser exactement le même code pour la génération de la page en xhtml ou du flux de syndication Atom, au moyen d'un simple chargement de modèles différents. J'aurais probablement pu rendre public le code à ce moment là, toutefois, l'utilité en aurait été réduite: le code comportait en effet un certain nombre de présupposé sur l'adresse ou il résidait (sous-répertoire /blog par endroit, adresse complète dans d'autres, comme il est possible de le voir là), présupposait que les tables correctes soient crée en base de données... Quelques problèmes somme toutes embettant pour qui aurait voulu tester le tout ^^... La bonne nouvelle, c'est que je les ai récement régler, notamment en ajoutant un installeur.
Je voulais aussi faire un petit audit de sécurité du code avant de le publier, puisque ce dernier fonctionne en direct sur ce serveur, et qu'il m'aurait ennuyer de me retrouver avec une faille exploitée. L'interface d'administration repose entièrement sur l'authenfication de l'utilisateur via le serveur web, donc si le serveur web possède lui même une faille a ce niveau, le code est vulnérable... Mais il est probable que de plus grosses proies tombent avant ce weblog :-) D'autre part, le code valide les données qu'il recoit (notamment via l'utilisation d'une classe Requete fort pratique crée lors de mon premier stage chez OWS), donc ça devrait aller. Si toutefois vous trouver un problème manifeste, un petit mail à webmaster AT defr DOT org serait fortement apprécié ^^;
Tags : Tags
327 -
Un p'tit commentaire ? (13)

Voila un petit billet inspiré des instructions que Kévin a posté pour pouvoir se connecter par paire de clé sous Windows en utilisant Putty. Ce billet a en fait deux buts distincts:
Commencons par satisfaire les gens pressés qui pourraient tomber sur ce post par Google: ce que vous souhaitez savoir se résume à quatres commandes
ssh-keygen
eval `ssh-agent -s`
ssh-add
ssh-copy-id hostname
Maintenant que les gens pressés sont partis, rentrons dans le détail de ces différentes opérations ^^
Avant toute chose, pour pouvoir s'identifier sur un serveur avec une paire de clé (le même principe cryptographique que celui qui est utilisé pour pouvoir signer ses courriels, ou dans certains protocoles sécurisés comme HTTPS), il est necessaire de générer la-dites paire de clé, c'est-à-dire une clé publique, que l'on insérera sur l'ensemble des serveurs sur lesquels on veut pouvoir se connecter, et une clé privé qu'il est indispensable de conserver en lieu sur, et qui nous permettra de nous identifier.
Pour cela, on dispose d'une commande particulièrement utile, ssh-keygen, qui se charge de cette tâche. Il est possible de lui préciser le type de clé et la taille de cette dernière, ce qui donnerait quelque chose du genre
Une session en terminal typique générant cette paire de clé ressemble donc à :
defr_test@Albus> ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/defr_test/.ssh/id_rsa):
Created directory '/home/defr_test/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/defr_test/.ssh/id_rsa.
Your public key has been saved in /home/defr_test/.ssh/id_rsa.pub.
The key fingerprint is:
e8:f9:37:dc:3b:e0:c4:6c:00:c1:fb:c7:c3:f8:2d:28 defr_test@Albus
On entre désormais dans les opérations qui devront s'effectué à chaque fois que l'on souhaitera se connecter. Il est tout d'abord necessaire de lancer ssh-agent, via eval `ssh-agent -s`. Je vous conseille d'ajouter cela au lancement de votre session, donc à la fin de votre fichier .bashrc, .zshrc, ...
Une fois l'agent lancé, potentiellement automatiquement si vous avez suivi le conseil de le lancer automatiquement lorsque vous ouvrez une session sur le système, il est necessaire de lui ajouter votre clé privé. Pour cela, il suffit d'utiliser ssh-add, qui vous demandera la phrase de passe qui a été utilisé lors de la création de la clé. Il est à noter que pour les personnes réfractaires au terminal, il est tout à fait possible d'utiliser gtk2-ssh-askpass, qui vous créera une jolie interface dans laquelle vous devrez taper la phrase de passe, mais je n'ai pas trop exploré cette option.
Une session comportant le lancement de ssh-agent et ssh-add ressemble à cela:
defr_test@Albus> eval `ssh-agent -s`
Agent pid 12883
defr_test@Albus> ssh-add
Enter passphrase for /home/defr_test/.ssh/id_rsa:
Identity added: /home/defr_test/.ssh/id_rsa (/home/defr_test/.ssh/id_rsa)
Il reste désormais une dernière étape, faire connaitre au serveur sur lequel vous souhaitez vous connectez la clé publique. Là encore, ssh fournit gentiment un utilitaire pour faire cela, ssh-copy-id. En supposant que vous souhaitiez ainsi pouvoir vous connecter par clé à l'hôte example.com, il vous suffit donc de taper dans votre gentil terminal ssh-copy-id example.com. Comme d'habitude, on vous demandera à cette connexion un mot de passe... et fera tout le reste tout seul ^^ Vous commencerez à voir la différence à partir de votre prochaine connexion en SSH à ce serveur: votre agent s'identifiera, et vous serez par conséquent automatiquement connecté, sans mot de passe supplémentaire à fournir.
Tags : Linux | SSH
326 -
Un p'tit commentaire ? (15)
Quelques informations sur cette version ? Ca va être un peu difficile étant donné que le choix a été fait de laisser au visiteur le choix de l'apparence graphique de ce blog par le biais de feuilles de styles alternatives ( oui, je viens de pondre la traduction, non je sais pas si c'est une bonne idée de traduire des termes techniques à 23h45 un 31 décembre ). Toutefois, pour ce qui est du style par défaut, Somatic, je peux vous dire que les icones viennent du talentuex David Lanham, pour The IconFactory, dans son set Somatic Windows
Quelques faits ? La magie de pouvoir changer l'apparence de ce site à volonté ( quatres versions disponible en lien ci-dessous pour le moment, plus si vous utilisez un navigateur vous laissant choisir par lui-même l'apparence parce que vous aurez alors en bonus les versions que je considère, erm, expérimentales ) est du essentiellement au tandem XHTML 1.1 et CSS 2.1, permettant de séparer le contenu, c'est à dire les informations elles-même, de la facon dont elles sont affichés à l'écran, ce qui permet entre autre ce que vous avez sous les yeux ^^;
Franck ( Deroche Franck, oui, la parodie de James Bond est nulle, et alors ? ), 20 ans est un habitant de Plaisir, France, la Terre, petite planète du système solaire paumée entre Venus et Mars. Il est actuellement en école d'ingénieur à l'Ecole Centrale de Nantes : une école d'ingénieur généraliste permettant de faire à peu près n'importe quel travail d'ingénieur en sortie.
Toutefois la spécialisation de Franck sera très certainement dans le domaine informatique, pour lequel il éprouve une passion sans bornes. Normallement, de telles études devrait lui laisser assez de temps pour qu'il puisse faire ce qu'il veut à côte, mais ce n'est que la théorie...
Enfin, Franck est en ce moment très ( très très ) amoureux d'une jeune demoiselle particulièrement brillante et sympathique, extrement jolie, adepte de Zelda et du violet qui se reconnaitra très certainement, et qui malheureusement n'habite pas vraiment très près de Nantes... Et en plus, elle ne considère même pas les ordinateurs comme des choses bizarres venue d'ailleurs, pouvant même programmer pour le web ^^;
Qu'est-ce que Franck peut bien aimer ? Erf, bah, tout à la fois, pas grand chose et un nombre impressionant de machins qui pourrait un être normallement constitué ne serait probablement rien d'autre que tout au plus des anecdotes. Toutefois, il faut bien avouer que son passe-temps majeur n'a rien de bien original, puisqu'il s'agit de l'informatique, ce media des temps modernes sur lequel on entend à peu près tout et n'importe quoi. Et en ce qui concerne l'informatique, on peut alors dire que Franck est on ne peut plus écléctique, touchant un peu à tout... Ce qui retient le plus son attention toutefois, en ce moment du moins, reste la création de sites webs, la programmation et la customisation de son environement, à un point pouvant parfois friser le ridicule...
Lorsqu'il n'est pas collé à son écran, on a alors toutes les chances de le trouver en train de lire un bouquin, la lecture lui prenant elle aussi une partie non négligeable de ses temps libres. Dans ce domaine aussi, l'eclectisme fait loi, il peut lire plus ou moins tout et n'importe quoi... Ces dernieres découvertes majeures en la matiere sont probablement les bouquins de Werber ( qu'il a toutefois découvert depuis un certain temps maintenant ) et plus recement les mangas que sont Hunter x Hunter, Naruto et surtout One Piece, qui l'ont amenés dans un univers ou il ne s'était curieusement que rarement aventuré.
Quant à sortir des deux occupations sus-mentionnées, il est difficile de donner une énumeration précise de ce qu'il aime faire, tant cela tant à l'anecdote : faire du cerf-volant sur la plage avec le son des vagues en fond sonore, se baigner, etc.
Quant à ce qu'il n'aime pas, les réponses sont alors même pour lui moins évidente... Au niveau comportemental, c'est à dire dans ces relations avec les autres individus de l'espece humaine, le tout pourrait se resumer par une formule bateau du type : qu'on ne respecte pas le cadre privé dans lequel il souhaite parfois se retrancher... En effet, Franck aime parfois se retrouver livrer à lui-même, avoir des instants bien à lui où il n'est pas obligé d'expliquer ses agissements, et où tout simplement il n'est pas obliger de communiquer avec d'autres individus à qui 'il n'a finalement rien à dire... D'autre part, il deteste se sentir exploiter, en mettant dans cette notion tout travail inutile pour lui, que ce soit au profit de quelqu'un d'autre, ou même completement inutile à qui que ce soit. Toutefois, sa notion de l'utilitié semble legerement particulière, car passer un temps fou sur des jeux ne le dérange par contre générallement pas le moins du monde...
Geekness n'était pas updaté depuis un bon bout de temps, la section va donc laisser sa place à quelques choses qui devrait à priori être
beaucoup plus utile, puisque je compte laisser des archives accessibles ^^; Eventuellement, des petits bonus pourrait atterir dans cette section,
comme une liste des posts jugés les plus dignes d'interet, ou un truc de ce genre. En tout cas, pour le moment, le voici, contenant la liste des
archives pour le moment disponible :
Archives :
Voici la liste des 5 derniers commentaires fait sur ce blog, tous posts confondus. Ca devrait permettre à tout le monde ( et notamment à moi-même ) de repérer les nouveaux commentaires qui arrivent, même s'ils le sont sur des posts vieux de 6 mois ^^
Commentaire de Lgmssnkh sur le post Je suis toujours là
Gloomy tales play boysfood 8-)
Commentaire de Twlsvdma sur le post Je suis toujours là
real beauty page Underground bbs
kpg
Commentaire de Eswfmaul sur le post Je suis toujours là
this post is fantastic porntv live beno
Commentaire de Oxjvkzdx sur le post Je suis toujours là
Good crew it's cool :) Streaming blow jobs pornput 722
Commentaire de Lowshomy sur le post Je suis toujours là
Very Good Site Pornohub video >:[[[
Commentaire de Qdylfefm sur le post Je suis toujours là
i'm fine good work xxxtv free 8-PPP
Commentaire de Sfqbgouo sur le post Je suis toujours là
I love this site free fetishtube %-))
Commentaire de Ffpmiizu sur le post Je suis toujours là
Very interesting tale xnxx video 3659
Commentaire de Bdzeiply sur le post Je suis toujours là
This site is crazy :) free xmovies online utji
Commentaire de Sgutlrek sur le post Je suis toujours là
Jonny was here free porn videos xhamster 8-]]]
Commentaire de Bgsruhuu sur le post Je suis toujours là
magic story very thanks boysex 4110 narutohentai =PPP fetishui ytk sexybikinis 8-) sexyboys 490 mandingoanal yxwplb teenbe =-]] youporn videos %-DD free yobt mkepx teenwells 025125
Commentaire de Sskpvkwd sur le post Je suis toujours là
It's funny goodluck play boysfood %( Pornminded 89839 cliphunters free video porn bxqff pichunter free porn =(( porntv live %-O free maxporn movies =-PPP Rihanna porno 52592 tub girl 276 porno tube pxepxi free 89galleries 8-((
Commentaire de martial tchouapé sur le post Automgen ou le cauchemard de l'ergonome
J'utilise automgen depuis 1 mois environ, je voudrais qu'on puidde l'utiliser dans mon école , mais je ne maitrise pas l'utilisation , surtout pour les animations, si vous avez de bon tutorial dessus merci de les faire parvenir.(je suis étudiant à l'ist afrique centrale)
Commentaire de Quicobsestiob sur le post 3617 My Life
Hmmm... I want to improve my reliable campaign Wanna good joke? Why do hurricanes travel so fast? If they traveled slowly, we would have to call them slow-i-canes
Commentaire de Ljthgfyr sur le post Je suis toujours là
Punk not dead heterosexual >:]]
Commentaire de shadow sur le post Status update
OMG aussi... ;-)
Comme quoi j'ai bien fait de garder ce flux rss, je me disais bien que ça finirait par payer !
Mes plus que probables félicitations pour ton officialisation plus que probable !
Commentaire de DeFr sur le post Status update
C'est le grand problème, à chaque fois j'hésite parce que je sais que je risque de provoquer des crises cardiaques ;-) Plus sérieusement, je commence à avoir un rythme bien rodé, donc, je devrais pouvoir y intégrer (/me croise les doigts et touche du bois) les posts sur Dual Blog. Le pire, c'est que ça me fait réellement plaisir d'y écrire, de même que de remplir mon wiki, mais je suis en chronique manque de temps en fait.
Commentaire de Morgan sur le post Status update
OMG, un post !
Content de savoir que tu as trouvé un job conforme à tes attentes !
Commentaire de DeFr sur le post Dual Blog libéré
Jusqu'à il y a en gros un an, il n'y avait littérallement aucune protection contre le spam, et ce n'était pas un problème parce que je n'étais pas réellement une cible, j'avais réussi à échapper aux mailles du filet pour une raison mystérieuse mais dont je ne me plaignais pas ;-) Malheureusement depuis, j'ai été repéré, et j'ai par conséquent testé plusieurs dispositifs possibles, sans vouloir utiliser de captcha pour deux raisons: ils ont des problèmes non négligeables en terme d'accessibilité d'une part, et ils sont cassables informatiquement d'autre part. La solution sur laquelle je suis arrivé en ce moment, c'est l'utilisation d'Akismet, un service visant à lutter contre le spam au niveau mondial, et assez spécialisé dans la lutte du spam provenant des commentaires sur les blogs.
Très concrètement, pour chacun des commentaires qui sont postés, on vérifie (ligne 25) auprès du serveur d'Akismet la probabilité que le message soit ou non du spam, en fonction du contenu du message, de l'auteur, de l'ip, ... Si Akismet pense que ce n'est pas du spam, je l'affiche directement (et m'envoie un mail m'informant de la publication du commentaire), sinon, ca passe en modération, et je recois quotidiennement un mail me lisant les commentaires qui ont été placés dans cette file de modération.
Je n'ai pour le moment pas eu un seul faux positif, et les commentaires qui passent au travers des mailles d'Akismet sont relativement rares, donc je reste là dessus pour le moment. En toute objectivité, il y a quand même deux problèmes avec Akismet: d'une part, il s'agit d'une boite noire sur laquelle on n'a pas réellement de controle, et d'autre part il est necessaire de créer un compte WordPress (gratuitement) pour pouvoir accéder au service. Le deuxième problème part toutefois d'un bon sentiment: en obligeant les gens à avoir un compte, on évite qu'un grand nombre de spammeurs utilise le service en prétendant que leur spam a été considéré comme tel par erreur, faussant l'algorithme bayesien qui se trouve probablement derrière.
Commentaire de Shadow sur le post Dual Blog libéré
Petite question concernant Dual-Blog : il n'y a apparemment aucun test anti robot spammeur, est-ce que ce n'est pas un souci potentiel ?