SansFiltre

Aller au contenu | Aller au menu | Aller à la recherche

Technologie et liberté de parole;...

Ce matin, comme d'habitude, je regardes mon agrégateur. Comme d'habitude, je jette un œil rapide aux commentaires bloqués par l'antispam. Et là je reconnais deux commentaires qui ont été bloqués par Akismet. Ce sont des commentaires comme beaucoup en reçoivent régulièrement d'une certaine nina. Ce sont apparemment des commentaires postés manuellement par quelqu'un qui voudrait faire entendre sa voix. Sophie a récemment fait un billet sur le sujet.

Akismet étant utilisé par des milliers (millions) de moteurs de blog, si cette personne est classée comme spameuse par Akismet, elle n'a "virtuellement" plus le droit à la parole dans les commentaires de milliers (millions) de blogs. Ca pose un sacré problème ! Un logiciel aveugle peut ainsi filtrer qui a le droit de publier et qui ne l'a pas.

C'est un sujet qui a déjà été abordé ici ou là. Il est important de le garder à l'esprit...

Pas à pas pour Spamclear (2)

Voici un petit résumé pas à pas de la marche à suivre pour utiliser SpamClear sur un carnet équipé de Spamplemousse. Les parties en italique reflètent mes choix et opinions personnels.

Versions

Installation

Je considère ici que Dotclear et Spamplemousse sont déjà installés et opérationels.

  • Cliquer sur Outils
  • Puis sur Gestionnaire des plugins
  • Copier l'URL du package SpamClear[1] puis la coller dans le champ Indiquez l'URL (http ou ftp) du fichier de plugin :
  • Cliquer sur le bouton Commencer l'installation.

texte alternatif

  • Cliquer sur Suivant->.
  • Puis encore sur Suivant->.

texte alternatif

  • Cliquer sur Continuer vers l'interface de Spamclear

texte alternatif

Modifier le fichier tb.php

Modifier le fichier tb.php qui se trouve à la racine du site. Après la ligne 149

require_once dirname(__FILE__).'/'.DC_ECRIRE.'/tools/spamplemousse/inc/tb.php';

insérer la ligne

require_once dirname(__FILE__).'/'.DC_ECRIRE.'/tools/spamclear/inc/tb.php';

(l'ordre des lignes est important)

Retourner dans le navigateur.

Premier entrainement

Un filtre bayesien n'a besoin d'être entrainé que sur quelques exemples. Au fil du temp, il faudra le réentrainer sur de nouveaux commentaires ou son résultat deviendrait moins performant.

Mettre en ligne quelques spam récents retenus par Spamplemousse pour avoir de la matière.

  • Cliquer sur Outils
  • Cliquer sur SpamClear
  • Cliquer sur Administration

L'icône à droite de chaque message vous indique son statut. Si ce statut est erroné, vous pouvez le modifier en cliquant cette icône.

  • texte alternatif vous permet de marque comme non spam.
  • texte alternatif vous permet de marque comme spam.

Pour aller plus loin

Attention, dans ce mode, les opérations sont moins simple et il est possible de faire des érreures. Pour les commentaires ou Spamclear s'est trompé, préférez le Mode normal au Mode avancé.

  • Dans la fenêtre d'administration, cliquer sur Mode avancé
  • Cocher la case Afficher la probabilité d'être un spam
  • Cliquer sur Afficher
  • Dans la liste, repérer les non spam dont le score est à plus de 5% [2]. Cliquer sur l'icone texte alternatif pour que Spamclear ajoute ce commentaire à sa base d'entrainement.
  • Dans la liste, repérer les spam dont le score est à moins de 95% [3]. Cliquer sur l'icone texte alternatif pour que Spamclear ajoute ce commentaire à sa base d'entrainement.

Entretenir l'entrainement

Refaites les opération ci-dessus de temps en temps sur les derniers commentaires reçus et principalement quand des spam recommencent à passer ou que des non spam sont retenus par le filtre.

FAQ

Est-ce que le fait de supprimer des commentaires a une incidence sur l'entraînement du filtre une fois l'entraînement fait ?

Réponse sur le forum : http://www.dotclear.net/forum/viewtopic.php?pid=89745#p89745

Ma réponse : Lors de l'entrainement, SpamCLear stock les informations dans sa base de donnée. On peut donc supprimer les commentaires et rétroliens concernés sans problème.

Cet article est une mise à jour de l'article original Pas à pas pour SpamClear

Notes

[1] clique sur le bouton droit, puis Copier l'URL

[2] Cette valeur est arbitraire, mais semble Ok

[3] Cette valeur est arbitraire, mais semble Ok

Avatar MyBlogLog

Voilà une bidouille qui traînait sur mon disque dur depuis un moment.

Mise à jour du 11/5/2007, corrections de deux fautes typo grâce à l'intervention de L-tz dans les commentaires. Une autre version a été publiée sur les forums Dotclear.

J'ai vu qu'il y avait un plugin pour WordPress permettant d'afficher l'avatar des commentateurs qui ont un compte sur MyBlogLog. J'ai trouvé ça amusant. en décortiquant un peu le problème, je me suis aperçu que c'était très simple. Alors j'ai transformé ça en une bidouille pour Dotclear 1.2.5.

Il suffit de modifier le fichier post.php du thème utilisé. Le numéro de ligne n'étant pas vraiment significatif, j'ai mis un extrait du code du mien avec un + devant les lignes ajoutées. Il faut supprimer ce signe "+" en copiant le code.

 	<?php while ($comments->fetch()) : /* Boucle de commentaires */
 		+ $href =$comments->f('comment_site'); # MyBlogLog
 		+ $avatar = "<a href=\"http://www.mybloglog.com/buzz/co_redir.php?t=&href=". $href ."\" target=\"_blank\"><img style=\"border: 1px solid #000; \" src=\"http://pub.mybloglog.com/coiserv.php?href=http://". $href . "\" border=\"0\" alt=\"See my profile on MyBlogLog.com!\" title=\"See my profile on MyBlogLog.com!\" onload=\"if (this.width < 48) { this.title = 'Get a MyBlogLog account!'; this.alt = 'Get a MyBlogLog account!'}\"  /></a>"; /* MyBlogLog */
 		// On met le numéro du commentaire dans une variable
 		$co_num = $comments->int_index+1;
 	?>

et, plus loin :

 		Le <?php dcCommentDate(); ?> &agrave;
 		<?php dcCommentTime(); ?>, par
 		<strong><?php dcCommentAuthor(); ?></strong>
 		<?php dcCommentAuthorSite(':: <a href="%s">site</a>'); ?>
 		+ <?php echo $avatar; /* MyBlogLog */ ?>
 		</p>

PS : comme d'hab, faites une copie de sauvegarde du fichier avant de le modifier.

PPS : comme d'hab, si cette bidouille casse tout, si votre carnet vous quitte avec votre meilleur ami-e, si la terre s'écroule... je ne suis pas responsable !

Activer coComment avec Dotclear 1.2

Un petit tour sur la page integrate me permet de découvrir qu'il est possible d'intégrer coComment (aussi disponible en français par un menu) dans son outil de gestion de carnet. A partir des exemples donnés, voici le code que j'ai ajouté tout au début du fichier post.php de mon template.

<!-- coComment -->
<script type="text/javascript">
// this ensures coComment gets the correct values
coco =
{
     tool          : "Dotclear 1.2",
     siteurl       : "<?php dcInfo('url'); ?>",
     sitetitle     : "<?php dcInfo(); ?>",
     pageurl       : "<?php dcPostURL(); ?>",
     pagetitle     : "<?php dcPostTitle(); ?>",
     formID        : "comment-form",
     textareaID    : "c_content",

     <?php if ( $user_ID ) : ?>
     author : "<?php echo $user_identity; ?>",
     <?php else : ?>
     authorID : "author",
     <?php endif; ?>
     buttonID      : "submit"
}
</script>
<script id="cocomment-fetchlet" src="http://www.cocomment.com/js/enabler.js" type="text/javascript">
// this activates coComment
</script>
<!-- coComment end-->

Les commentaires revisités

Un beau prototype pour une avancée certaine dans le système des commentaires. A suivre...

via Fred Cavazza

SpamClear version 2.0

J'avais loupé ce billet annonçant la sortie de SpamClear version 2.0 (en français) pour Dotclear (version supérieure à 1.2.1 mais pas Dotclear 2).

SpamClear est un filtre bayesien pour se protéger des spams de commentaires et de rétroliens.

Je l'installe et je vous tient au courant.

Pas à pas pour SpamClear

Une version plus récente de cet article, Pas à pas pour Spamclear (2)

Je viens de refaire une installation de SpamClear sur un carnet équipé de Spamplemousse. Voici un petit résumé pas à pas de la marche à suivre. Les parties en gras italique reflètent mes choix et opinions personnels.

Versions

DotClear 1.2.4
Spamplemousse 0.1.4
SpamClear 0.1.2 (URL du package http://slashboot.free.fr/spamclear/download.php)

Installation

Je considère ici que DotClear et Spamplemousse sont déjà installés et opérationels.

  • Cliquer sur Outils
  • Puis sur Gestionnaire des plugins
  • Copier l'URL du package SpamClear puis la coller dans le champ Indiquez l'URL (http ou ftp) du fichier de plugin :
  • Cliquer à nouveau sur Outils
  • Cliquer sur SpamClear. Vous aurez un message à propos de la création des tables.
  • Cliquer de nouveau sur Outils, puis sur SpamClear. Vous devez obtenir l'écran suivant.
  • Modifier le fichier tb.php qui se trouve à la racine du site. Après la ligne 149

require_once dirname(__FILE__).'/'.DC_ECRIRE.'/tools/spamplemousse/inc/tb.php';
insérer la ligne
require_once dirname(__FILE__).'/'.DC_ECRIRE.'/tools/spamclear/inc/tb.php';
(l'ordre des lignes est important)

  • Retourner dans le navigateur.
Premier entrainement

Un filtre bayesien n'a besoin d'être entrainé que sur quelques exemples. Au fil du temp, il faudra le réentrainer sur de nouveaux commentaires ou son résultat deviendrait moins performant.

Mettre en ligne quelques spam récents retenus par Spamplemousse pour avoir de la matière.

  • Cliquer sur Outils
  • Cliquer sur SpamClear.
  • Cocher la case Show spam score et cliquer sur View.
  • Dans la liste, repérer les non spam dont le score est à plus de 5%. S'ils ont une croix rouge , cliquer la croix rouge à droite de la ligne pour qu'elle devienne une coche verte . Cocher la case à gauche de leur titre.
  • en bas de la page, dans le menu With selected choisir Train database et cliquer sur Go.
  • Cliquer Ok dans l'alerte.
  • Cocher la case Show spam score et cliquer sur View.
  • Dans la liste, repérer les spam dont le score est à moins de 90%. S'ils ont une coche verte, cliquer la coche verte à droite de la ligne pour qu'elle devienne une croix rouge . Cocher la case à gauche de leur titre.
  • en bas de la page, dans le menu With selected choisir Train database et cliquer sur Go.
Entretenir l'entrainement

Refaites les opération ci-dessus de temps en temps sur les derniers commentaires reçus et principalement quand des spam recommencent à passer ou que des non spam sont retenus par le filtre.

PS: pour les suppressions en masse, j'utilise toujours l'excellent MCommentaires.

Test

Mesures anti spam pour Dotclear

Voir aussi Pas à pas pour Spamclear (2)

Ce champ d'exploration est devenue ... un chantier. Alors j'ouvre ce billet ou je vais tenir à jour une liste des divers billets qui proposent des "solutions". Mais je vais d'abord rappeler l'URL des deux outils vraiments efficaces selon moi :

"Solutions"

Billet en cour d'écriture, susceptible de changer fréquement...

Protection contre les Spam de commentaires 3

Ce sujet va sans doute nous occuper un moment. Au moins jusqu'à la sortie de DotClear 2, voir plus...

J'ai trouvé la suggestion de Jérôme intéressante car elle est simple et sans danger pour une efficacité certaine dans les conditions décrites. Mais...

  • Elle deviendra inéficace dès que les spammeurs utiliseront un vrais parseur HTML au lieu d'un parseur rustique comme ils semblent le faire actuellement.
  • J'ai beaucoup plus de spams de trackback que de spam de commentaires.

J'aimerai bien les impressions de ceux qui l'ont mise en oeuvre.

Il semble que les concepteurs d'outils de spam de commentaires/trackback ne soient pas les mêmes que ceux qui font des outils de spam de mail. Avec les outils actuellements utilisés pour les spams de mail, Spamplemousse serait quasiment inéficace. Et je me demande combien de temps les spammeurs de carnets vont mettre pour apprendre les techniques de leurs collègues ?

En l'état actuel, sur ce carnet, Spamplemousse bloque à peu près 80% des spams et SpamClear bloque les 20% restant (à vue de nez). Mais je me désole quand je vois passer chez mes voisins des spams qui sont bloqués chez moi. J'aurais aimé que Spamplemousse dispose d'une fonction de mise à jour de la liste des mots spams à partir d'un autre carnet. Il aurait ensuite été simple de développer un "réseau de confiance" dans lequel des auteurs se feraient mutuellement confiance pour mettre à jour leurs listes respectives de mots spam. J'ai vu que cette fonction avait été disuttée et écartée. Je n'ai pas participé à cette discussion. J'avais commencé à écrire un peu de code pour faire un plugin simple permettant cette fonction. Ce qui m'a arrété ce sont trois considérations :

  • Je suis un mauvais développeur
  • Il est dommage de rajouter encore un plugin pour une fonction aussi insignifiante
  • L'accueil de la "communauté" est plutôt refroidissant.

J'aimerai bien que les différents outils proposés soient dotés d'outils de mesure de leur travail. J'avais suivi les dévelopements de Spambayes depuis ses débuts. Et j'avais été impressionné, entre autre, par la rigueure des tests d'efficacité à chaque modification de l'algorythme. Les dévelopeurs avaient rassemblé des collections de courriers normaux et de spam dans des dossiers, et à chaque modification ils utilisaient un script qui classait ce corpus témoin et qui calculait des statistiques sur les faux positifs et les faux négatifs. Si le nouveau paramètre améliorait ces scores, il était gardé. Si son effet était faible ou incertain (améliorant l'un et diminuant l'autre), il devenait paramétrable par l'utilisateur. Sinon il était rejeté.

Voir d'autres compte rendu de tests de SpamClear (discussion) chez Bertrand Rousseau et chez David Latapie.

Protection contre les Spam de commentaires

Les spam de commentaires et de trackback se multiplient en ce moment. Certains utilisent un CPATCHA pour s'en protéger. Je n'aime pas ce principe. Et quand je suis confronté à un tel système, je renonce à poster mon commentaire 9 fois sur 10. Il me semble que si quelqu'un fait l'effort de commenter chez moi, je ne peut pas lui compliquer la vie.

Une petite équipe a développé Spamplemousse pour Dotclear. Le système, rustique, fonctionne bien. Il a deux inconvénients.

  • Il utilise les RBL (ou DNSBL). Or peu d'entre eux sont fiables.
  • Il utilise des mots clé pour filtrer. Ce système atteint très vite ses limites. Et les visiteurs doivent très vite surveiller leur vocabulaire pour pouvoir continuer à commenter.

Depuis peu est apparu SpamClear. Il utilise une technologie Bayesienne basée sur les probabilitées. C'est une direction nouvelle parmis les outils pour Dotclear. C'est une technologie intéressante qui, vu ses résultats dans le domaine du mail depuis bientôt 4 ans, mérite d'être développée pour les commentaires et les rétroliens des carnets. L'inconvénient des filtres bayesiens c'est qu'ils doivent être entrainés. Mais cette contrainte s'estompe assez vite. Ce projet mérite d'être soutenu.

Les trois points à suivre me semblent être :

  • Amélioration de l'interface utilisateur pour le rendre plus simple à utiliser.
  • Compatibilité avec Spamplemousse ?
  • Une fois SpamClear installé, est-ce que Spamplemousse est encore utile ?
Historique

L'utilisation du théorème de Bayes pour le filtrage des spam a été proposé par Paul Graham en Aout 2002. Des dévelopeurs se sont précipité sur l'idée et ont développé divers outils utilisant l'inférence bayésienne. pour le filtrage des mail. J'utilise, depuis ses débuts Spambayes. Il n'est pas simple à installer (sauf pour Outlook). Mais il fonctionne très bien. Son filtrage atteint vite des niveaux satisfaisants. Cette technologie est aussi utilisée dans Thunderbird et SpamAssassin.

Attention, en travaux

Grâce à Kozlika, je suis en train de tester un nouveau plugin antispam.

Perturbations possibles ;-)

A propos...

De ce carnet

J'ai des carnets depuis fort longtemps (1998 avec Radio Userland), dans lesquels j'écrit de manière aléatoire. J'ai d'abord eu un carnet unique (sous Radio, puis sous PyBlosxom). J'ai ensuite ouvert des carnets dédiés (sous MovableType), un en anglais et un autre en français sur l'univers des carnets et les sujets connexes plus un bilingue sur l'impression numérique (mon métier). Pour des raisons d'hébergement, j'ai arrété mon carnet sous PyBlosxom et j'ai eu envie d'avoir un carnet un peu plus personnel. J'ai alors ouvert SansFiltre sur Joueb.com. Je suis très content de son fonctionnement. Par contre je suis désespéré du problème des spam de commentaires sur MovableType. J'ai donc décidé de bouger, une fois de plus et probablement de rassembler ici tous mes écrits. Ce carnet est accompagné d'un wiki qui me sert de carnet de notes. J'ai ouvert depuis un moment un Wiki permettant de décripter le Jargon utilisé dans la blogosphère. Ce carnet est une nouvelle tentative de rassembler des écrits dispersés. Il m'est difficile de donner mes raisons de tenir un carnet. Je peut citer en vrac:

  • communiquer,
  • faire partie d'une aventure,
  • prendre des notes,
  • donner mon opinion,
  • rencontrer des gens, même si je ne le rencontre pas forcément IRL,

Ce que ce carnet n'est pas:

  • un journal intime,
  • un site de news,
  • une exploration exhaustive d'un sujet,
  • un journal d'humeur...
De moi

J'ai 51 ans passé, je travaille depuis 20 ans dans l'univers de la PAO comme support puis responsable technique. J'ai fait une tentative dans la création de société. Je suis maintenant consultant indépendant. A coté de l'univers de l'impression numérique, je consacre pas mal de temps à des projets de création d'outils pour la publication collaborative. Mon curriculum vitae en français et en anglais.

QuiEst: François Granger voir

Pour me joindre
  • Mail: francois.granger à gmail.com
  • Jabber (ou autre): fgranger à jabber.org
  • laisser un commentaire ici...