Outils personnels

Liens et sujets à traiter : Différence entre versions

De wikiGite

(MAIL SERVER : rejeter les mail a l'arrivee avec des BL)
 
(17 révisions intermédiaires par un autre utilisateur non affichées)
Ligne 1 : Ligne 1 :
 
__TOC__
 
__TOC__
  
== HowTo ISPConfig (URL) ==
+
== ECLIPSE ==
http://www.how2forge.net/ispconfig-2.x-first-steps
+
Installation sur Ubuntu avec EPIC (Perl)
 +
http://devlibre.blogspot.com/2009/01/le-framework-catalyst-par-lexemple.html
 +
== OMA ==
 +
Récupérer des mails déjà présent sur le serveur :
  
== Procamil Syntax & Tips (URL) ==
+
#!bin/sh
http://pm-doc.sourceforge.net/pm-tips.html
+
for i in $(find /<répertoire des mails>)
 +
do
 +
    cat $i | /usr/local/oma/bin/mail_delivery.php
 +
done
 +
Voir si mail_delivery.php est bien livré avec OMA.
  
== Procmail : filtres de courrier ==
+
== Greylist ==
Procmail va être lancé par postfix à chaque nouveau message. Son fichier de configuration doit se trouver dans le répertoire de l'utilisateur et est nommé .procmailrc Éditez le fichier /home/monNom/.procmailrc
+
Intégré à ISPConfig/Postfix. A documenter
'''
 
Preliminaires'''
 
SHELL=/bin/bash
 
MAILDIR=$HOME/Maildir/
 
DEFAULT=$MAILDIR
 
ORGMAIL=$MAILDIR
 
LOCKFILE=$HOME/lockfile.lock
 
ASSASSINLOCK=$HOME/assassin.lock
 
DEFAULT=$HOME/Maildir/
 
JUNKMAIL=$HOME/Maildir/.junkmail/
 
TRASH=$HOME/Maildir/.Trash
 
NEWBIE=$HOME/Maildir/.LinuxNewbie/
 
EXPERT=$HOME/Maildir/.LinuxExpert/
 
VIRUS=$HOME/Maildir/.virus/
 
BITBUCKET=/dev/null
 
LOGFILE=/var/log/procmailrc.log
 
VERBOSE=yes
 
LOGABSTRACT=all
 
 
 
'''Filtres de courrier :'''
 
on vérifie d'abord si le message est du spam, avec spamassassin
 
 
 
:0
 
* ^To:.*spam@monDomaine.com
 
* < 256000
 
 
{
 
:0c: spamassassin.spamlock
 
| sa-learn --spam
 
 
:0
 
$JUNKMAIL
 
}
 
 
 
On revérifie au cas où spamassassin aurait fait une erreur
 
:0
 
* ^To:.*postmaster@monDomaine.com
 
* < 256000
 
 
{
 
:0c: spamassassin.hamlock
 
| sa-learn --ham
 
 
:0
 
$TRASH
 
}
 
 
 
On exécute TrashScan, qui va scanner le fichier à l'aide de l'anti-virus clamav
 
:0
 
* multipart
 
* !^X-Virus-Scan:
 
| /usr/local/bin/trashscan
 
 
 
Apposition du label suspect sur les mails scannés positifs aux virus
 
:0
 
* ^X-Virus-Scan: Suspicious
 
$VIRUS
 
 
 
Filtres de news
 
:0 :
 
* ^Sender: newbie-owner
 
$NEWBIE
 
 
:0 :
 
* ^Sender: expert-owner
 
$EXPERT
 
  
Redirection de courriers indésirables
+
== MAIL SERVER : rejeter les mail a l'arrivee avec des BL ==
  :0
+
  smtpd_recipient_restrictions =
* ^From: Sms Message
+
    reject_invalid_hostname,
$BITBUCKET
+
    reject_unknown_recipient_domain,
 +
    reject_unauth_pipelining,
 +
    permit_mynetworks,
 +
    permit_sasl_authenticated,
 +
    reject_unauth_destination,
 +
    reject_rbl_client multi.uribl.com,
 +
    reject_rbl_client dsn.rfc-ignorant.org,
 +
    reject_rbl_client dul.dnsbl.sorbs.net,
 +
    reject_rbl_client list.dsbl.org,
 +
    reject_rbl_client sbl-xbl.spamhaus.org,
 +
    reject_rbl_client bl.spamcop.net,
 +
    reject_rbl_client dnsbl.sorbs.net,
 +
    reject_rbl_client cbl.abuseat.org,
 +
    reject_rbl_client ix.dnsbl.manitu.net,
 +
    reject_rbl_client combined.rbl.msrbl.net,
 +
    reject_rbl_client rabl.nuclearelephant.com,
 +
    permit
 +
Ces listes sont-elles libres ? Attention au reject_invalid_hostname aussi, peut-être violent ?
  
Exécution du démon SpamAssassin
+
== MAIL SERVER : Base d'adresses autorisées ==
  :0 fw : $ASSASSINLOCK
+
A tester, un simple paramétrage de Postfix :
  | spamc
+
smtpd_sender_restrictions = check_sender_access ldap:/etc/postfix/ldap-sender.cf
   
+
avec ldap-sender.cf
  :0
+
server_host = serveur-ldap.du.domaine
  * ^X-Spam-Flag: YES
+
server_port = 389
$JUNKMAIL
+
search_base = ou=good-sender, ou=sender, ou=mail, dc=domain, dc=tld
 +
  query_filter = (& (objectClass=Sender)(mail=%s))
 +
result_attribute = mail
 +
  bind = yes
 +
  bind_dn = cn=postfix, ou=appli, dc=domain, dc=tld
 +
  bind_pw = password
 +
  version = 3
 +
La même chose doit être aussi simple à monter avec une base Mysql et proxy:mysql.<br/>
 +
Ensuite, il reste à monter une interface web par exemple qui écrit les adresses autorisées en whitelist.
  
Une fois cela effectué, on n'a pas besoin de redémarrer procmail, puisque celui-ci est lancé par postfix à chaque nouveau message.
+
ça n'est pas encore du MailInBlack (qui demande à l''''expéditeur''' de s'authentifier) mais ça peut servir...
  
== Greylist ==
+
== MailInBlack like ==
A intégrer à ISPConfig/Postfix ?
+
http://a-s-k.sourceforge.net/

Version actuelle datée du 4 juillet 2011 à 17:03

ECLIPSE

Installation sur Ubuntu avec EPIC (Perl) http://devlibre.blogspot.com/2009/01/le-framework-catalyst-par-lexemple.html

OMA

Récupérer des mails déjà présent sur le serveur :

#!bin/sh
for i in $(find /<répertoire des mails>)
do
   cat $i | /usr/local/oma/bin/mail_delivery.php
done

Voir si mail_delivery.php est bien livré avec OMA.

Greylist

Intégré à ISPConfig/Postfix. A documenter

MAIL SERVER : rejeter les mail a l'arrivee avec des BL

smtpd_recipient_restrictions =
    reject_invalid_hostname,
    reject_unknown_recipient_domain,
   reject_unauth_pipelining,
    permit_mynetworks,
    permit_sasl_authenticated,
    reject_unauth_destination,
    reject_rbl_client multi.uribl.com,
    reject_rbl_client dsn.rfc-ignorant.org,
    reject_rbl_client dul.dnsbl.sorbs.net,
    reject_rbl_client list.dsbl.org,
    reject_rbl_client sbl-xbl.spamhaus.org,
    reject_rbl_client bl.spamcop.net,
    reject_rbl_client dnsbl.sorbs.net,
    reject_rbl_client cbl.abuseat.org,
    reject_rbl_client ix.dnsbl.manitu.net,
    reject_rbl_client combined.rbl.msrbl.net,
    reject_rbl_client rabl.nuclearelephant.com,
    permit

Ces listes sont-elles libres ? Attention au reject_invalid_hostname aussi, peut-être violent ?

MAIL SERVER : Base d'adresses autorisées

A tester, un simple paramétrage de Postfix :

smtpd_sender_restrictions = check_sender_access ldap:/etc/postfix/ldap-sender.cf

avec ldap-sender.cf

server_host = serveur-ldap.du.domaine
server_port = 389
search_base = ou=good-sender, ou=sender, ou=mail, dc=domain, dc=tld
query_filter = (& (objectClass=Sender)(mail=%s))
result_attribute = mail
bind = yes
bind_dn = cn=postfix, ou=appli, dc=domain, dc=tld
bind_pw = password
version = 3

La même chose doit être aussi simple à monter avec une base Mysql et proxy:mysql.
Ensuite, il reste à monter une interface web par exemple qui écrit les adresses autorisées en whitelist.

ça n'est pas encore du MailInBlack (qui demande à l'expéditeur de s'authentifier) mais ça peut servir...

MailInBlack like

http://a-s-k.sourceforge.net/