 |
Forum technique developpement, GNU Linux et logiciels, de l'ours Forum d'echange et d'entre aide sur le developpement, GNU Linux
|
| Forum developpement logiciel et Internet - Support informatique |
| |
Bienvenue sur le forum informatique et internet. N'hésitez pas à poser vos questions, à vous inscrire pour participer. Ce forum a pour but de partager une base de connaissance ouverte à tous couvrant l'informatique et les réseaux, antivirus et anti spywares. On a pas de pognon, de moins en moins même, mais on a des idées ! Dans l'esprit du logiciel libre, et de l'accès pour tous à la connaissance, vous pouvez copier les informations présentes dans ce forum. Il sera cool de votre part de placer un lien en retour vers ce forum, mais ça n'est pas obligatoire. |
|
|
| |
| Voir le sujet précédent :: Voir le sujet suivant |
| Auteur |
Message |
ronours Site Admin

Inscrit le: 25 Fév 2007 Messages: 1125
|
Posté le: Mer Déc 05, 2007 4:04 pm Sujet du message: installer Qmail clamav spamassassin qmailscanner, memo perso |
|
|
Voila, rien de très concret, mais c'est un mémo perso pour se rappeller comment installer et faire tourner un serveur qmail "from scratch" sur a priori n'importe quelle config. Réalisé sur Fedora Core 7.
Pourquoi installer un qmail sur ma machine?
-Pour savoir le faire depuis zero, et pas seulement patcher un systeme pre installé
-J'avais besoin d'un serveur imap pour migrer les données outlook de ma femme vers evolution, car Windows est enfin éradiqué de la maison! (bon j'avoue y en reste un tout petit xp dans un coin pour battlefield2 , mais c'est vraiment pour le jeu! )
Install qmail avec imap ok, suivre life with qmail jusqu'au point 2.6. Install ucspi-tcp (a faire et s'arreter là)
Edit - correction : en fait il faut aller jusqu'au point 2.7. Install daemontools car c'est daemontool qui fournit le programme setuidgid necessaire au fonctionnement de qmail ! Alors on l'installe aussi. et on continue ici !
http://www.lifewithqmail.org/lwq.html
Puis copier le fichier de control suivant dans /etc/rc.d/init.d/qmail (on crée le fichier avec le contenu ci dessous) :
| Code: | #!/bin/sh
# Qmail Startup
# Source function library.
. /etc/rc.d/init.d/functions
# See how we were called.
case "$1" in
start)
cd /
echo -n "Starting: "
env - PATH="/var/qmail/bin:/usr/local/bin" \
/var/qmail/bin/qmail-start ./Maildir/ /usr/local/bin/tai64n \
| /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog /var/log/qmail &
echo -n "qmail "
env - PATH="/var/qmail/bin:/usr/local/bin" \
tcpserver -H -R -c100 0 pop-3 /var/qmail/bin/qmail-popup \
ns35209.ovh.net \
/home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir &
echo -n "pop "
env - PATH="/var/qmail/bin:/usr/local/bin" \
tcpserver -H -R -x /etc/tcp.smtp.cdb -c100 -u508 -g503 0 smtp \
/var/qmail/bin/qmail-smtpd 2>&1 > /dev/null &
echo "smtp port 25"
env - PATH="/var/qmail/bin:/usr/local/bin" \
tcpserver -H -R -x /etc/tcp.smtp.cdb -c100 -u508 -g503 0 5025 \
/var/qmail/bin/qmail-smtpd 2>&1 > /dev/null &
echo "smtp port 5025"
;;
stop)
cd /
echo -n "stopping qmail"
killproc qmail-send
killproc tcpserver
echo
;;
restart)
$0 stop
$0 start
;;
status)
status qmail-send
;;
*)
echo "Usage: qmail {start|stop|restart|status}"
exit 1
esac
exit 0
|
Creer le dossier /var/log/qmail et faire un chown qmaill:nofiles et chmod 755.
Puis, installer vpopmail en suivant la procedure http://www.inter7.com/vpopmail/install.txt, on le télécharge en version stable d'ici : http://sourceforge.net/project/showfiles.php?group_id=85937
Note : utilisez l'option avec roaming users : . | Code: | /configure --enable-roaming-users=y
|
Changer dans le script /etc/rc.d/init.d/qmail le u508 et g503 avec l'id du user vpopmail local et l'id du groupe vchkpw local
Puis, appliquer tcp serveur
| Code: | tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
chmod 644 /etc/tcp.smtp.cdb
|
(selon l'install, tcp.smtp peut etre situé dans /home/vpopmail/etc/ il faut donc adapter la ligne en conséquence)
Dans ce cas il faut aussi adapter le fichier de lancement qmail pour aller chercher le fichier tcp.smtp.cdb au bon endroit, ou encore créer un lien symbolique :
| Code: | ln -s /home/vpopmail/etc/tcp.smtp.cdb /etc/tcp.smtp.cdb
ln -s /home/vpopmail/etc/tcp.smtp /etc/tcp.smtp |
Edit du 7/7/2009 : avec la dernière version de vpopmail en 5.5.0 il y a 2 choses à faire en plus, sinon bug, inclure le chemin vers les lib, et, car le nouveau vpopmail prend en charge les authentifications basée sur mysql etc... nous on veut rester en cdb donc, en root :
| Code: | echo "/home/vpopmail/lib" > /etc/ld.so.conf.d/vpopmail-alex.conf
/sbin/ldconfig
|
Et pour la gestion de l'authenfication en cdb :
| Code: | cd /usr/local/src/vpopmail-5.5.0/backends/cdb
./configure
make
make install |
Ceci va créer le fichier /home/vpopmail/etc/vpopmail.authmodule qui défini quel type d'authentification on utilise.
Fin du edit.
Lancer qmail. C'est ok (en arretant tout autre MTA si en usage sur votre machine, genre sendmail, sinon le port 25 est deja occupé ! )
Suivre le point 2.8.3 de life with qmail http://www.lifewithqmail.org/lwq.html#start-qmail pour remplacer la commande sendmail par qmail ! histoire que les autres programmes utilisent le nouveau mta par défaut.
Créer le lien qui lancera qmail au démarrage de votre machine :
| Code: | | ln -s /etc/rc.d/init.d/qmail /etc/rc3.d/S80qmail |
Test depuis une autre machine en telnet sur le port port 25 (syntaxe smtp)
MAIL FROM:email
RCPT TO:dst
DATA msg.
QUIT
Install "courier-imap" en serveur imap. http://www.courier-mta.org/imap/ indépendant de qmail, il faut dans l'ordre :
Courier authentication library (pour que courier puisse verifier les logins et pass) en premier : http://www.courier-mta.org/download.php#authlib
ATTENTION - Note du 15/09/2009 - il faut maxi la version 0.5x!!!
Voir la discussion ici : http://forum.ovh.com/archive/index.php/t-36177.html
Les versions suivantes ne prennent plus en charge vchkpw comme mode d'authentification... :s - Certains pensent que qmail est "has been", comme on peut le voir sur le forum en lien, sauf que rien sur le net en Anglais ou en Français ne laisse entrevoir ceci, ou ne présente de meilleure solution !! Il faut donc se méfier des avis isolés. Les goûts et les couleurs, reste qu'à ce jour, depuis plus de 11 ans, Qmail ne présente aucune faille de sécurité.
Personnellement, je garde toute confiance en qmail.
J'ai donc du, avec la 0.58 en passer par cette commande de configuration :
| Code: | ./configure --prefix=/usr/local --exec-prefix=/usr/local --with-authvchkpw --without-authldap --without-authmysql --disable-root-check --with-ssl --with-authchangepwdir=/usr/local/libexec/authlib --with-redhat
|
Au cas ou, j'ai mis la version courier-authlib-0.58 ici http://forum.inforeseau.com/courier-authlib-0.58.tar.bz2 (Visiblement on ne la retrouve pas sur le net)
Puis copier libauthvchkpw.so comme ceci :
| Code: | | cp .libs/libauthvchkpw.so /usr/local/lib/courier-authlib/ |
Puis, ajouter dans /usr/local/etc/authlib/authdaemonrc :
authvchkpw à authmodulelist :
| Code: | | authmodulelist="authuserdb authpwd authshadow authcustom authpipe authvchkpw" |
Et redemarrer le service imap.
Edit du 08/10/2009 : J'ai eu un soucis avec le webmail roundcube qui affichait l'erreur
| Code: | | a001 NO LOGIN failed |
Du coup, je me suis dit que le mode "auto" de roundcube tentait les autres authentification que authvchkpw, j'ai donc changer la ligne dans /usr/local/etc/authlib/authdaemonrc de
| Code: | | authmodulelist="authuserdb authpwd authshadow authcustom authpipe authvchkpw" |
vers ça :
| Code: | | authmodulelist="authvchkpw" |
et du coup, roundcube fonctionne maintenant! cool !
Fin du edit.
(Telecharger, decompresser, ./configure, make, make install, make install-configure).
Il faut demarrer le service et copier le sysinit apres install :
| Code: | # cp /usr/local/src/courier-authlib-0.55/courier-authlib.sysvinit /etc/init.d/courier-authlib
# chmod 744 /etc/init.d/courier-authlib
# /etc/init.d/courier-authlib start |
courier-imap (decompresser et compiler en user, installer en root) http://www.courier-mta.org/download.php#imap
puis lancer :
| Code: | | /usr/lib/courier-imap/libexec/imapd.rc start |
ou stop pour stopper
Voir le fichier init pour imapd par ovh (modifié le 07/01/2008 pour prendre en compte le demon auth automatiquement):
| Code: | #! /bin/sh
#
# imapd init file by OVH repris par alex comme un copiteur
# source function library
. /etc/rc.d/init.d/functions
function nb_process () {
ps xa | grep -v grep | grep -c courier-imap
}
start_file=/usr/lib/courier-imap/libexec/imapd.rc
case $1 in
start)
if [ `nb_process` -gt 0 ]; then
echo "Courrier-imap already started..."; exit 1;
fi
$start_file start
echo "Starting courrier-imap"
/usr/local/sbin/authdaemond start
echo -n "Demarre le demon d'authentification"
if [ `nb_process` -gt 0 ]; then success; else failure; fi
echo
;;
stop)
if [ `nb_process` -eq 0 ]; then
echo "No courrier-imap running..."; exit 1;
fi
$start_file stop
echo "Stopping courrier-imap"
/usr/local/sbin/authdaemond stop
echo -n "Arrete le demon d'authentification"
if [ `nb_process` -eq 0 ]; then success; else failure; fi
echo
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
echo "Usage: /etc/rc.d/init.d/atd {start|stop|restart}"
exit 1
esac
exit 0
|
Edit : Si vous n'arrivez pas a vous connecter en imap, à vous identifier, il est possible que authdaemon ne soit pas lancé, si vous voyez ce message d'erreur dans /var/log/maillog :
| Citation: | | imapd: [Hint: perhaps authdaemond is not running?] |
tapez la commande suivante :
| Code: | | /usr/local/sbin/authdaemond start |
Edit du 07/07/2009 : Enfin, dernier point, modifier dans /etc/alternative, les liens "mta", afin qu'ils pointent sur /var/qmail/bin/sendmail avec un ln -s, en effaçant l'ancien lien (surtout pour mta, mta-mailq). De cette façon la commande "mailq" sera fonctionnelle.
Puis
antivirus / antispam
Voir ci dessous (post suivant en pas à pas) :
Sinon quelques infos globales là :
http://forum.inforeseau.com/installation-de-l-antivirus-mail-sur-dedie-ovh-release-1-t39.html (Juste des pistes avec les bons éléments)
et/ou chkuser
Voir ici :
http://forum.inforeseau.com/patcher-qmail-avec-chkuser-ovh-release-1-t81.html
(Procédure install complete) ou alors, j'ai rajouté en 3 eme post, la suite de l'installation en utilisant l'existant ! (facile et rapide, et indispensable).
Dernière édition par ronours le Jeu Oct 08, 2009 2:52 pm; édité 35 fois |
|
| Revenir en haut de page |
|
 |
ronours Site Admin

Inscrit le: 25 Fév 2007 Messages: 1125
|
Posté le: Lun Déc 10, 2007 2:08 pm Sujet du message: Installation de qmail-scanner avec clamav et spamassassin |
|
|
Mise à jour du tutoriel OVH appliqué sur Fedora 7 suite à l'install de qmail expliquée dans le post qui précède.
En console, locale ou en ssh (ici spamassassin est déjà installé avec la distribution spamassassin-3.2.3-1.fc7, installez le avant si vous voulez qu'il soit pris en compte):
Installation clamav (utiliser la dernière version depuis http://www.clamav.net) :
| Code: | su -
cd /usr/local/src
wget http://surfnet.dl.sourceforge.net/sourceforge/clamav/clamav-0.91.2.tar.gz
tar xvfz clamav-0.91.2.tar.gz
cd clamav-0.91.2
/usr/sbin/groupadd clamav
/usr/sbin/useradd -g clamav -s /bin/false -c "Clam AntiVirus" clamav
./configure
make
make check
make install
cd .. |
On test :
| Code: | clamscan -r -l scan.txt clamav-0.91.2
cat scan.txt |
| Citation: |
root@mon_linux root# cat scan.txt
Scan started: Sat May 15 16:59:32 2004
-------------------------------------------------------------------------------
clamav-0.91.2/contrib/phishing/test/ChangeLog: Empty file
clamav-0.91.2/contrib/phishing/test/NEWS: Empty file
clamav-0.91.2/contrib/phishing/test/AUTHORS: Empty file
clamav-0.91.2/contrib/phishing/test/README: Empty file
clamav-0.91.2/contrib/entitynorm/ChangeLog: Empty file
clamav-0.91.2/contrib/entitynorm/NEWS: Empty file
clamav-0.91.2/contrib/entitynorm/README: Empty file
clamav-0.91.2/test/clam.zip: ClamAV-Test-File FOUND
clamav-0.91.2/test/clam-v3.rar: ClamAV-Test-File FOUND
clamav-0.91.2/test/clam.exe: ClamAV-Test-File FOUND
clamav-0.91.2/test/clam.cab: ClamAV-Test-File FOUND
clamav-0.91.2/test/clam.exe.bz2: ClamAV-Test-File FOUND
clamav-0.91.2/test/clam-v2.rar: ClamAV-Test-File FOUND
----------- SCAN SUMMARY -----------
Known viruses: 148100
Engine version: 0.91.2
Scanned directories: 55
Scanned files: 916
Infected files: 6
Data scanned: 49.59 MB
Time: 12.289 sec (0 m 12 s)
|
Cool, marche
| Code: | | vi /usr/local/etc/clamav.conf |
Commenter la ligne #Example
Decommenter ou ajouter :
| Code: |
LogFile /var/log/clamav
LogTime yes
PidFile /var/run/clamd.pid
TCPAddr 127.0.0.1 |
On lance le daemon :
| Code: | | /usr/local/sbin/clamd |
Mise a jour auto :
| Code: | touch /var/log/clam-update.log
chmod 600 /var/log/clam-update.log
chown clamav /var/log/clam-update.log
vi /usr/local/etc/freshclam.conf
|
-> Il faut ajouter une # devant exemple
-> Il faut y trouver la ligne "#UpdateLogFile /var/log/freshclam.log" et la remplacer par "UpdateLogFile /var/log/clam-update.log" (sans le diese).
On lance la mise a jour :
| Code: | $ freshclam
Clamav update process started at Sat May 15 17:06:49 2004
Reading CVD header (main.cvd): OK
Downloading main.cvd *
main.cvd updated (version: 23, sigs: 21096, f-level: 2, builder: ddm)
Reading CVD header (daily.cvd): OK
Downloading daily.cvd *
daily.cvd updated (version: 317, sigs: 461, f-level: 2, builder: ccordes)
Database updated (21557 signatures) from database.clamav.net (212.31.160.239).
|
Une deuxieme fois si un message d'erreur indique "WARNING: Incremental update failed, trying to download daily.cvd"
ça doit etre ok.
On met un petit lien pour que ça soit mis à jour tous les jours :
| Code: | | ln -s /usr/local/bin/freshclam /etc/cron.daily/ |
Il faut appliquer le patch qmail-queue :
| Code: |
$ cd /usr/local/src
$ wget http://www.qmail.org/qmailqueue-patch
$ cd /usr/local/src/netqmail-1.05/netqmail-1.05
$ patch -p1</usr/local/src/qmailqueue-patch
|
Normalement ça doit deja etre patché, et repondez non (choix par défaut, appuyez sur "entrée")
Il faut installer maildrop (http://www.courier-mta.org/download.php#maildrop):
| Code: |
cd /usr/local/src/
wget http://prdownloads.sourceforge.net/courier/maildrop-2.0.4.tar.bz2
tar -xvjf maildrop-2.0.4.tar.bz2
cd maildrop-2.0.4
./configure
make
make install-strip
make install-man
|
Installer unzip pour pouvoir scanner les archives (s'il n'est pas deja installé sinon passer a qmail-scanner) :
| Code: |
cd /usr/local/src
wget ftp://ftp.info-zip.org/pub/infozip/UNIX/LINUX/unz551x-glibc.tgz
tar xvfz unz551x-glibc.tgz
cd unzip-5.51/
cp unzip /bin/
|
Installation de qmail-scanner (http://qmail-scanner.sourceforge.net/ mais nous on prend la version patchée ici : http://toribio.apollinare.org/qmail-scanner/) :
| Code: |
cd /usr/local/src
wget http://toribio.apollinare.org/qmail-scanner/download/q-s-2.01st-20070204.tgz
tar -xvzf q-s-2.01st-20070204.tgz
cd qmail-scanner-2.01st
/usr/sbin/groupadd qscand
/usr/sbin/useradd -c "Qmail-Scanner Account" -g qscand -s /bin/false qscand
|
#On va patcher pour avoir l'option delete reject - le patch pour la v-2.02 pas dispo avant noel 2007 c'est pourquoi on part sur la 2.01
#On continue donc avec la version patché que l'on vient de downloader, meme si ça n'est pas la derniere version de qmail-scanner
Note : pour personnaliser la compilation, se référer aux exemples de configure ici : http://toribio.apollinare.org/qmail-scanner/#n.7
| Code: |
$ ./configure --install
|
Entree
Entree
Apres avoir lu...
Entree
Entree
Si vous avez cette erreur : " perl doesn't have Time::HiRes module - cannot continue.
Get it from CPAN:
http://search.cpan.org/search?mode=module&query=time%3A%3Ahires"
C'est qu'il manque le module HiRes?.
On va donc l'installer. Si vous ne l'avez pas déjà fait, installez et configurez la gestion des modules perl par CPAN via ce guide : InstallCpan => http://guides.ovh.com/InstallCpan
Pour installer le module HiRes? il suffit de taper ceci :
| Code: |
$ cpan
cpan> install Time::HiRes
cpan> quit
|
Et on recommence l'install de qmail-scanner (voir en bas de page pour un configure avec toutes les options) :
| Code: |
$ ./configure --install
Entree
Entree
Apres avoir lu...
Entree
Entree
|
Vous avez du voir passer quelquechose du genre :
| Citation: |
****** FINAL TEST ******
Please log into an unpriviledged account and run
/var/qmail/bin/qmail-scanner-queue.pl -g
|
Si vous obtenez une erreur comme ceci :
| Citation: | | Can't do setuid (cannot exec sperl) |
appuyez sur ctrl +c pour arreter et corriger :
On va installer perl-suid :
| Code: |
$ yum install perl-suidperl
|
Une fois installé, on repart :
| Code: |
$ ./configure --install
|
Vous obtenez alors ceci :
| Citation: |
Please log into an unpriviledged account and run
/var/qmail/bin/qmail-scanner-queue.pl -g
|
| Code: |
$ su qmaild
qmaild@machine qmail-scanner-1.20$ /var/qmail/bin/qmail-scanner-queue.pl -g
perlscanner: generate new DB file from /var/spool/qmailscan/quarantine-attachments.txt
perlscanner: total of 9 entries.
On retourne en root :
ctrl+d
|
Enfin, il se peut que le binaire n'ai pas été copié comme il faut (même en 2.06) :
| Code: |
cd /usr/local/src/qmail-scanner-2.01st/contrib
make
cp qmail-scanner-queue /var/qmail/bin/
cd /var/qmail/bin
chmod 6755 qmail-scanner-queue
chmod 0755 qmail-scanner-queue.pl
chown qscand:qscand qmail-scanner-queue*
|
Test:
| Code: | | $ contrib/test_installation.sh -doit |
Ce test envoi 4 mails l'administrateur du serveur.
Le 1er n'a pas de virus.
Le 2nd contient le virus eicar
Le 3eme le virus eicar avec un nom modifie
Le dernier est un spam (il passera dans notre cas car nous n'avons pas installes d'anti spam suf si spamassassin était installé sur la machine, il aura été pris en compte par la derniere version de qmail-scanner, magique !).
On verifie les logs de clamav :
| Code: | | cat /var/log/clamav |
Sat Feb 28 12:48:18 2004 -> /var/spool/qmailscan/tmp/mon_linux107796889846128025/sneaky.txt: Eicar-Test-Signature? FOUND
Il nous en a trouve un
On ajoute pour qmail (afin qu'il fasse appel au scanner) :
(ou /home/vpopmail/etc/tcp.smtp selon le cas)
| Code: |
127.:allow,RELAYCLIENT="",QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue"
:allow,QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue.pl"
|
ou celles ci si vous aviez spamassassin et qu'il a été pris en compte :
| Code: |
127.:allow,RELAYCLIENT="",QS_SPAMASSASSIN="yes",QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue"
:allow,QS_SPAMASSASSIN="yes",QMAILQUEUE="/var/qmail/bin/qmail-scanner-queue"
|
Pour verifier si vous avez spamassassin pris en compte, tapez :
| Code: | | $ cat /var/qmail/bin/qmail-scanner-queue.pl |grep "my @scanner_array=(" |
ou (sur la dernière version) :
| Code: | | $ cat /var/qmail/bin/qmail-scanner-queue.pl |grep "scanners_installed" |
Si vous voyez spamassassin dans la liste, c'est bon, il est pris en compte, utilisez alors la seconde ligne.
On met a jour les regles tcp.smtp
| Code: | | $ /usr/local/bin/tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp |
ou, selon l'emplacement de votre tcp.smtp :
| Code: | | /usr/local/bin/tcprules /home/vpopmail/etc/tcp.smtp.cdb /home/vpopmail/etc/tcp.smtp.tmp < /home/vpopmail/etc/tcp.smtp |
On relance qmail pour voir que tout va bien :
| Code: | | /etc/rc.d/init.d/qmail restart |
Les test :
Envoyer un mail sans virus.
Envoyer un mail avec ceci dans un fichier text et en meme temps taper tail -f /var/log/clamav.log : X5O!P%@AP[4PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
Les headers :
Mail normal :
Received: from bacto@inter-chat.net by ns2.bacto.net by uid 503 with
qmail-scanner-1.22
(clamdscan: 0.70. Clear:RC (interwiki):0(213.186.37.124):.
Processed in 0.236044 secs); 16 May 2004 11:40:12 -0000
On peut ensuite editer le fichier /var/qmail/bin/qmail-scanner-queue.pl pour modifier les options de base. (Le contact qui va recevoir les rapports etc.)
A vous de tater ce qui convient le mieux.
Vous pouvez re executer l'install en modifier les options du configures par defaut. Vous retrouvez ce qui a été saisi par defaut dans le fichier qmail-scanner-queue.pl.
Vous pouvez donc partir de ça pour refaire ./configure option...... (voir le manuel)
Par defaut, j'ai configuré qmail-scanner comme suit :
| Code: | | ./configure --qs-user qscand --admin root --domain mon_domaine_serveur.com --admin-description "System Anti-Virus Administrator" --notify admin --local-domains mon_domaine_serveur.com -silent-viruses auto --virus-to-delete 0 --skip-text-msgs 1 --lang en_GB --debug 0 --minidebug 1 --add-dscr-hdrs 1 --dscr-hdrs-text "X-Qmail-Scanner" --normalize yes --archive 0 --settings-per-domain 0 --max-scan-size 100000000 --unzip 1 --max-zip-size 1000000000 --max-unpacked-files 10000 --redundant 0 --log-details yes --log-crypto 0 --fix-mime 1 --ignore-eol-check 0 --sa-subject "SPAM:: " --sa-delta 0 --sa-alt 0 --sa-debug 0 --sa-report 0 --sa-quarantine 0.1 --sa-delete 5.0 --sa-reject 0 --scanners "fast_spamassassin,clamdscan" --install 1 |
Si vous avez installé spamassassin avec votre distrib, celui ci demarre automatiquement avec le systeme, ce qui n'est pas le cas de clamd.
Pour lancer clamd au demarrage du systeme, ajouter les lignes suivantes dans le /etc/rc.local :
| Code: |
#On update
/usr/local/bin/freshclam
#lancement antivirus
/usr/local/sbin/clamd
|
Puis on va automatiser la mise à jour de l'antivirus, on ouvre le fichier /etc/crontab et on ajoute les lignes suivantes :
| Code: |
#freshclam : mise a jour de la base antivirus de clam anti-virus
27 * * * * clamav /usr/local/bin/freshclam --quiet >/dev/null 2>/dev/null
|
Et voila, comme ça, tout se tient à jour tout seul !
Edit 18/08/2009 : De la même façon, penser à planifier la mise à jour des règle spamassassin en lançant un "sa-update" de la même façon, pour planifier les mises à jour. A tester une fois à la main avant.
Vous pouvez (devez) ensuite patcher avec chkuser :
http://forum.inforeseau.com/patcher-qmail-avec-chkuser-ovh-release-1-t81.html
Ou bien, juste en dessous, qui reprend la même chose, comme ça on a pas a changer de page !
Sans quoi votre machine peut servir de relay de spam par envoi indirect. Et vous finiriez blacklisté en très peu de temps !
Dernière édition par ronours le Mar Aoû 18, 2009 10:45 am; édité 16 fois |
|
| Revenir en haut de page |
|
 |
ronours Site Admin

Inscrit le: 25 Fév 2007 Messages: 1125
|
Posté le: Sam Jan 12, 2008 7:11 pm Sujet du message: Patch chkuser et Autres ressources |
|
|
On va dans le dossier où on a mis toutes les sources :
On telecharge le patch chkuser
| Code: | | wget http://www.interazioni.it/opensource/chkuser/download/archives/chkuser-2.0.9-release.tar.gz |
On decompresse le patch :
| Code: | | tar -xvzf chkuser-2.0.9-release.tar.gz |
On va dans le dossier avec les sources installées précedement :
| Code: | | cd /usr/local/src/netqmail-1.06 |
On applique le patch (facile !) :
| Code: | | patch </usr/local/src/chkuser-2.0.9-release.patch |
On stoppe qmail sinon les vilains fichiers sont verrouillés !
| Code: | | /etc/rc.d/init.d/qmail stop |
On recompile et installe les binaires de qmail :
(ça ne modifie pas les éléments antivirus et antispam que nous avons configuré avant)
et on copie le qmail-smtpd dans /var/qmail/bin à la place de l'ancien.
| Code: | mv /var/qmail/bin/qmail-smtpd /var/qmail/bin/qmail-smtpd.old
cp qmail-smtpd /var/qmail/bin/qmail-smtpd |
On relance qmail :
| Code: | | /etc/rc.d/init.d/qmail start |
Et voila, pour chaque tentative de mauvaise adresse, un warning s'affichera dans votre console, et l'expediteur sera renvoyé aussi sec :p
Impossible de faire disparaitre les warning, fermez votre console et ouvrez en une autre pour ne plus être parasité. Mais c'est bon signe, ça veut dire que ça marche.
Pour tester, avant de fermez la console (ou alors faite un qmail restart) et envoyez un mail erroné sur votre domaine (existepas@votredomaine.com) et là vous verrez la chose en action. (depuis une autre machine que votre serveur, genre un compte wanadoo, oups, orange, pardon ).
Voici une autre ressource interessante pour installer qmail :
http://bsd.org.yu/~bilke/computerwelt/files/qmail_vpopmail.html |
|
| Revenir en haut de page |
|
 |
ronours Site Admin

Inscrit le: 25 Fév 2007 Messages: 1125
|
Posté le: Mar Aoû 11, 2009 6:11 pm Sujet du message: appliquer les filtres spam-rbl blacklist |
|
|
Ensuite, il faut penser à appliquer les blacklist spam-rbl si les spams sont trop nombreux malgré le traditionnel antispam.
Suivre le guide ovh ici : http://guides.ovh.com/printPage/InstallQmailAntiSpam
Ca s'applique sans soucis à un qmail installé avec spamassassin etc car le traitement se fait en amont, avant que le mail n'entre dans le processus d'analyse.
voila il faut y penser !
Je suis envahi de spam russes qui passent pas mal au travers de la solution, et leurs ip sont souvent blacklistée, au lieu de mettre les ip à la main dans les hosts.deny et d'interdire tous les .ru (on ne parle pas russe chez moi, et le cyrillique est mal supporté par mes yeux! mdr ).
Je vais tester avec la blacklist bl.spamcop.net.
Edit du 18/08/2009 : plutôt un très bon retour avec les rbl bl.spamcop.net et zen.spamhaus.org ! La plupart des parasites sont dégagés !
Du coup, la partie pop de mon script de lancement Qmail (/etc/rc.d/init.d/qmail) ressemble à ça :
| Code: | #Service SMTP Port 25
env - PATH="/var/qmail/bin:/usr/local/bin" \
tcpserver -H -R -x /etc/tcp.smtp.cdb -c100 -u9999 -g9999 0 smtp \
/usr/local/bin/rblsmtpd -r bl.spamcop.net -r zen.spamhaus.org \
/var/qmail/bin/qmail-smtpd >> /var/log/qmail/rbl.log 2>&1 > /dev/null &
echo "smtp port 25 "
|
(Evidement les ID sont ceux que vous aurez choisi, ici 9999 9999 pour l'exemple). _________________ Soutenez le logiciel libre - Vous pouvez adhérer à l'april :
http://www.april.org/adherer?referent=Alexandre+BLANC+%28ablanc%29 - Soutenez le logiciel libre plus largement, adhérez à la FSF (Europe ou Monde) , voir lien en pied de page. |
|
| Revenir en haut de page |
|
 |
ronours Site Admin

Inscrit le: 25 Fév 2007 Messages: 1125
|
Posté le: Lun Fév 08, 2010 6:21 pm Sujet du message: Patch dns qmail |
|
|
Parfois certains gestionnaires de DNS ne respectent pas les normes RFC et dépassent les tailles autorisées sur les réponses DNS, et de fait, notre serveur qmail ne sait pas interpréter la réponse.
Il y a un patch pour contourner ceci et tolérer les non respect des normes. Évidement, ça n'est pas bon, car ça encourage les digressions dans des normes qui n'existent pas pour rien.
Hélas dans les faits, certains domaines ne peuvent pas êtres servis par notre serveur mail, et c'est un problème, donc un patch existe ici :
http://www.ckdhr.com/ckd/qmail-103.patch
Qui contient :
| Code: |
--- qmail-1.03/dns.c.103 Mon Aug 17 16:06:58 1998
+++ qmail-1.03/dns.c Wed Aug 26 16:28:56 1998
@@ -21,10 +21,12 @@
static unsigned short getshort(c) unsigned char *c;
{ unsigned short u; u = c[0]; return (u << 8) + c[1]; }
-static union { HEADER hdr; unsigned char buf[PACKETSZ]; } response;
+static struct { unsigned char *buf; } response;
+static int responsebuflen = 0;
static int responselen;
static unsigned char *responseend;
static unsigned char *responsepos;
+static u_long saveresoptions;
static int numanswers;
static char name[MAXDNAME];
@@ -45,18 +47,33 @@
errno = 0;
if (!stralloc_copy(&glue,domain)) return DNS_MEM;
if (!stralloc_0(&glue)) return DNS_MEM;
- responselen = lookup(glue.s,C_IN,type,response.buf,sizeof(response));
+ if (!responsebuflen)
+ if (response.buf = (unsigned char *)alloc(PACKETSZ+1))
+ responsebuflen = PACKETSZ+1;
+ else return DNS_MEM;
+
+ responselen = lookup(glue.s,C_IN,type,response.buf,responsebuflen);
+ if ((responselen >= responsebuflen) ||
+ (responselen > 0 && (((HEADER *)response.buf)->tc)))
+ {
+ if (responsebuflen < 65536)
+ if (alloc_re(&response.buf, responsebuflen, 65536))
+ responsebuflen = 65536;
+ else return DNS_MEM;
+ saveresoptions = _res.options;
+ _res.options |= RES_USEVC;
+ responselen = lookup(glue.s,C_IN,type,response.buf,responsebuflen);
+ _res.options = saveresoptions;
+ }
if (responselen <= 0)
{
if (errno == ECONNREFUSED) return DNS_SOFT;
if (h_errno == TRY_AGAIN) return DNS_SOFT;
return DNS_HARD;
}
- if (responselen >= sizeof(response))
- responselen = sizeof(response);
responseend = response.buf + responselen;
responsepos = response.buf + sizeof(HEADER);
- n = ntohs(response.hdr.qdcount);
+ n = ntohs(((HEADER *)response.buf)->qdcount);
while (n-- > 0)
{
i = dn_expand(response.buf,responseend,responsepos,name,MAXDNAME);
@@ -66,7 +83,7 @@
if (i < QFIXEDSZ) return DNS_SOFT;
responsepos += QFIXEDSZ;
}
- numanswers = ntohs(response.hdr.ancount);
+ numanswers = ntohs(((HEADER *)response.buf)->ancount);
return 0;
}
|
Celui ci permet normalement de contourner le problème. A appliquer sur votre fichier, make clean, recompiler, et remplacer le fichier qmail-smtpd avec le nouveau, ça devrait suffire
Edit: voir cette page : http://www.memoryhole.net/qmail/#oversize-dns
et appliquer également le patch en conséquence qui se situe ici :
http://homepages.tesco.net/~J.deBoynePollard/Softwares/qmail/any-to-cname.patch
et qui contient pour mémoire :
| Code: |
--- qmail-1.03-original/dns.c Mon Jun 15 10:53:16 1998
+++ qmail-1.03/dns.c Wed Mar 5 11:31:13 2003
@@ -196,7 +196,7 @@
if (!sa->len) return loop;
if (sa->s[sa->len - 1] == ']') return loop;
if (sa->s[sa->len - 1] == '.') { --sa->len; continue; }
- switch(resolve(sa,T_ANY))
+ switch(resolve(sa,T_CNAME))
{
case DNS_MEM: return DNS_MEM;
case DNS_SOFT: return DNS_SOFT;
|
voilà voilà  _________________ Soutenez le logiciel libre - Vous pouvez adhérer à l'april :
http://www.april.org/adherer?referent=Alexandre+BLANC+%28ablanc%29 - Soutenez le logiciel libre plus largement, adhérez à la FSF (Europe ou Monde) , voir lien en pied de page. |
|
| Revenir en haut de page |
|
 |
|
|
|
Vous ne pouvez pas poster de nouveaux sujets dans ce forum Vous ne pouvez pas répondre aux sujets dans ce forum Vous ne pouvez pas éditer vos messages dans ce forum Vous ne pouvez pas supprimer vos messages dans ce forum Vous ne pouvez pas voter dans les sondages de ce forum
|
|