{"id":101,"date":"2013-12-06T22:44:27","date_gmt":"2013-12-06T21:44:27","guid":{"rendered":"http:\/\/blog.beufa.net\/?p=101"},"modified":"2013-12-06T22:44:27","modified_gmt":"2013-12-06T21:44:27","slug":"installation-de-mailpile-et-de-rainloop","status":"publish","type":"post","link":"https:\/\/beufa.net\/fr\/blog\/installation-de-mailpile-et-de-rainloop\/","title":{"rendered":"Installation de mailpile et de RainLoop"},"content":{"rendered":"<p>Apr\u00e8s recherche de solutions rempla\u00e7ant un Roundcube pour mon webmail perso, je suis tomb\u00e9 sur plusieurs projets :<\/p>\n<ul>\n<li><a href=\"https:\/\/www.mailpile.is\/\" target=\"_blank\">MailPile<\/a>, un webmail python, en cours de d\u00e9veloppement<\/li>\n<li><a href=\"http:\/\/rainloop.net\/\" target=\"_blank\">RainLoop<\/a>, un webmail PHP\/Ajax, qui semble plus fini<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n<p><strong>Installation de RainLoop<\/strong><\/p>\n<p>L&#8217;installation de RainLoop est assez simple :<\/p>\n<pre class=\"brush:shell\">cd \/var\/www\/html\/rainloop\/\nfind . -type d -exec chmod 777 {} ;\nfind . -type f -exec chmod 666 {} ;\nwget -qO- http:\/\/repository.rainloop.net\/installer.php | php<\/pre>\n<p>Ensuite, il suffit de cr\u00e9er un vhost sur votre apache (ici en SSL sur myhost.beufa.net) :<\/p>\n<pre class=\"brush:shell\">&lt;VirtualHost *:443&gt;\n        ServerAdmin postmaster@beufa.net\n        ServerName  myhost.beufa.net\n        DocumentRoot \/var\/www\/html\/rainloop\n        SSLEngine on\n        SSLCipherSuite ALL:!ADH:RC4+SHA:+HIGH:+MEDIUM:+LOW:+EXP:+eNULL\n        SSLProtocol all -SSLv2\n        SSLStrictSNIVHostCheck on\n        SSLOptions StrictRequire\n        SSLCertificateFile      \/etc\/ssl\/certs\/myhost.cert\n        SSLCertificateKeyFile   \/etc\/ssl\/private\/myhost.key\n        #GnuTLSEnable on\n        #GnuTLSPriorities SECURE:!ANON-DH:!MD5\n        #GnuTLSCertificateFile cert.pem\n        #GnuTLSKeyFile cert.pem\n        #GnuTLSCertificateChainFile cert.pem\n        #GnuTLSCACertificatePath \/\n\n        &lt;Directory \/var\/www\/html\/rainloop&gt;\n                Options FollowSymLinks MultiViews\n                AllowOverride All\n                Order allow,deny\n                allow from all\n        &lt;\/Directory&gt;\n\n        &lt;Directory \/var\/www\/html\/rainloop\/data&gt;\n                Options -FollowSymLinks\n                AllowOverride None\n                Order allow,deny\n                Deny from all\n        &lt;\/Directory&gt;\n\n        # Possible values include: debug, info, notice, warn, error, crit,\n        # alert, emerg.\n        LogLevel warn\n\n        ErrorLog \/var\/log\/httpd\/myhost.beufa.net\/error_log\n        CustomLog \/var\/log\/httpd\/myhost.beufa.net\/access_log combined\n\n&lt;\/VirtualHost&gt;<\/pre>\n<p>Et vous obtiendrez alors le webmail apr\u00e8s une configuration sur https:\/\/myhost.beufa.net\/?admin (Le login \/ mot de passe par d\u00e9faut est admin :: 12345, il faut donc le changer !)<\/p>\n<p>Une version de d\u00e9monstration est disponible ici : <a href=\"http:\/\/rainloop.net\/try-now\/\" target=\"_blank\">http:\/\/rainloop.net\/try-now\/<\/a><\/p>\n<p><strong>Installation de MailPile<\/strong><\/p>\n<p>MailPile est encore en d\u00e9veloppement, et honn\u00eatement, ca a l&#8217;air loin d&#8217;\u00eatre fini. Curieux, j&#8217;ai quand m\u00eame gratter pour l&#8217;installer :<\/p>\n<pre class=\"brush:shell\"># Installation des d\u00e9pendances (suivant votre syst\u00e8me, ici en CentOS 6.5)\nyum install python-imaging python-jinja2 python-lxml python-devel python-pip python-setuptools\n\n# Clone git du repository github\ncd \/opt\/\ngit clone https:\/\/github.com\/pagekite\/Mailpile.git \ncd Mailpile\n\n# Installation des d\u00e9pendances pip (upgrade de jinja2 pour \u00e9viter l'erreur sur les templates)\npip install -r requirements.txt\npip install jinja2 --upgrade\n\n# Setup de Mailpile\n.\/mp --setup\n\n# On ajoute un compte et son dossier de stockage\n.\/mp --set \"profiles.0.email = mymail@beufa.net\"\n.\/mp --set \"profiles.0.name = My Name FirstName\"\n.\/mp --add \/opt\/vmail\/mymailhost.net\/myname\/  --rescan all\n\n# On d\u00e9marre le d\u00e9mon www\n.\/mp --www<\/pre>\n<p>Le d\u00e9mon \u00e9coutant sur localhost et le port 33441, le plus simple est de cr\u00e9er un Reverse Proxy Apache pour le test :<\/p>\n<pre class=\"brush:shell\">&lt;VirtualHost *:443&gt;\n        ServerAdmin postmaster@beufa.net\n        ServerName  myhost.net\n        #DocumentRoot \/var\/www\/html\/mailpile\n        SSLEngine on\n        SSLCipherSuite ALL:!ADH:RC4+SHA:+HIGH:+MEDIUM:+LOW:+EXP:+eNULL\n        SSLProtocol all -SSLv2\n        SSLStrictSNIVHostCheck on\n        SSLOptions StrictRequire\n        SSLCertificateFile      \/etc\/ssl\/certs\/myhost.net.cert\n        SSLCertificateKeyFile   \/etc\/ssl\/private\/myhost.net.key\n        #GnuTLSEnable on\n        #GnuTLSPriorities SECURE:!ANON-DH:!MD5\n        #GnuTLSCertificateFile cert.pem\n        #GnuTLSKeyFile cert.pem\n        #GnuTLSCertificateChainFile cert.pem\n        #GnuTLSCACertificatePath \/\n\n        &lt;Proxy *&gt;\n                Order deny,allow\n                Allow from all\n        &lt;\/Proxy&gt;\n\n        ProxyRequests Off\n        ProxyPreserveHost On\n        ProxyPass \/ http:\/\/localhost:33411\/\n        ProxyPassReverse \/ http:\/\/localhost:33411\/\n\n        &lt;Location \/&gt;\n                Order allow,deny\n                Allow from all\n        &lt;\/Location&gt;\n        # Possible values include: debug, info, notice, warn, error, crit,\n        # alert, emerg.\n        LogLevel warn\n\n        ErrorLog \/var\/log\/httpd\/myhost.net\/error_log\n        CustomLog \/var\/log\/httpd\/myhost.net\/access_log combined\n\n&lt;\/VirtualHost&gt;<\/pre>\n<p>Vous pouvez alors tester sur le vhost reverse proxy ainsi cr\u00e9\u00e9. Par contre, par encore de formulaire d&#8217;authentification, ce qui fait que votre mail est accessible &#8220;all around the world&#8221; ! Prot\u00e9gez l&#8217;interface \u00e0 minima avec un htaccess ou une authentification basique dans le vhost.<\/p>\n<p><strong>En r\u00e9sum\u00e9<\/strong><\/p>\n<p>RainLoop semble un produit fini, mais il y a certaines choses manquantes :<\/p>\n<ul>\n<li>Pas d&#8217;import possible des contacts<\/li>\n<li>Fonctionnalit\u00e9s et configuration tr\u00e8s tr\u00e8s basiques<\/li>\n<li>Gestion des threads de conversation limit\u00e9e et pas forc\u00e9ment pratique<\/li>\n<li>Pas d&#8217;affichage des headers mail comme sur Roundcube<\/li>\n<li>Pas de v\u00e9rification des sous dossiers IMAP<\/li>\n<\/ul>\n<p>Pour MailPile, m\u00eame si le projet est prometteur (Support OpenPGP, chiffrement des pi\u00e8ces jointes &#8230;), il manque encore :<\/p>\n<ul>\n<li>Un formulaire d&#8217;authentification !!!<\/li>\n<li>Une interface d&#8217;administration \u00e0 minima comme sur RainLoop<\/li>\n<li>La gestion des dossiers IMAP<\/li>\n<li>Un produit fini et utilisable tout simplement.<\/li>\n<\/ul>\n<p>Je vais suivre donc ce dernier plus sp\u00e9cifiquement, RainLoop me semblant agr\u00e9able pour l&#8217;instant en plus de RoundCube, que je garde pour l&#8217;usage avanc\u00e9 (gestion des filtres Sieve\/ManageSieve). La bonne nouvelle de ces 2 projets est qu&#8217;ils supportent tous les deux mon serveur Dovecot \/ Postfix avec SASL pour IMAPS et SMTP\/STARTTLS.<\/p>\n<p>Bref, deux produits int\u00e9ressants \u00e0 suivre !<\/p>","protected":false},"excerpt":{"rendered":"<p>Apr\u00e8s recherche de solutions rempla\u00e7ant un Roundcube pour mon webmail perso, je suis tomb\u00e9 sur plusieurs projets : MailPile, un webmail python, en cours de&#8230;<\/p>\n<div class=\"more-link-wrapper\"><a class=\"more-link\" href=\"https:\/\/beufa.net\/fr\/blog\/installation-de-mailpile-et-de-rainloop\/\">Continue reading<span class=\"screen-reader-text\">Installation de mailpile et de RainLoop<\/span><\/a><\/div>","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[19,20],"tags":[33,45,53,116,57,69,70,74,80,81,87,88],"class_list":["post-101","post","type-post","status-publish","format-standard","hentry","category-linux","category-mail","tag-apache","tag-dovecot","tag-imap","tag-mail","tag-mailpile","tag-postfix","tag-rainloop","tag-roundcube","tag-serveur-web","tag-smtp","tag-webapplis","tag-webmail","entry"],"_links":{"self":[{"href":"https:\/\/beufa.net\/fr\/wp-json\/wp\/v2\/posts\/101","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/beufa.net\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/beufa.net\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/beufa.net\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/beufa.net\/fr\/wp-json\/wp\/v2\/comments?post=101"}],"version-history":[{"count":0,"href":"https:\/\/beufa.net\/fr\/wp-json\/wp\/v2\/posts\/101\/revisions"}],"wp:attachment":[{"href":"https:\/\/beufa.net\/fr\/wp-json\/wp\/v2\/media?parent=101"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/beufa.net\/fr\/wp-json\/wp\/v2\/categories?post=101"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/beufa.net\/fr\/wp-json\/wp\/v2\/tags?post=101"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}