PROJET AUTOBLOG


Planet-Libre

source: Planet-Libre

⇐ retour index

Quack1 : Bien choisir sa licence libre

vendredi 19 juillet 2013 à 14:01

 

Je n'ai pas publié d'article sur le blog depuis plus d'une semaine. Beaucoup de boulot, mon rapport de stage à écrirefinir, bref, c'est pas super facile de trouver du temps pour écrire. D'ailleurs, ça fait au moins 2 semaines que mon lecteur de flux RSS tourne non stop à plus de 1000 items à lire :(.

Mais d'un naturel optimiste, je vais essayer de renverser la balance en publiant un nouvel article aujourd'hui! :)

Si vous êtes développeur d'un logiciel libre, vous avez sans doute dû un jour vous poser la question de la licence à utiliser pour votre projet. GPL ? en v2 ? en v3 ? Apache ? MIT ? la licence Mozilla ?

Et bien GitHub a trouvé une solution à ce problème ! Ils ont développé un site, Choose A Licence, sur lequel ils ont listé l'ensemble des licences libres disponibles, avec noté pour chacune ce qu'il est possible ou non de faire, et dans quelles circonstances.

Tout est très bien détaillé sur leur site que je vous encourage à utiliser! :)

Gravatar de Quack1
Original post of Quack1.Votez pour ce billet sur Planet Libre.

David Mercereau : [ispconfig] Remplacer Amavis/Spamassasin par Dspam

vendredi 19 juillet 2013 à 08:53

dspam-logo-textAjouter des services décentralisés “à la maison” c’est le bien mais à force d’empiler des briques… ça déborde. Et là j’étais à un stade ou la SWAP était un chouilla trop utilisée.

J’avais déjà désactivé ClamAv (anti-virus) pour économiser de la mémoire vive mais ça ne suffisait pas. Mon autre plus gros poste de dépense en RAM était Amavis/Spamassasin. Je me suis donc mis à chercher une alternative ; La plus légère et efficace semble être DSPAM.

Attention : Le fait de remplacer Amavis/Spamassasin va, de fait vous amputer de fonctionnalité administrable par le panel ISPconfig “Stratégie anti-spam”, “liste blanche” car Ispconfig ne support pas (encore !?) DSPAM

Préparation

Étant donné que le serveur est déjà en prod j’ai modifié mon script de firewall (iptables) en spécifiant seulement mon adresse IP pour l’accès au SMTP (pour les tests) ça aura pour effet de faire patienter vos emails en file d’attente sur le serveur émetteur quoi que vous fassiez comme bêtise…

< iptables -A INPUT -p tcp --dport smtp -j ACCEPT
> iptables -A INPUT -p tcp --dport smtp -s VOTRE.IP.DE.MAISON -j ACCEPT

5 jours, c’est par défaut le temps d’attente maximal de la plupart des MTA. Vous pouvez donc théoriquement bricoler pendant 5 jours sans perdre d’email dans cet état…

Installation

Je suis sous Debian squeeze, les paquets Dsapm existe pour squeeze mais dans le backport (non activé pour ma part)

Installation des dépendances :

$ aptitude install libgd-gd2-perl libgd-graph-perl libgd-graph3d-perl libgd-text-perl dbconfig-common postfix-pcre

Ensuite on récupère les paquets sur le site de debian et ont les installent

$ dpkg -i libdspam7_3.10.1+dfsg-3~bpo60+1_amd64.deb
$ dpkg -i libdspam7-drv-mysql_3.10.1+dfsg-3~bpo60+1_amd64.deb
$ dpkg -i dspam_3.10.1+dfsg-3~bpo60+1_amd64.deb
$ dpkg -i dspam-webfrontend_3.10.1+dfsg-3~bpo60+1_all.deb

Note : dbconfig-common va vous demander ce qu’il faut pour créer la base de données..”suivez le guide.”

Configuration

Postfix

Nous allons, dans postfix désactiver la partie Amavis et activer la partie Dspam /etc/postfix/main.cf :

58c58
< smtpd_client_restrictions = check_client_access mysql:/etc/postfix/mysql-virtual_client.cf
---
> smtpd_client_restrictions = check_client_access mysql:/etc/postfix/mysql-virtual_client.cf, check_client_access pcre:/etc/postfix/dspam_filter_access
71,72d70
< content_filter = amavis:[127.0.0.1]:10024
< receive_override_options = no_address_mappings
74a73,76
>
> dspam_destination_recipient_limit = 1

Même chose dans le fichier /etc/postfix/master.cf :

smtp      inet  n       -       -       -       -       smtpd
11a12
>    -o content_filter=dspam:
116,129c117,118
< 127.0.0.1:10025 inet n - - - - smtpd
<         -o content_filter=
<         -o local_recipient_maps=
<         -o relay_recipient_maps=
<         -o smtpd_restriction_classes=
<         -o smtpd_client_restrictions=
<         -o smtpd_helo_restrictions=
<         -o smtpd_sender_restrictions=
<         -o smtpd_recipient_restrictions=permit_mynetworks,reject
<         -o mynetworks=127.0.0.0/8
<         -o strict_rfc821_envelopes=yes
<         -o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
<         -o smtpd_bind_address=127.0.0.1
< 
---
> dspam   unix    -       n       n       -       10      pipe
>         flags=Rhqu user=dspam argv=/usr/bin/dspam --deliver=innocent --user $user -i -f $sender -- $recipient

Dspam

Dans mon cas j’ai choisi de tout le temps délivrer les SPAM et de tagger le sujet. L’apprentissage se fera via l’interface web (dont nous verrons la configuration plus tard)

Activer le démarrage de Dspam /etc/default/dspam

< start=NO
---
> start=YES

La configuration de Dspam à largement été inspiré du howto d’UNIX garden :

29c29
< StorageDriver /usr/lib/dspam/libhash_drv.so
---
> StorageDriver /usr/lib/dspam/libmysql_drv.so
48c48
< TrustedDeliveryAgent "/usr/bin/procmail"
---
> TrustedDeliveryAgent "/usr/sbin/sendmail"
144c144
< Trust root
---
> #Trust root
146,149c146,149
< Trust www-data
< Trust mail
< Trust daemon
< Trust amavis
---
> #Trust www-data
> #Trust mail
> #Trust daemon
> #Trust amavis
151a152
> Trust postfix
297c298
< Preference "signatureLocation=message"	# { message | headers } -> default:message
---
> Preference "signatureLocation=headers"	# { message | headers } -> default:message
371a373,380
> MySQLServer     	127.0.0.1
> #MySQLPort
> MySQLUser               dspam
> MySQLPass               MOTDEPASSEDEMALADE
> MySQLDb                 dspam
> MySQLCompress           true
> MySQLUIDInSignature    on
> 
471c480
< LocalMX 127.0.0.1
---
> #LocalMX 127.0.0.1

Pour finir sur les tags j’ai dû faire la chose suivante :

$ mkdir /var/spool/dspam/txt/
$ echo ‘Scanned and tagged as SPAM by DSPAM’ > /var/spool/dspam/txt/msgtag.spam

Premier test

Redémarrage des services pour appliquer tous ces changements :

$ service amavis stop
$ service postfix restart
$ service dspam start

Pour tester vous pouvez en envoyer un message avec la commande telnet. Voici un petit script pratique pour automatiser le test :

#!/bin/bash
from="nimportequi@domain.fr"
to="david@domain.fr"
smtp="smtp.domain.fr"
(
    sleep 1
    echo "ehlo x"
    sleep 1
    echo "mail from:${from}"
    sleep 1
    echo "rcpt to:${to}"
    sleep 1
    echo "data"
    sleep 1
    echo "subject:Test message"
    sleep 1
    echo "from:${from}"
    sleep 1
    echo "to:${to}"
    sleep 1
    echo " "
    echo "Coucou."
    sleep 1
    echo "."
    sleep 1
    echo "QUIT"
) | telnet ${smtp} 25

Dans les entêtes du message vous devriez avoir du X-DSPAM comme ceci :

X-DSPAM-Result: Innocent
X-DSPAM-Processed: Thu Jul 1 00:03:19 2050
X-DSPAM-Confidence: 0.9751
X-DSPAM-Probability: 0.0000
X-DSPAM-Signature: 1,51e7a147199049585619662

Si tout fonctionne on dégage amavis (dit “le gros amavis”) du démarrage :

update-rc.d dspam defaults
update-rc.d amavis remove

Sinon fouiller vos logs (/var/log/mail.log /var/log/syslog…)

Interface web

L’interface web est en CGI et nous allons utiliser apache & suexec (qui est déjà embarqué avec ISPconfig) pour le faire tourner

Voici la configuration du virtualhost (sites-available/dspam)


    
        DocumentRoot /var/www/dspam

        # Problème css, image : 
        Alias /usr/share/dspam /usr/share/dspam

        ServerName dspam.domain.fr
        ServerAdmin dspam@domain.fr

        SuexecUserGroup dspam dspam

        
            Options ExecCGI
            Options -Indexes
            Addhandler cgi-script .cgi
            DirectoryIndex dspam.cgi
        

        
            Options FollowSymLinks
            AllowOverride None
            Order allow,deny
            allow from all
            AuthType Basic
            AuthName "Restricted DSPAM user"
            Auth_MYSQLhost localhost
            Auth_MYSQLusername ispconfig
            Auth_MYSQLpassword MOTDEPASSESUPERCHAUD
            Auth_MYSQLdatabase dbispconfig
            Auth_MYSQLpwd_table mail_user
            Auth_MYSQLuid_field login
            Auth_MYSQLpwd_field password
        
    

On active le virtualhost :

$ a2ensite dspam
$ service apache2 graceful

On ajoute le compte admin de l’interface :

$ echo "david" > /etc/dspam/admins

Vous devriez maintenant pouvoir vous rendre sur l’interface :

Conclusion

L’objectif premier était d’économiser de la mémoire vive, c’est chose faite ! la preuve en image :

memory-day

Je suis aussi très satisfait de l’apprentissage de DSPAM. Au début ça peut faire peur parce qu’il laisse vraiment tout passer, mais l’apprentissage est rapide et significatif :

Les premiers jours d'utilisation de DSPAM

Les premiers jours d’utilisation de DSPAM

Ressources

Les sites ressources que j’ai utilisées :

Gravatar de David Mercereau
Original post of David Mercereau.Votez pour ce billet sur Planet Libre.

Philippe Scoffoni : Zimbra, OBM et Blue Mind sont sur un bateau, tout le monde tombe à l’eau ?

jeudi 18 juillet 2013 à 23:02

rameurJe dois avouer que j’ai été surpris ce matin en lisant mes flux RSS et en découvrant un article intitulé « Linagora se gausse de Zimbra, et vante OBM… Et si l’on parlait de Blue Mind ? ». Difficile de rester indifférent et à cela plusieurs raisons.

Tout d’abord la forme de l’article. Le rédacteur s’en prend directement à Alexandre Zapolsky, le dirigeant de Linagora et à sa campagne de communication clairement « anti-Zimbra ». Une campagne commencée lors du choix par le GIP Renater de la suite Zimbra.

L’auteur nous fait ensuite la petite histoire du projet OBM, une messagerie collaborative. Cette dernière fut acquise lors du rachat en 2006 de la société toulousaine AliaSource. En 2010, tout ou partie de l’équipe en charge du développement d’OBM (celle d’AliaSource apparemment) quitte Linagora pour fonder une autre société nommée Blue Mind et pour développer une nouvelle messagerie collaborative concurrente.

J’aurais tendance à dire, c’est du business, des affaires de relations humaines, ça ne regarde que les personnes concernées. Le journaliste se sert de cette petite histoire pour casser un peu de sucre sur le dos de A. Zapolsky.

En soi l’article n’a pas d’intérêt et passe à côté des questions de fond. J’aurais même tendance à dire qu’il est contre-productif et fait au final de l’ombre à tout le monde, y compris à ceux qui n’avaient probablement rien demandé, logiciel libre compris.

Nous avons ici l’illustration de ces petites histoires de rachat qui tournent autour des logiciels libres portés par UNE entreprise. Regardons Zimbra, un bon outil au demeurant, qui change de main régulièrement et dont on se demande à chaque fois quelle partie de son code va se fermer un peu plus. Quant à l’histoire d’OBM et de Blue Mind, elle montre une autre fragilité, celle du lien étroit de subordination entre les développeurs salariés et l’employeur. La moindre discorde et tout peut partir de travers. Au final, c’est beaucoup d’argent et d’énergie gâchés.

Le modèle communautaire s’il n’est pas parfait permet en partie d’amortir cet aspect et de donner une plus grande pérennité aux projets. Bien sûr, rien n’empêche les disputes et les forks entre équipes de développeurs. Mais, les rapports de force ne sont pas de subordination contractuelle, client/fournisseur ou salarié/dirigeant. La gouvernance et la diversité des acteurs permettent d’établir un équilibre sur le long terme. Mais les communautés de développeurs ne sont probablement pas toujours faites pour réaliser des logiciels “ready to use”.

Alors bien sûr, heureusement qu’il y a des éditeurs de logiciels libres ou open source. Sans eux, nous n’aurions pas autant de solutions matures à mettre à disposition des utilisateurs. Je parle ici du domaine des entreprises, la question est différente dans le monde du grand public. Dans le domaine de la messagerie collaborative, c’est même devenu « criant ».

Il nous reste encore les communautés d’usages et d’utilisateurs qui en mutualisant leurs moyens pourraient réaliser cette “symbiose parfaite”. Pourquoi pas une MessagingFundation, portant une suite logicielle dédiée à la gestion des “messages” sur l’internet tout comme Mozilla se veut le garant d’un web “ouvert” et respectueux des standards. Certains essaient de monter ce genre de communautés depuis longtemps.

Mais faire du logiciel libre en l’état, n’est-ce pas comme décider d’abandonner sont travail à « l’humanité » ? Seulement voilà, il faut bien manger aussi. Ne serait-il pas temps d’envisager un logiciel libre 2.0 plus équitable ou équilibré pour ceux qui le font et ceux qui l’utilisent ? Je vous renvoie pour méditation à cette interview de l’auteur d’une licence libre qui se voulait plus « équitable » : la licence LIANG. L’autre méditation concernera également le système monétaire dans lequel nous vivons basés sur un code propriétaire ou « privateur » qui n’aide pas non plus.

Pour rester détendu et « boire frais » sur ce genre d’articles, je vous ai mis un petit fond d’image pour le site spécial été. Tchin ;-) !


Réagir à cet article

Article original écrit par Philippe Scoffoni le 18/07/2013. | Lien direct vers cet article

Cette création est mise à disposition sous un contrat Creative Commons BY à l'exception des images qui l'illustrent (celles-ci demeurent placées sous leur mention légale d'origine).

.

Gravatar de Philippe Scoffoni
Original post of Philippe Scoffoni.Votez pour ce billet sur Planet Libre.

Remi Collet : Plus d'extensions PHP pour RHSCL

jeudi 18 juillet 2013 à 15:48

Dans le billet Red Hat va fournir PHP 5.4 pour RHEL-6 je présentais l'offre Red Hat pour PHP 5.4.

Actuellement il n'existe pas moyen de proposer des paquets supplémentaires dans EPEL, en attendant j'utilise un dépôt privé.

Voir : PHP 5.4 Software Collection for RHEL 6.4 x86_64

Ce dépôt contient des RPM identiques à ceux de RHSCL (ou plus anciens) ainsi que plusieurs nouveaux paquets, destinés à rejoindre RHSCL ou plus probablement EPEL en fonction des besoins / possibilités.

Actuellement (10):

D'autres devraient suivre (je mettrais ce billet à jour)

L'adaptation des spec est relativement simple, les modifications (pour ceux que je maintiens) sont enregistrés dans le git du projet Fedora. Voir l'adaptation de xdebug pour exemple.

Gravatar de Remi Collet
Original post of Remi Collet.Votez pour ce billet sur Planet Libre.

Articles similaires

Nicolas Lœuillet : Adaptation de minimal pour Dotclear

jeudi 18 juillet 2013 à 14:24
Adaptation du thème minimal (responsive), initialement créé par orderedlist pour GitHub Pages.   Capture d'écran de minimal pour Dotclear

Gravatar de Nicolas Lœuillet
Original post of Nicolas Lœuillet.Votez pour ce billet sur Planet Libre.

I'm richer than you! infinity loop