Modifications entre les versions 6 et 8 (s'étendant sur 2 versions)
Version 6 à la date du 2008-02-21 22:09:45
Taille: 343
Éditeur: localhost
Commentaire: converted to 1.6 markup
Version 8 à la date du 2010-05-05 15:28:49
Taille: 8092
Éditeur: RogerYerbanga
Commentaire: Début clamav
Texte supprimé. Texte ajouté.
Ligne 1: Ligne 1:
Décrire ici « ClamAV ».

ClamAV est un des outils de la [[LutteAntiSpam| lutte anti-spam]] de l'AUF.

'''La''' source est le projet [[http://www.debian.org/volatile|debian-volatile]].

La page de l'ancien wiki est à migrer : AncienWiki:ClamAV

'''à vos claviers'''
= ClamAV =
- http://www.clamav.net/ -

ClamAV est un antivirus libre que nous utilisons le plus souvent dans un serveur de messagerie pour scanner les mails à la recherche de vers, virus, spam, ...
C'est donc un outil de lutte contre la propagation des virus et aussi des spam [[LutteAntiSpam| lutte anti-spam]] de l'AUF.

Les sources officielles se trouvent sur http://www.clamav.net

Du côté de notre distro préférée, le projet [[http://www.debian.org/volatile|debian-volatile]] se charge de maintenir les paquets qu'il faut pour que notre ClamAV fonctionne et soit à peu près à jour comme il faut.

Donc, il faut avoir cette entrée dans le fichier sources.list de tous tes serveurs de messagerie :

{{{
deb http://volatile.debian.org/debian-volatile lenny/volatile main
}}}

Deux sous-programmes :

- '''freshclam''' : qui se charge des mises à jour de la base de définitions des virus

- '''clamd''' : qui fait le vrai boulot, scanne les fichiers à la recherche de virus

Il faut donc installer les paquets '''clamav-daemon''' et '''clamav-freshclam'''.

Les fichiers de configurations sont dans /etc/clamav et sont :

- /etc/clamav/clamd.conf : C’est le principal fichier de configuration, c’est lui qui précise les paramètres comme le type de fichiers à scanner ou ne pas scanner et les options qui vont avec, les fichiers où écrire les logs, la taille maximale des fichiers à scanner, …

Pour ce fichier, les options pouvant être retenues sont :


{{{#!highlight sh
##
## Gestion des Logs
##
##

# Le fichier de log
LogFile /var/log/clamav/clamd.log

# Protéger le fichier de log contre les écritures concurrentes
LogFileUnlock false
# Permet d'éviter de lancer plusieurs clamav avec le même fichier de log

# Désactiver la gestion de la rotation par clamav, et laisser logrotate le faire
LogFileMaxSize 0
# Normalement, sur une lenny, c'est déjà bien géré

# Log time with each message, je préfère ; ça fait quelques octets en plus par log,
# mais j'imagine vraiment mal des logs sans heures.
LogTime true

# Normal non, on va pas se mettre à logguer les trucs clean
LogClean no

# On log déjà dans /var/log/clamav/clamd.log
LogSyslog no

# Specify the type of syslog messages
# En plus, on n'en a pas besoin, donc peut être mis en comment
LogFacility LOG_LOCAL6

# A mettre à yes seulement pendant la phase de test
LogVerbose no

##
## Gestion du processus
##
##

# Facile
PidFile /var/run/clamav/clamd.pid

# Cette option est vraiment optionnelle. Ça précise juste le répertoire temporaire
TemporaryDirectory /tmp

# Chemin vers le répertoire de la base de données
DatabaseDirectory /var/lib/clamav

# Charger uniquement les définitions officielles publiées par le projet ClamAV :
# je garde à no parce que c'est la config par défaut.
OfficialDatabaseOnly no

# Dans ma config, je mets cette option en commentaire, parce que je fais communiquer
# clamav et exim par une autre méthode avec IP et port réseau.
#LocalSocket /var/run/clamav/clamd.ctl

# Paramètres en commentaire aussi chez moi, mais à activer optionnellement chez les
# utilisateurs de LocalSocket
#LocalSocketGroup clamav
#LocalSocketMode 660
#FixStaleSocket yes

# Moi j'utilise plutôt ça, au lieu de LocalSocket :
# L'adresse IP et le port sur lequel écoute clamav
TCPAddr 127.0.0.1
TCPSocket 3310

# Maximum length the queue of pending connections may grow to :
MaxConnectionQueueLength 15

# Close the connection when the data size limit is exceeded.
# The value should match your MTA's limit for a maximum attachment size.
StreamMaxLength 10M

# Maximum number of threads running at the same time.
MaxThreads 12

# Cette option spécifie le temps en secondes après lequel clamd ferme la
# connexion si le client ne réagit plus
CommandReadTimeout 5

# This option specifies how long to wait (in miliseconds) if the send buffer is full.
# Keep this value low to prevent clamd hanging
SendBufTimeout 200

# Maximum number of queued items (including those being processed by MaxThreads threads)
# It is recommended to have this value at least twice MaxThreads if possible.
MaxQueue 100

# Waiting for a new job will timeout after this time (seconds).
IdleTimeout 30

# Profondeur max des répertoires scannés
MaxDirectoryRecursion 15

# Follow directory symlinks. Ça c'est des coups à faire planter son clamav en mettant yes.
FollowDirectorySymlinks no

# Follow regular file symlinks.
FollowFileSymlinks no

# Scan files and directories on other filesystems.
CrossFilesystems yes

# Perform a database check, toutes les 10 mn
SelfCheck 600

# Run as clamav user.
User clamav

# Initialize supplementary group access (clamd must be started by root).
AllowSupplementaryGroups no

# Stop daemon when libclamav reports out of memory condition.
ExitOnOOM yes

# Don't fork into background ?
Foreground no

# Disable debug messages in libclamav ?
Debug no

# Remove temporary files ? (for debug purposes).
LeaveTemporaryFiles no

# Detect Possibly Unwanted Applications.
DetectPUA no

# In some cases (eg. complex malware, exploits in graphic files, and others),
# ClamAV uses special algorithms to provide accurate detection. This option
# controls the algorithmic detection.
# Je le laisse donc à yes comme eux
AlgorithmicDetection yes

##
## Executable files
##

# PE = Portable Executable, exécutable de Windows
# This option allows ClamAV to perform a deeper analysis of executable files
ScanPE yes

# Executable and Linking Format is a standard format for UN*X executables.
# This option allows you to control the scanning of ELF files.
ScanELF yes

# With this option clamav will try to detect broken executables (both PE and
# ELF) and mark them as Broken.Executable.
# Je le garde à no comme eux
DetectBrokenExecutables no

##
## Documents
##

# This option enables scanning of OLE2 files, such as Microsoft Office
# documents and .msi files.
ScanOLE2 yes

# This option enables scanning within PDF files.
ScanPDF yes

##
## Mail files
##


# Enable internal e-mail scanner.
ScanMail yes

# WARNING: This option may open your system to a DoS attack.
# Never use it on loaded servers.
ScanPartialMessages no

# Avec cette option, ClamAV essaiera de détecter les tentatives de phishing
PhishingSignatures yes

# Scanne URLs trouvés dans les emails à la recherche de tentative de phishing
PhishingScanURLs yes

# Bloquer les SSL qui ne coïncident pas dans les USLs ?
# This can lead to false positives.
PhishingAlwaysBlockSSLMismatch no

# Ne pas bloquer les URLs masqués
PhishingAlwaysBlockCloak no

# If an archive contains both a heuristically detected
# virus/phish, and a real malware, the real malware will be reported
HeuristicScanPrecedence no

##
## Data Loss Prevention (DLP)
##

# Enable the DLP module ?
StructuredDataDetection no

##
## HTML
##

# Scanne de l'HTML
ScanHTML yes

##
## Archives
##

# Scanne l'archive et le fichier compressé
ScanArchive yes

# Ne pas bloquer les archives chiffrées
ArchiveBlockEncrypted no

##
## Limites
##

# The options below protect your system against Denial of Service attacks
# using archive bombs.

# Taille maximum de chaque fichier reçu
# Autrement dit, si en décompressant une archive, on trouve une taille de
# plus de 100M, on scannera seulement jusqu'au 100M
MaxScanSize 100M

# Taille maximum de chaque unité de fichier scannée
# S'applique sur l'archive, et chaque fichier de l'archive
MaxFileSize 10M

# La profondeur d'archivement autorisée (si on peut l'appeler comme ça)
MaxRecursion 15

# Nombre de fichiers maximum à scanner dans une archive
MaxFiles 10000

##
## Clamuko settings
##

# Enable Clamuko ?
# Je le mettrai à yes le jour je comprendrai et saurai comment ça marche ;-)
ClamukoScanOnAccess no
}}}
Ligne 13: Ligne 280:
CatégorieLogiciel [[CatégorieRecommandationDRI]] CatégorieLogiciel [[CatégorieRecommandationsARI]]

ClamAV

- http://www.clamav.net/ -

ClamAV est un antivirus libre que nous utilisons le plus souvent dans un serveur de messagerie pour scanner les mails à la recherche de vers, virus, spam, ... C'est donc un outil de lutte contre la propagation des virus et aussi des spam lutte anti-spam de l'AUF.

Les sources officielles se trouvent sur http://www.clamav.net

Du côté de notre distro préférée, le projet debian-volatile se charge de maintenir les paquets qu'il faut pour que notre ClamAV fonctionne et soit à peu près à jour comme il faut.

Donc, il faut avoir cette entrée dans le fichier sources.list de tous tes serveurs de messagerie :

deb http://volatile.debian.org/debian-volatile lenny/volatile main

Deux sous-programmes :

- freshclam : qui se charge des mises à jour de la base de définitions des virus

- clamd : qui fait le vrai boulot, scanne les fichiers à la recherche de virus

Il faut donc installer les paquets clamav-daemon et clamav-freshclam.

Les fichiers de configurations sont dans /etc/clamav et sont :

- /etc/clamav/clamd.conf : C’est le principal fichier de configuration, c’est lui qui précise les paramètres comme le type de fichiers à scanner ou ne pas scanner et les options qui vont avec, les fichiers où écrire les logs, la taille maximale des fichiers à scanner, …

Pour ce fichier, les options pouvant être retenues sont :

   1 ##
   2 ## Gestion des Logs
   3 ##
   4 ##
   5 
   6 # Le fichier de log 
   7 LogFile /var/log/clamav/clamd.log
   8 
   9 # Protéger le fichier de log contre les écritures concurrentes
  10 LogFileUnlock false
  11 # Permet d'éviter de lancer plusieurs clamav avec le même fichier de log
  12 
  13 # Désactiver la gestion de la rotation par clamav, et laisser logrotate le faire
  14 LogFileMaxSize 0
  15 # Normalement, sur une lenny, c'est déjà bien géré
  16 
  17 # Log time with each message, je préfère ; ça fait quelques octets en plus par log, 
  18 # mais j'imagine vraiment mal des logs sans heures.
  19 LogTime true
  20 
  21 # Normal non, on va pas se mettre à logguer les trucs clean
  22 LogClean no
  23 
  24 # On log déjà dans /var/log/clamav/clamd.log
  25 LogSyslog no
  26 
  27 # Specify the type of syslog messages
  28 # En plus, on n'en a pas besoin, donc peut être mis en comment
  29 LogFacility LOG_LOCAL6
  30 
  31 # A mettre à yes seulement pendant la phase de test
  32 LogVerbose no
  33 
  34 ##
  35 ## Gestion du processus
  36 ##
  37 ##
  38 
  39 # Facile
  40 PidFile /var/run/clamav/clamd.pid
  41 
  42 # Cette option est vraiment optionnelle. Ça précise juste le répertoire temporaire
  43 TemporaryDirectory /tmp
  44 
  45 # Chemin vers le répertoire de la base de données
  46 DatabaseDirectory /var/lib/clamav
  47 
  48 # Charger uniquement les définitions officielles publiées par le projet ClamAV : 
  49 # je garde à no parce que c'est la config par défaut.
  50 OfficialDatabaseOnly no
  51 
  52 # Dans ma config, je mets cette option en commentaire, parce que je fais communiquer
  53 # clamav et exim par une autre méthode avec IP et port réseau.
  54 #LocalSocket /var/run/clamav/clamd.ctl
  55 
  56 # Paramètres en commentaire aussi chez moi, mais à activer optionnellement chez les 
  57 # utilisateurs de LocalSocket
  58 #LocalSocketGroup clamav
  59 #LocalSocketMode 660
  60 #FixStaleSocket yes
  61 
  62 # Moi j'utilise plutôt ça, au lieu de LocalSocket :
  63 # L'adresse IP et le port sur lequel écoute clamav
  64 TCPAddr 127.0.0.1
  65 TCPSocket 3310
  66 
  67 # Maximum length the queue of pending connections may grow to :
  68 MaxConnectionQueueLength 15
  69 
  70 # Close the connection when the data size limit is exceeded.
  71 # The value should match your MTA's limit for a maximum attachment size.
  72 StreamMaxLength 10M
  73 
  74 # Maximum number of threads running at the same time.
  75 MaxThreads 12
  76 
  77 # Cette option spécifie le temps en secondes après lequel clamd ferme la
  78 # connexion si le client ne réagit plus
  79 CommandReadTimeout 5
  80 
  81 # This option specifies how long to wait (in miliseconds) if the send buffer is full.
  82 # Keep this value low to prevent clamd hanging
  83 SendBufTimeout 200
  84 
  85 # Maximum number of queued items (including those being processed by MaxThreads threads)
  86 # It is recommended to have this value at least twice MaxThreads if possible.
  87 MaxQueue 100
  88 
  89 # Waiting for a new job will timeout after this time (seconds).
  90 IdleTimeout 30
  91 
  92 # Profondeur max des répertoires scannés
  93 MaxDirectoryRecursion 15
  94 
  95 # Follow directory symlinks. Ça c'est des coups à faire planter son clamav en mettant yes.
  96 FollowDirectorySymlinks no
  97 
  98 # Follow regular file symlinks.
  99 FollowFileSymlinks no
 100 
 101 # Scan files and directories on other filesystems.
 102 CrossFilesystems yes
 103 
 104 # Perform a database check, toutes les 10 mn
 105 SelfCheck 600
 106 
 107 # Run as clamav user.
 108 User clamav
 109 
 110 # Initialize supplementary group access (clamd must be started by root).
 111 AllowSupplementaryGroups no
 112 
 113 # Stop daemon when libclamav reports out of memory condition.
 114 ExitOnOOM yes
 115 
 116 # Don't fork into background ?
 117 Foreground no
 118 
 119 # Disable debug messages in libclamav ?
 120 Debug no
 121 
 122 # Remove temporary files ? (for debug purposes).
 123 LeaveTemporaryFiles no
 124 
 125 # Detect Possibly Unwanted Applications.
 126 DetectPUA no
 127 
 128 # In some cases (eg. complex malware, exploits in graphic files, and others),
 129 # ClamAV uses special algorithms to provide accurate detection. This option
 130 # controls the algorithmic detection.
 131 # Je le laisse donc à yes comme eux
 132 AlgorithmicDetection yes
 133 
 134 ##
 135 ## Executable files
 136 ##
 137 
 138 # PE = Portable Executable, exécutable de Windows
 139 # This option allows ClamAV to perform a deeper analysis of executable files 
 140 ScanPE yes
 141 
 142 # Executable and Linking Format is a standard format for UN*X executables.
 143 # This option allows you to control the scanning of ELF files.
 144 ScanELF yes
 145 
 146 # With this option clamav will try to detect broken executables (both PE and
 147 # ELF) and mark them as Broken.Executable.
 148 # Je le garde à no comme eux
 149 DetectBrokenExecutables no
 150 
 151 ##
 152 ## Documents
 153 ##
 154 
 155 # This option enables scanning of OLE2 files, such as Microsoft Office
 156 # documents and .msi files.
 157 ScanOLE2 yes
 158 
 159 # This option enables scanning within PDF files.
 160 ScanPDF yes
 161 
 162 ##
 163 ## Mail files
 164 ##
 165 
 166 
 167 # Enable internal e-mail scanner.
 168 ScanMail yes
 169 
 170 # WARNING: This option may open your system to a DoS attack.
 171 #          Never use it on loaded servers.
 172 ScanPartialMessages no
 173 
 174 # Avec cette option, ClamAV essaiera de détecter les tentatives de phishing
 175 PhishingSignatures yes
 176 
 177 # Scanne URLs trouvés dans les emails à la recherche de tentative de phishing
 178 PhishingScanURLs yes
 179 
 180 # Bloquer les SSL qui ne coïncident pas dans les USLs ?
 181 # This can lead to false positives.
 182 PhishingAlwaysBlockSSLMismatch no
 183 
 184 # Ne pas bloquer les URLs masqués
 185 PhishingAlwaysBlockCloak no
 186 
 187 # If an archive contains both a heuristically detected
 188 # virus/phish, and a real malware, the real malware will be reported
 189 HeuristicScanPrecedence no
 190 
 191 ##
 192 ## Data Loss Prevention (DLP)
 193 ##
 194 
 195 # Enable the DLP module ?
 196 StructuredDataDetection no
 197 
 198 ##
 199 ## HTML
 200 ##
 201 
 202 # Scanne de l'HTML
 203 ScanHTML yes
 204 
 205 ##
 206 ## Archives
 207 ##
 208 
 209 # Scanne l'archive et le fichier compressé
 210 ScanArchive yes
 211 
 212 # Ne pas bloquer les archives chiffrées 
 213 ArchiveBlockEncrypted no
 214 
 215 ##
 216 ## Limites
 217 ##
 218 
 219 # The options below protect your system against Denial of Service attacks
 220 # using archive bombs.
 221 
 222 # Taille maximum de chaque fichier reçu
 223 # Autrement dit, si en décompressant une archive, on trouve une taille de 
 224 # plus de 100M, on scannera seulement jusqu'au 100M
 225 MaxScanSize 100M
 226 
 227 # Taille maximum de chaque unité de fichier scannée
 228 # S'applique sur l'archive, et chaque fichier de l'archive
 229 MaxFileSize 10M
 230 
 231 # La profondeur d'archivement autorisée (si on peut l'appeler comme ça)
 232 MaxRecursion 15
 233 
 234 # Nombre de fichiers maximum à scanner dans une archive
 235 MaxFiles 10000
 236 
 237 ##
 238 ## Clamuko settings
 239 ##
 240 
 241 # Enable Clamuko ?
 242 # Je le mettrai à yes le jour je comprendrai et saurai comment ça marche ;-)
 243 ClamukoScanOnAccess no


CatégorieLogiciel CatégorieRecommandationsARI

ClamAV (dernière édition le 2010-05-05 16:32:18 par RogerYerbanga)