Taille: 343
Commentaire: converted to 1.6 markup
|
Taille: 8092
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
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