Bienvenue sur le forum technique internet et developpement Web - Experience Linux antispam antivirus, drivers etc. Pour me contacter, laissez un message sur le forum ou ecrivez moi sur alexandre arobase (contre le spam) inforeseau point com par exemple - Windev - Windev mobile - Windows
Forum technique developpement, GNU Linux et logiciels, de l'ours Index du Forum Forum technique developpement, GNU Linux et logiciels, de l'ours
Forum d'echange et d'entre aide sur le developpement, GNU Linux
 
 Sujets surveillésSujets surveillés   FAQFAQ   RechercherRechercher   Liste des MembresListe des Membres   Groupes d'utilisateursGroupes d'utilisateurs   S'enregistrerS'enregistrer 
 ProfilProfil   Se connecter pour vérifier ses messages privésSe connecter pour vérifier ses messages privés   ConnexionConnexion 

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.
 


installer Qmail clamav spamassassin qmailscanner, memo perso


 
Poster un nouveau sujet   Répondre au sujet    Forum technique developpement, GNU Linux et logiciels, de l'ours Index du Forum -> Experiences linux
Voir le sujet précédent :: Voir le sujet suivant  
Auteur Message
ronours
Site Admin


Inscrit le: 25 Fév 2007
Messages: 1204

MessagePosté le: Mer Déc 05, 2007 4:04 pm    Sujet du message: installer Qmail clamav spamassassin qmailscanner, memo perso Répondre en citant

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! Embarassed )

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 (vpopmail-5.4.27 recommandée) 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.

Mais je recommande l vpopmail-5.4.27 car j'ai rencontré des soucis sur la 5.5 avec qmail.
Fin du edit.

Ajouter le nettoyage en crontab de l'opensmtp de vpopmail, ajouter ces lignes dans /etc/crontab :
Code:
# vpopmail
40 * * * * root /home/vpopmail/bin/clearopensmtp 2>&1 > /dev/null



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


Installation de courier-imap (decompresser et compiler en user, installer en root comme pour authlib - ./configure, make, make install, make install-configure )
Note, version max : courier-imap-4.1.3.tar.bz2 (sinon soucis avec authlib et vchkpw)
http://www.courier-mta.org/download.php#imap
Plus exactement ici :
http://sourceforge.net/projects/courier/files/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


Enfin, automatisez le demarrage de l'imap dans le système :
Code:
ln -s /etc/init.d/imapd /etc/rc3.d/S81imapd


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 Sam Juin 05, 2010 2:09 pm; édité 38 fois
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
ronours
Site Admin


Inscrit le: 25 Fév 2007
Messages: 1204

MessagePosté le: Lun Déc 10, 2007 2:08 pm    Sujet du message: Installation de qmail-scanner avec clamav et spamassassin Répondre en citant

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 Smile


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"
Code:
$ freshclam


ç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 ou ici pour prendre une des versions dispo http://sourceforge.net/projects/courier/files/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
chmod +s 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 Wink

On ajoute pour qmail (afin qu'il fasse appel au scanner) :
Code:
$ vi /etc/tcp.smtp
(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 ! Smile
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 Sam Juin 05, 2010 2:22 pm; édité 18 fois
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
ronours
Site Admin


Inscrit le: 25 Fév 2007
Messages: 1204

MessagePosté le: Sam Jan 12, 2008 7:11 pm    Sujet du message: Patch chkuser et Autres ressources Répondre en citant

On va dans le dossier où on a mis toutes les sources :
Code:
cd /usr/local/src


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 :
Code:
make

(ç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 (pour l'instant), 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 ).

La mise en place de RBL dans le message suivant resoudra le pb d'affichage de chkuser en console, en passant tout ça en log avec les rbl Wink no stress!

Voici une autre ressource interessante pour installer qmail :
http://bsd.org.yu/~bilke/computerwelt/files/qmail_vpopmail.html


Dernière édition par ronours le Sam Juin 05, 2010 1:24 pm; édité 1 fois
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
ronours
Site Admin


Inscrit le: 25 Fév 2007
Messages: 1204

MessagePosté le: Mar Aoû 11, 2009 6:11 pm    Sujet du message: appliquer les filtres spam-rbl blacklist Répondre en citant

Ensuite, il faut penser à appliquer les blacklist spam-rbl si les spams sont trop nombreux malgré le traditionnel antispam (simple modif du script de lancement de qmail!)

Suivre le guide ovh ici : http://guides.ovh.com/printPage/InstallQmailAntiSpam (modification du script de lancement de qmail sur le smtp juste - voir plus bas exemple dans le edit)

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 Smile 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! Razz 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 smtp 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, generalement c'est 89 et 89 si vous avez suivi le guide).
_________________
Soutenez le logiciel libre, adhérez à la FSF (Europe ou Monde) , voir lien en pied de page.


Dernière édition par ronours le Sam Juin 05, 2010 1:32 pm; édité 2 fois
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
ronours
Site Admin


Inscrit le: 25 Fév 2007
Messages: 1204

MessagePosté le: Lun Fév 08, 2010 6:21 pm    Sujet du message: Patch dns qmail Répondre en citant

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 et qmail-remote avec le nouveau, ça devrait suffire Smile

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à Smile

Edit : Enfin, il reste une solution "à la main" pour les domaines recalcitrants, c'est de forcer le mx avec les fichier "smtproutes" qui va dans /var/qmail/control/.
En effet, on résoud le MX à la main, on récupère l'ip, et on met ça à la ligne dans smtproutes comme ceci :
domaine.tld:adresse_ip_dumx

Évidement, ceci ne devrait être que temporaire, dans la mesure où les DNS peuvent changer à tout moment, et envoyer les mails de cette façon ne respecte pas les normes, et peut conduire à des pertes de messages.
_________________
Soutenez le logiciel libre, adhérez à la FSF (Europe ou Monde) , voir lien en pied de page.


Dernière édition par ronours le Mer Sep 07, 2011 5:34 pm; édité 1 fois
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
ronours
Site Admin


Inscrit le: 25 Fév 2007
Messages: 1204

MessagePosté le: Sam Juin 05, 2010 5:42 pm    Sujet du message: Configurer sqwebmail - memo Répondre en citant

ne pas oublier de lire le fichier INSTALL pour installer sqwebmail / qmailadmin avec les etapes qui vont bien

Code:
  ./configure [options - see below]
   make configure-check
   make
   make check
   make install-strip       # Do a make install if this doesn't work
   make install-configure   # Install configuration files.

/usr/lib/sqwebmail/libexec/sqwebmaild.rc start

_________________
Soutenez le logiciel libre, adhérez à la FSF (Europe ou Monde) , voir lien en pied de page.
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
ronours
Site Admin


Inscrit le: 25 Fév 2007
Messages: 1204

MessagePosté le: Ven Jan 21, 2011 5:14 pm    Sujet du message: Loguer les connexions au pop avec qmail vpopmail Répondre en citant

Voici un petit complément, sur mes systèmes qmail qui tournent depuis fort longtemps, on m'a demander de pouvoir loguer les connexions en pop.

J'ai trouvé l'information ici :
Citation:
http://software.maexotic.de/qmail/103-pop3log/

En gros, on crée donc le fichier /var/qmail/bin/qmail-pop3d-wrapper.sh qui contient :
Code:
#!/bin/sh
echo "`/bin/date` qmail-pop3d: user $VPOPUSER logged in from $TCPREMOTEIP:$TCPREMOTEPORT" >&5
#/bin/env>/tmp/vars.txt &
$@


Vous pouvez personnaliser la sortie en utilisant les variables d'environnement disponibles suivantes (résultat obtenu par la commande /bin/env):
Code:
SHELL=shell utilisé
USER=login du compte sans le domaine
PATH=/var/qmail/bin:/usr/local/bin
PWD=dossier de stockage ou maildir
PROTO=TCP => protocole utilisé, normalement c'est du TCP
TCPREMOTEIP= ip du client
VPOPUSER= login@domaine.tld
TCPLOCALPORT=port utilisé sur le serveur
SHLVL=1
HOME=dossier home de l'utilisateur qui pop
TCPLOCALIP=ip locale par laquelle le client s'est connecté.
TCPREMOTEPORT=48536

Puis chez moi, la ligne qui lance le service pop qui ressemblait à ça :
Code:
        env - PATH="/var/qmail/bin:/usr/local/bin" \
        tcpserver -H -R -c100 0 pop-3 /var/qmail/bin/qmail-popup \
        ks366191.kimsufi.com \
        /home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d Maildir &
        echo -n "pop "

et qui est devenue ça :
Code:
        env - PATH="/var/qmail/bin:/usr/local/bin" \
        tcpserver -H -R -c100 0 pop-3 /var/qmail/bin/qmail-popup \
        ks366191.kimsufi.com \
        /home/vpopmail/bin/vchkpw /var/qmail/bin/qmail-pop3d-wrapper.sh /var/qmail/bin/qmail-pop3d Maildir 2>>/var/log/qmail/pop.log 5>> /var/log/qmail/pop.log&
        echo -n "pop "


Avec ça toutes les connexions sur le pop sont loguées dans le fichier pop.log Wink
_________________
Soutenez le logiciel libre, adhérez à la FSF (Europe ou Monde) , voir lien en pied de page.
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
ronours
Site Admin


Inscrit le: 25 Fév 2007
Messages: 1204

MessagePosté le: Dim Mar 13, 2011 5:52 am    Sujet du message: Un autre tuto qmail avec mysql auth Répondre en citant

A lire, très intéressant, plus simple et complet :
http://www.serveur-rps.fr/mail/installation_de_qmail_vpopmail_avec_mysql_et_ucspi-tcp

J'aime aussi beaucoup en bas la mise ne place de MX fronteaux pour la réceptions et filtrage de mail, suivi de la distribution aux boites sur le serveur qui détient les boites.
_________________
Soutenez le logiciel libre, adhérez à la FSF (Europe ou Monde) , voir lien en pied de page.
Revenir en haut de page
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web de l'utilisateur
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    Forum technique developpement, GNU Linux et logiciels, de l'ours Index du Forum -> Experiences linux Toutes les heures sont au format GMT + 1 Heure
Page 1 sur 1

 
Sauter vers:  
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


Powered by phpBB © 2001, 2005 phpBB Group
Traduction par : phpBB-fr.com

Visitez aussi : Photos pour tous - Lezactus - Actualites et articles en ligne - Le forum du scrapbooking
Vous pouvez copier les messages partiellement sous reserve de mettre un lien vers la source sur ce forum - Edité et géré par Alexandre BLANC - [FSF Associate Member]