<?xml 
version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://info.lesbarques.fr/spip.php?page=backend.xslt" ?>
<rss version="2.0" 
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:atom="http://www.w3.org/2005/Atom"
>

<channel xml:lang="fr">
	<title>INFO les barques</title>
	<link>https://info.lesbarques.fr/</link>
	<description></description>
	<language>fr</language>
	<generator>SPIP - www.spip.net</generator>
	<atom:link href="http://info.lesbarques.fr/spip.php?id_mot=39&amp;page=backend" rel="self" type="application/rss+xml" />




<item xml:lang="fr">
		<title>MAIL : 5&#232;me Etape - Quotas, S&#233;curisation </title>
		<link>http://info.lesbarques.fr/spip.php?article96</link>
		<guid isPermaLink="true">http://info.lesbarques.fr/spip.php?article96</guid>
		<dc:date>2008-07-24T14:07:32Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Georges Charpenay</dc:creator>


		<dc:subject>DEBIAN</dc:subject>
		<dc:subject>LINUX</dc:subject>
		<dc:subject>MAILDROP</dc:subject>
		<dc:subject>QUOTAS</dc:subject>
		<dc:subject>SECURITE</dc:subject>

		<description>
&lt;p&gt;OPTIMISATION ET SECURISATION DU SERVEUR DE MAIL &lt;br class='autobr' /&gt;
MAILDROP - Gestion des Quotas &lt;br class='autobr' /&gt;
Nous les avons param&#233;tr&#233;s &#224; l'installation de maildrop (Create tables SQL avec colonnes). &lt;br class='autobr' /&gt;
Nous allons maintenant utiliser ces tables et cr&#233;er un message d'alerte g&#233;n&#233;rique pour un d&#233;passement de quotas. &lt;br class='autobr' /&gt;
cd /etc/ &lt;br class='autobr' /&gt;
wget http://www.starbridge.org/spip/doc/Procmail/usr/local/courier/etc/quotawarnmsg &lt;br class='autobr' /&gt;
chown -R vmail : /etc/quotawarnmsg &lt;br class='autobr' /&gt;
chmod 644 /etc/quotawarnmsg &lt;br class='autobr' /&gt;
Il faut personnaliser les messages de (&#8230;)&lt;/p&gt;


-
&lt;a href="http://info.lesbarques.fr/spip.php?rubrique80" rel="directory"&gt;Installation serveur de mail &lt;/a&gt;

/ 
&lt;a href="http://info.lesbarques.fr/spip.php?mot5" rel="tag"&gt;DEBIAN&lt;/a&gt;, 
&lt;a href="http://info.lesbarques.fr/spip.php?mot7" rel="tag"&gt;LINUX&lt;/a&gt;, 
&lt;a href="http://info.lesbarques.fr/spip.php?mot39" rel="tag"&gt;MAILDROP&lt;/a&gt;, 
&lt;a href="http://info.lesbarques.fr/spip.php?mot41" rel="tag"&gt;QUOTAS&lt;/a&gt;, 
&lt;a href="http://info.lesbarques.fr/spip.php?mot42" rel="tag"&gt;SECURITE&lt;/a&gt;

		</description>


 <content:encoded>&lt;img src='http://info.lesbarques.fr/local/cache-vignettes/L150xH100/censorship-610101_1920-aac92.jpg?1756851323' class='spip_logo spip_logo_right' width='150' height='100' alt=&#034;&#034; /&gt;
		&lt;div class='rss_texte'&gt;&lt;p&gt;&lt;strong&gt;OPTIMISATION ET SECURISATION DU SERVEUR DE MAIL&lt;/strong&gt;&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;MAILDROP - Gestion des Quotas&lt;/h2&gt;
&lt;p&gt;Nous les avons param&#233;tr&#233;s &#224; l'installation de maildrop (Create tables SQL avec colonnes).&lt;/p&gt;
&lt;p&gt;Nous allons maintenant utiliser ces tables et cr&#233;er un message d'alerte g&#233;n&#233;rique pour un d&#233;passement de quotas.&lt;/p&gt;
&lt;p&gt;&lt;i&gt;cd /etc/&lt;/p&gt;
&lt;p&gt;wget &lt;a href=&#034;http://www.starbridge.org/spip/doc/Procmail/usr/local/courier/etc/quotawarnmsg&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;http://www.starbridge.org/spip/doc/Procmail/usr/local/courier/etc/quotawarnmsg&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;chown -R vmail : /etc/quotawarnmsg&lt;/p&gt;
&lt;p&gt;chmod 644 /etc/quotawarnmsg&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Il faut personnaliser les messages de quotawarnmsg en &#233;ditant le fichier.&lt;/p&gt;
&lt;p&gt;C'est tout ce que nous avons &#224; faire en plus, d'une mani&#232;re g&#233;n&#233;rale, pour Maildrop, Postfix et Courrier-IMAP.&lt;/p&gt;
&lt;p&gt;Pour les petits r&#233;glages de quota par utilisateur et autres, pensez &#224; Postfix admin.&lt;/p&gt;
&lt;p&gt;Mais, le serveur ne filtre pas encore les virus ou les spams...&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;Installation d'un Antispam / Antivirus&lt;/h2&gt;
&lt;p&gt;Un morceau de choix, accrochons-nous !&lt;/p&gt;
&lt;p&gt;La technicit&#233; de la majorit&#233; des spams de nos jours ne respectent pas les r&#232;gles d'envoi de mail conventionnels et utilisent un HELO incorrect, et souvent un MAILFROM d'un domaine inconnu.&lt;/p&gt;
&lt;p&gt;Pour plus d'informations veuillez lire les &lt;a href=&#034;http://fr.wikipedia.org/wiki/Request_for_comments&#034; class=&#034;spip_out&#034; rel=&#034;external&#034;&gt;RFC&lt;/a&gt;.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;SECURITE ANTISPAM : Blacklist Postfix&lt;/h2&gt;
&lt;p&gt;Renfor&#231;ons d'abord Postfix avec des r&#232;gles pour qu'il soit beaucoup plus restrictif.&lt;/p&gt;
&lt;p&gt;Pour cela utilisons les &lt;strong&gt;smtpd_recipient_restrictions&lt;/strong&gt; (Nous ne d&#233;taillerons pas les actions pr&#233;cises de chaque r&#232;gle car la documentation de Postfix est d&#233;ja tr&#232;s pr&#233;cise sur ce sujet) mais &#233;ditons le fichier /etc/postfix/main.cf et rempla&#231;ons tout le smtpd_recipient_restrictions par celui ci :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;nano /etc/posfix/main.cf&lt;/i&gt;&lt;br class='autobr' /&gt; ou winscp v4 ou ult&#233;rieure (c'est mieux !)&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='25' class='spip_cadre spip_cadre_block' dir='ltr'&gt;smtpd_recipient_restrictions = reject_non_fqdn_recipient, reject_unknown_sender_domain, reject_non_fqdn_sender, reject_unknown_recipient_domain, reject_invalid_helo_hostname, reject_unlisted_recipient, reject_unlisted_sender, permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_helo_hostname, reject_unauth_destination, check_client_access hash:/etc/postfix/internal_networks, check_sender_access hash:/etc/postfix/not_our_domain_as_sender, check_helo_access proxy:mysql:/etc/postfix/mysql-hello.cf, check_sender_access proxy:mysql:/etc/postfix/mysql-sender.cf, check_client_access proxy:mysql:/etc/postfix/mysql-client.cf, reject_rbl_client list.dsbl.org, reject_rbl_client zen.spamhaus.org, permit&lt;/textarea&gt;
&lt;p&gt;Dans ce fichier, nous avons param&#233;tr&#233; des RBL (Blacklists) qui vont filtrer efficacement les mails.&lt;/p&gt;
&lt;p&gt;Il existe &#233;norm&#233;ment de RBL qui peuvent rendre le filtrage encore plus restrictif, mais nous nous limiterons qu'aux (RBL) officielles et professionnelles. L'ajout sauvage de blacklist non-officielles peut amener &#224; supprimer des mails sains.&lt;/p&gt;
&lt;p&gt;Il vaut mieux g&#233;rer les RBL suppl&#233;mentaires au travers d'une Policy Service de Postfix qui permettra plus de souplesse. (voir doc Postfix).&lt;/p&gt;
&lt;p&gt;Spam ASSASSIN, dont nous allons d&#233;crire l'installation ult&#233;rieurement, g&#232;re lui aussi des RBL propres.&lt;/p&gt;
&lt;p&gt;Ne fermez pas main.cf, il y a encore des modifications...!&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;SECURITE ANTISPAM : V&#233;rification des mails&lt;/h2&gt;
&lt;p&gt;Il nous faut limiter les possibilit&#233;s de forging des exp&#233;diteurs en v&#233;rifiant les MAIL FROM (adresses exp&#233;ditrices).&lt;/p&gt;
&lt;p&gt;Nous sommes toujours dans le fichier main.cf et nous nous pla&#231;ons au dessus du bloc smtpd_recipient_restrictions = , pour ins&#233;rer :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='12' class='spip_cadre spip_cadre_block' dir='ltr'&gt;smtpd_sender_restrictions = reject_authenticated_sender_login_mismatch smtpd_reject_unlisted_sender = yes smtpd_restriction_classes = has_our_domain_as_sender has_our_domain_as_sender = check_sender_access hash:/etc/postfix/our_domain_as_sender, reject&lt;/textarea&gt;
&lt;p&gt;Cela nous permettra d'emp&#234;cher les utilisateurs de mettre une autre adresse dans le MAIL FROM et seront ainsi obliger de passer par le domaine &lt;i&gt;@mondomaine.com&lt;/i&gt;.(toutes les adresses d'exp&#233;diteurs devront appartenir au(x) domaine(s)).&lt;/p&gt;
&lt;p&gt;Quittez et sauvegardez le main.cf. Mais nous y reviendrons plus tard..&lt;/p&gt;
&lt;p&gt;Il s'agit ensuite de dire au serveur de v&#233;rifier que les mails envoy&#233;s appartiennent bien au r&#233;seau :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; Il faut maintenant cr&#233;er les fichiers suivants :&lt;/li&gt;&lt;/ul&gt;&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; /etc/postfix/internal_networks&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;en faisant ainsi :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;cd /etc/postfix/&lt;/p&gt;
&lt;p&gt;wget &lt;a href=&#034;http://www.starbridge.org/spip/doc/Procmail/postfix/internal_networks&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;http://www.starbridge.org/spip/doc/Procmail/postfix/internal_networks&lt;/a&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Editons le fichier et sp&#233;cifions y notre r&#233;seau local et son adresse publique :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;nano /etc/postfix/internal_networks&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Le contenu du fichier doit ressembler &#224; cel&#224;, au final :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='2' class='spip_cadre spip_cadre_block' dir='ltr'&gt;192.22.1 has_our_domain_as_sender 88.120.55.485 has_our_domain_as_sender&lt;/textarea&gt;
&lt;p&gt;Ces lignes permettent de sp&#233;cifier les plages IP de votre r&#233;seau, ainsi que l'ip publique (exemple) qui seront autoris&#233;es &#224; envoyer un mail avec votre (vos) domaines dans le MAIL FROM.&lt;/p&gt;
&lt;p&gt;Cela permet &#233;galement de pr&#233;ciser les IP autoris&#233;es &#224; envoyer un mail en se pr&#233;sentant avec notre HELO.&lt;/p&gt;
&lt;p&gt;Nous bloquerons ainsi les clients SMTP ext&#233;rieurs qui pourraient se pr&#233;senter avec un HELO qui est le notre (HAM) (spoofing).&lt;/p&gt;
&lt;p&gt;Il faut, dans cette m&#234;me &#233;tape, cr&#233;er les fichiers qui vont appeler les tables SQL :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;cd /etc/postfix/&lt;/p&gt;
&lt;p&gt;wget &lt;a href=&#034;http://www.starbridge.org/spip/doc/Procmail/postfix/mysql-hello.cf&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;http://www.starbridge.org/spip/doc/Procmail/postfix/mysql-hello.cf&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;wget &lt;a href=&#034;http://www.starbridge.org/spip/doc/Procmail/postfix/mysql-&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;http://www.starbridge.org/spip/doc/Procmail/postfix/mysql-&lt;/a&gt;&lt;br class='autobr' /&gt;
sender.cf&lt;/p&gt;
&lt;p&gt;wget &lt;a href=&#034;http://www.starbridge.org/spip/doc/Procmail/postfix/mysql-client.cf&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;http://www.starbridge.org/spip/doc/Procmail/postfix/mysql-client.cf&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;wget &lt;a href=&#034;http://www.starbridge.org/spip/doc/Procmail/postfix/our_domain_as_sender&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;http://www.starbridge.org/spip/doc/Procmail/postfix/our_domain_as_sender&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;wget &lt;a href=&#034;http://www.starbridge.org/spip/doc/Procmail/postfix/not_our_domain_as_sender&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;http://www.starbridge.org/spip/doc/Procmail/postfix/not_our_domain_as_sender&lt;/a&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Pour les deux commandes suivantes, attention &#224; remplacer le mot de passe avant de valider..&lt;/p&gt;
&lt;p&gt;&lt;i&gt;sed -i 's/toto/Mot_De_Passe_Postfix/g' mysql-hello.cf mysql-sender.cf mysql-client.cf&lt;/p&gt;
&lt;p&gt;sed -i 's/starbridge.org/MonDomaine.com/g' our_domain_as_sender not_our_domain_as_sender &lt;br class='autobr' /&gt;
&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Pour info voici les fonctions de ces derniers t&#233;l&#233;chargements :&lt;/p&gt;
&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; /etc/postfix/mysql-hello.cf : Cette table SQL listera les HELO de nos domaines email.&lt;/li&gt;&lt;/ul&gt;&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; /etc/postfix/mysql-sender.cf : Il sert &#224; blacklister ou whitelister les MAILFROM, c'est &#224; dire les exp&#233;diteurs, selon leur adresse email externe ou limit&#233;es au domaine pr&#233;cis&#233;.&lt;/li&gt;&lt;/ul&gt;&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; /etc/postfix/mysql-client.cf : Il sert &#224; blacklister ou whitelister les clients par leur connection (ip/domaine).&lt;/li&gt;&lt;/ul&gt;&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; /etc/postfix/our_domain_as_sender : Il sert &#224; sp&#233;cifier les domaines autoris&#233;s comme MAIL FROM pour les users internes authentifi&#233;s par leur IP (les clients en local peuvent envoyer un email local sans s'authentifier dans notre configuration)&lt;/li&gt;&lt;/ul&gt;&lt;ul class=&#034;spip&#034; role=&#034;list&#034;&gt;&lt;li&gt; /etc/postfix/not_our_domain_as_sender : Il sert &#224; sp&#233;cifier les domaines refus&#233;s comme MAIL FROM pour les users externes non authentifi&#233;s (c'est &#224; dire une personne ext&#233;rieure qui nous envoit un mail). Si cette personne sp&#233;cifie un de nos domaines en MAIL FROM, le message sera refus&#233; (antispoofing)&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Nous&#034; postmappons&#034; (d&#233;clarons &#224; Postfix d'utiliser..) les fichiers suivants que nous venons de cr&#233;er :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;postmap /etc/postfix/internal_networks&lt;/p&gt;
&lt;p&gt;postmap /etc/postfix/our_domain_as_sender&lt;/p&gt;
&lt;p&gt;postmap /etc/postfix/not_our_domain_as_sender&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Nous s&#233;curisons les fichiers de lookup :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;chown -R root:postfix /etc/postfix/mysql-*&lt;/p&gt;
&lt;p&gt;chmod 640 /etc/postfix/mysql-*&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Cr&#233;ons les tables (pour importer les fichiers ci-dessus) :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;cd &lt;/p&gt;
&lt;p&gt;wget &lt;a href=&#034;http://www.starbridge.org/spip/doc/Procmail/postfix/postfix_access.sql&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;http://www.starbridge.org/spip/doc/Procmail/postfix/postfix_access.sql&lt;/a&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Puis la commande sed (avec changement de domaine manuel)&lt;/p&gt;
&lt;p&gt;&lt;i&gt;sed -i 's/starbridge.org/MonDomaine.com/g' postfix_access.sql&lt;/p&gt;
&lt;p&gt;mysql -u root -p &lt; postfix_access.sql&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;... avec le mot de passe de root de mysql....&lt;/p&gt;
&lt;p&gt;Et enfin, relan&#231;ons postfix :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;postfix reload&lt;/i&gt;&lt;/p&gt;
&lt;hr class=&#034;spip&#034; /&gt;&lt;h2 class=&#034;spip&#034;&gt;V&#233;rification de la validit&#233; des mails&lt;/h2&gt;
&lt;p&gt;Postfix peut v&#233;rifier les mails entrants tr&#232;s simplement en analysant le header, le body et le type mime des pi&#232;ces jointes.&lt;/p&gt;
&lt;p&gt;Ce type de blocage est tr&#232;s efficace, plus rapide que de laisser faire Amavisd ou SA, mais manque de souplesse.&lt;/p&gt;
&lt;p&gt;Il s'av&#232;re cependant tr&#232;s efficace pour bloquer par types de fichiers sans que le mail ne soit envoy&#233; au serveur, puis trait&#233; (&#233;conomie de bande passante et de CPU).&lt;/p&gt;
&lt;p&gt;Cependant une trop grande quantit&#233; de r&#232;gles et un fort trafic aurait l'effet inverse sur les performances.&lt;/p&gt;
&lt;p&gt;Nous allons cr&#233;er les fichiers n&#233;cessaires pour activer cette fonction.&lt;/p&gt;
&lt;p&gt;&lt;i&gt;cd /etc/postfix/&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;wget &lt;a href=&#034;http://www.starbridge.org/spip/doc/Procmail/postfix/body_checks.cf&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;http://www.starbridge.org/spip/doc/Procmail/postfix/body_checks.cf&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;wget &lt;a href=&#034;http://www.starbridge.org/spip/doc/Procmail/postfix/header_checks.cf&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;http://www.starbridge.org/spip/doc/Procmail/postfix/header_checks.cf&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;wget &lt;a href=&#034;http://www.starbridge.org/spip/doc/Procmail/postfix/mime_headers_checks.cf&#034; class=&#034;spip_url spip_out auto&#034; rel=&#034;nofollow external&#034;&gt;http://www.starbridge.org/spip/doc/Procmail/postfix/mime_headers_checks.cf&lt;/a&gt;&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Editons ensuite le fichier &lt;i&gt;/etc/postfix/main.cf&lt;/i&gt; et ajoutons ces lignes :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='4' class='spip_cadre spip_cadre_block' dir='ltr'&gt;header_checks = regexp:/etc/postfix/header_checks.cf body_checks = regexp:/etc/postfix/body_checks.cf mime_header_checks = regexp:/etc/postfix/mime_headers_checks.cf&lt;/textarea&gt;
&lt;p&gt;Il suffit maintenant de relancer postfix :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;postfix reload&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Voila maintenant notre serveur mail est pr&#234;t &#224; accueillir un Antispam et un Antivirus efficace.&lt;/p&gt;
&lt;p&gt;Cool, vous pouvez bien prendre un caf&#233;, car vous l'avez bien m&#233;rit&#233; !&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		

	</item>
<item xml:lang="fr">
		<title>MAIL : 3&#232;me Etape - Installation de Maildrop</title>
		<link>http://info.lesbarques.fr/spip.php?article94</link>
		<guid isPermaLink="true">http://info.lesbarques.fr/spip.php?article94</guid>
		<dc:date>2008-07-24T08:28:05Z</dc:date>
		<dc:format>text/html</dc:format>
		<dc:language>fr</dc:language>
		<dc:creator>Georges Charpenay</dc:creator>


		<dc:subject>DEBIAN</dc:subject>
		<dc:subject>LINUX</dc:subject>
		<dc:subject>MAILDROP</dc:subject>

		<description>
&lt;p&gt;Nous avons besoin d'un MDA (mail delivery agent) pour livrer les mails dans les bo&#238;tes. &lt;br class='autobr' /&gt;
Le service de livraison Virtual de Postfix ne convient pas totalement pour notre usage. &lt;br class='autobr' /&gt;
En effet nous allons avoir besoin de capacit&#233; de filtrage sur le MDA ainsi que la possibilit&#233; de g&#233;rer les quotas, ce qu'il ne sait pas faire en Virtual. &lt;br class='autobr' /&gt;
Procmail est tr&#232;s bien pour le filtrage, mais ne supporte pas les users/domaines virtuels car il ne sait pas communiquer avec une base de donn&#233;es. &lt;br class='autobr' /&gt;
Une m&#233;thode (&#8230;)&lt;/p&gt;


-
&lt;a href="http://info.lesbarques.fr/spip.php?rubrique80" rel="directory"&gt;Installation serveur de mail &lt;/a&gt;

/ 
&lt;a href="http://info.lesbarques.fr/spip.php?mot5" rel="tag"&gt;DEBIAN&lt;/a&gt;, 
&lt;a href="http://info.lesbarques.fr/spip.php?mot7" rel="tag"&gt;LINUX&lt;/a&gt;, 
&lt;a href="http://info.lesbarques.fr/spip.php?mot39" rel="tag"&gt;MAILDROP&lt;/a&gt;

		</description>


 <content:encoded>&lt;img src='http://info.lesbarques.fr/local/cache-vignettes/L150xH84/maildrop-1e875.png?1757211414' class='spip_logo spip_logo_right' width='150' height='84' alt=&#034;&#034; /&gt;
		&lt;div class='rss_texte'&gt;&lt;p&gt;Nous avons besoin d'un MDA (mail delivery agent) pour livrer les mails dans les bo&#238;tes.&lt;/p&gt;
&lt;p&gt;Le service de livraison Virtual de Postfix ne convient pas totalement pour notre usage.&lt;/p&gt;
&lt;p&gt;En effet nous allons avoir besoin de capacit&#233; de filtrage sur le MDA ainsi que la possibilit&#233; de g&#233;rer les quotas, ce qu'il ne sait pas faire en Virtual.&lt;/p&gt;
&lt;p&gt;Procmail est tr&#232;s bien pour le filtrage, mais ne supporte pas les users/domaines virtuels car il ne sait pas communiquer avec une base de donn&#233;es.&lt;/p&gt;
&lt;p&gt;Une m&#233;thode r&#233;pandue pour les quotas est l'application du patch VDA sur Postfix, option que nous ne choisirons pas pour des raisons de fiabilit&#233;.&lt;/p&gt;
&lt;p&gt;La solution Maildrop r&#233;ponds, elle, &#224; nos besoins.&lt;/p&gt;
&lt;p&gt;Maildrop s'occupera donc de la livraison des mails dans les /home/virtual.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;MAILDROP - Installation&lt;/h2&gt;
&lt;p&gt;Nous installons maildrop :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;apt-get install maildrop&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Nous appliquons les permissions correctement en mettant comme utilisateur VMAIL sur les ex&#233;cutables et sur /var/run/courier/authdaemaon :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;chown vmail : /usr/bin/maildrop&lt;/p&gt;
&lt;p&gt;chown vmail:daemon /var/run/courier/authdaemon/&lt;/p&gt;
&lt;p&gt;chmod 750 /var/run/courier/authdaemon/&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;On v&#233;rifie si maildrop est correctement install&#233; (modules activ&#233;s) :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;/usr/bin/maildrop -v&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;qui doit nous renvoyer :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='6' class='spip_cadre spip_cadre_block' dir='ltr'&gt;maildrop 2.0.4 Copyright 1998-2005 Double Precision, Inc. Courier Authentication Library extension enabled. Maildir quota extension enabled. This program is distributed under the terms of the GNU General Public License. See COPYING for additional information.&lt;/textarea&gt;
&lt;p&gt;On voit que l'authentification est activ&#233;e, ainsi que la gestion des quotas que nous configurerons plus tard.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;MAILDROP - Configuration&lt;/h2&gt;
&lt;p&gt;Nous &#233;ditons le fichier &lt;i&gt;/etc/courier/authdaemonrc&lt;/i&gt; pour remplacer &lt;i&gt;authmodulelist=&#034;authpam&#034; par authmodulelist=&#034;authpam authmysql&#034;&lt;/i&gt;, comme d&#233;crit dans le cadre suivant (un petit copier-coller d'un coup fonctionne) :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='6' class='spip_cadre spip_cadre_block' dir='ltr'&gt;cd /etc/courier mv authdaemonrc authdaemonrc-orig wget http://www.starbridge.org/spip/doc/Procmail/courier/authdaemonrc chown daemon: authdaemonrc chmod 660 authdaemonrc&lt;/textarea&gt;
&lt;p&gt;Nous ex&#233;cutons ensuite les commandes suivantes pour cr&#233;er le fichier authmysqlrc (toto &#233;tant votre mot de passe) :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='6' class='spip_cadre spip_cadre_block' dir='ltr'&gt;cd /etc/courier mv authmysqlrc authmysqlrc-orig wget http://www.starbridge.org/spip/doc/Procmail/courier/authmysqlrc chown daemon: authmysqlrc chmod 640 authmysqlrc&lt;/textarea&gt;
&lt;p&gt;Puis lancer la commande suivante en ayant pr&#233;alablement remplac&#233; &#034;toto&#034; par votre mot de passe postfix que vous avez d&#233;j&#224; d&#233;fini.&lt;/p&gt;
&lt;p&gt;&lt;i&gt;sed -i 's/*****/toto/g' authmysqlrc&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;(Toujours la commande sed pour modifier les fichiers par lots).&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt; : Il faut faire tr&#232;s attention &#224; la syntaxe de ce fichier (/etc/courrier/authmysqlrc) et bien mettre un tab (tabulation) entre le param&#232;tre et sa valeur. Il ne doit y avoir aucun espace &#224; la fin d'un param&#232;tre. La moindre erreur entra&#238;nera le non-fonctionnement de l'authentification. C'est pour cela que le fichier est directement fourni ici et ne n&#233;cessite donc aucune modification autre que celle du mot de passe de notre base.&lt;/p&gt;
&lt;p&gt;Maildrop est appel&#233; par Postfix au moment de la livraison du mail. Pour que Postfix utilise Maildrop, nous ajoutons au fichier&lt;i&gt;/etc/postfix/main.cf&lt;/i&gt; en fin de fichier :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;nano /etc/postfix/main.cf&lt;/i&gt;&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='2' class='spip_cadre spip_cadre_block' dir='ltr'&gt;virtual_transport = maildrop maildrop_destination_recipient_limit = 1&lt;/textarea&gt;
&lt;p&gt;et au fichier &lt;i&gt;/etc/postfix/master.cf&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;&lt;i&gt;nano /etc/postfix/master.cf&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;(on efface les lignes maildrop existantes (qu'une instruction) et on les remplace par celles ci) :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='5' class='spip_cadre spip_cadre_block' dir='ltr'&gt;maildrop unix - n n - - pipe flags=DRhu user=vmail argv=/usr/bin/maildrop -w 90 -d ${user}@${nexthop} ${extension} ${recipient} ${user} ${nexthop} ${sender}&lt;/textarea&gt;
&lt;p&gt;Ensuite, il faut cr&#233;er le fichier &lt;i&gt;/home/virtual/.mailfilter&lt;/i&gt; pour activer les logs et la cr&#233;ation automatique des maildir &#224; la livraison (postfix ne sait pas le faire comme avec le transport par d&#233;faut &#034;virtual&#034;, car ce n'est pas lui qui livre directement dans les r&#233;pertoires et il faut dire &#224; maildrop, de venir livrer les mails dans /home/virtual) :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;nano /home/virtual/.mailfilter&lt;/i&gt; (fichier vide au d&#233;part)&lt;/p&gt;
&lt;p&gt;Et nous le remplissons avec :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='19' class='spip_cadre spip_cadre_block' dir='ltr'&gt;logfile &#034;/home/virtual/.maildrop.log&#034; &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;[ -d $DEFAULT ] || (maildirmake $DEFAULT &amp;amp;&amp;amp; maildirmake -f Spam $DEFAULT &amp;amp;&amp;amp; maildirmake -f Sent $DEFAULT &amp;amp;&amp;amp; maildirmake -f SpamToLearn $DEFAULT &amp;amp;&amp;amp; maildirmake -f SpamFalse $DEFAULT)&lt;/code&gt; &lt;code class='spip_code spip_code_inline' dir='ltr'&gt;test -r $HOME/$DEFAULT.mailfilter&lt;/code&gt; if( $RETURNCODE == 0 ) { log &#034;(==) Including $HOME/$DEFAULT.mailfilter&#034; exception { include $HOME/$DEFAULT.mailfilter } }&lt;/textarea&gt;
&lt;p&gt;Enfin, il faut s&#233;curiser le fichier.mailfilter :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;chown vmail : /home/virtual/.mailfilter&lt;/p&gt;
&lt;p&gt;chmod 600 /home/virtual/.mailfilter&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Nous red&#233;marrons le processus d'authentification et Postfix :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;/etc/init.d/courier-authdaemon restart&lt;/p&gt;
&lt;p&gt;/etc/init.d/postfix restart&lt;/i&gt;&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;MAILDROP - Test de la configuration&lt;/h2&gt;
&lt;p&gt;Nous testons cette configuration de base avec la commande :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;authtest user@mondomaine.com&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Qui nous donne :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='10' class='spip_cadre spip_cadre_block' dir='ltr'&gt;Authentication succeeded. Authenticated: user@MonDomaine.com (uid 20001, gid 20001) Home Directory: /home/virtual Maildir: user@MonDomaine.com/ Quota: 0S Encrypted Password: $1$caea3837$gPafod/Do/8Jj5M9HehhM. Cleartext Password: (none) Options: (none)&lt;/textarea&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt; : En cas d'erreur, il est fort probable que le fichier authmysqlrc soit en cause.&lt;/p&gt;
&lt;p&gt;Regarder les logs :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;tail -f /var/log/mail.log&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Ensuite nous tapons la commande :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;/usr/bin/maildrop -V 7 -d user@mondomaine.com&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;qui devrait nous r&#233;pondre les termes suivants, montrant que le mail est bien livr&#233; &#224; /home/virtual :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='5' class='spip_cadre spip_cadre_block' dir='ltr'&gt;maildrop: authlib: groupid=20001 maildrop: authlib: userid=20001 maildrop: authlib: logname=user@mondomaine.com, home=/home/virtual, mail=user@MonDomaine.com/ maildrop: Changing to /home/virtual&lt;/textarea&gt;
&lt;p&gt;CTRL+C pour sortir du fichier.&lt;/p&gt;
&lt;p&gt;Nous allons ensuite tester l'envoi de mail &#224; user@mondomaine.com :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;mail user@mondomaine.com&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Remplir tous les champs avec des informations vraies ou fausses cela est votre choix et terminer votre mail en tapant un point (.) sur une seul ligne.&lt;/p&gt;
&lt;p&gt;On regarde les logs pour les erreurs :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;tail -f /var/log/mail.log&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Si tout a fonctionn&#233; on devrait trouver dans une ligne, vers la fin :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='2' class='spip_cadre spip_cadre_block' dir='ltr'&gt;...status=sent (delivered ...) ...&lt;/textarea&gt;
&lt;p&gt;Nous allons ensuite tester le port 25 (SMTP) du serveur mail avec telnet :&lt;/p&gt;
&lt;p&gt;&lt;i&gt;apt-get install telnet&lt;/i&gt;&lt;/p&gt;
&lt;p&gt;Puis nous testons avec la commande suivante :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='16' class='spip_cadre spip_cadre_block' dir='ltr'&gt;---&gt; telnet localhost 25 220 [127.0.0.1] ESMTP Postfix ---&gt; HELO localhost 250 [127.0.0.1] ---&gt; MAIL FROM: &lt;&gt; 250 2.1.0 Sender OK ---&gt; RCPT TO: &lt;user@MonDomaine.com&gt; 250 2.1.5 OK ---&gt; DATA 354 End data with &lt;CR&gt;&lt;LF&gt;.&lt;CR&gt;&lt;LF&gt; ---&gt; . 250 2.0.0 Ok: queued as 079474CE44 ---&gt; QUIT 221 2.0.0 Bye Connection closed by foreign host&lt;/textarea&gt;
&lt;p&gt;On regarde les logs pour v&#233;rifier.&lt;/p&gt;
&lt;h2 class=&#034;spip&#034;&gt;MAILDROP - Filtre Message&lt;/h2&gt;
&lt;p&gt;Le fichier /home/virtual/.mailfilter que nous avons cr&#233;&#233; plus haut est commun &#224; tous les comptes et sera appliqu&#233; &#224; chaque mail. Si nous voulions appliquer des r&#232;gles sp&#233;cifiques &#224; un utilisateur, il nous suffirait de cr&#233;er un autre fichier .mailfilter dans le r&#233;pertoire de l'utilisateur. &lt;br class='autobr' /&gt;
Nous pourrions par exemple rediriger des emails dans des r&#233;pertoires sp&#233;cifiques de cette fa&#231;on.&lt;/p&gt;
&lt;p&gt;Par exemple, pour que temporairement, les mails de Pierre arrivent &#224; Paul, pendant que Pierre est en vacances. &lt;br class='autobr' /&gt;
Par exemple, je ne veux plus voir les mails provenant de Jacques.&lt;/p&gt;
&lt;p&gt;Exemple de fichier .mailfilter personnel :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='18' class='spip_cadre spip_cadre_block' dir='ltr'&gt;#elimine les messages en provenance de l'adresse ci-dessous if( \ /^From: .*actu@b\.linternaute\.com/:h \ ) exception { to &#034;/dev/null&#034; } ##### annonces ##### if( \ /^From: .*alerte@avendrealouer\.fr/:h \ || /^From: .*mailing_pap@pap\.fr/:h \ || /^Sender: .*alertemail@pap\.fr/:h \ ) exception { to &#034;${DEFAULT}/.annonces/&#034; }&lt;/textarea&gt;
&lt;p&gt;&lt;strong&gt;Note&lt;/strong&gt; : Pour &#233;viter que l'administrateur postfix ait &#224; cr&#233;er manuellement toutes ces r&#232;gles de gestion de mail, nous utiliserons eGroupware qui permettra &#224; chaque utilisateur de g&#233;rer ses propres filtres.&lt;/p&gt;
&lt;p&gt;Bien s&#251;r nous devons appliquer les m&#234;mes droits que pour le fichier .mailfilter g&#233;n&#233;ral &#224; ces fichiers personnels si nous les cr&#233;ons manuellement :&lt;/p&gt; &lt;textarea readonly='readonly' cols='40' rows='2' class='spip_cadre spip_cadre_block' dir='ltr'&gt;chown vmail: /home/virtual/user@MonDomaine.com/.mailfilter chmod 600 /home/virtual/user@MonDomaine.com/.mailfilter&lt;/textarea&gt;
&lt;p&gt;Vous &#234;tes excellent ! Votre MDA est install&#233;.&lt;/p&gt;
&lt;p&gt;A ce stade, votre SMTP et votre MDA sur actifs sur le serveur Mail.&lt;/p&gt;
&lt;p&gt;Votre serveur sait livrer correctement les mails qu'il re&#231;oit (les ranger dans le bon dossier quand il les re&#231;oit), il sait les envoyer (smtp), la partie serveur (host) est faite.&lt;/p&gt;
&lt;p&gt;Cependant, le client ne peut pas encore communiquer avec le serveur pour visualiser ses mails (&#224; part d'aller sur la console).&lt;/p&gt;
&lt;p&gt;Nous allons dans l'article suivant installer Courrier-IMAP.&lt;/p&gt;&lt;/div&gt;
		
		</content:encoded>


		

	</item>



</channel>

</rss>
