User Tools

Site Tools


doc:appunti:linux:sa:procmail_sanitizer_clamav

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
doc:appunti:linux:sa:procmail_sanitizer_clamav [2020/06/18 09:30] niccolodoc:appunti:linux:sa:procmail_sanitizer_clamav [2020/06/18 10:02] – [Sanitizer] niccolo
Line 1: Line 1:
-====== Scansione antivirus con procmailsanitizer clamav ======+====== Antivirus con ProcmailSanitizer ClamAV ======
  
 ===== Procmail ===== ===== Procmail =====
  
-Se si utilizza **procmail** come //local delivery agent//, è sufficiente aggiungere questa regola in **$HOME/.procmailrc** per abilitare il filtro antivirus con il programma **sanitizer**:+Se si utilizza **procmail** come //local delivery agent//, è sufficiente aggiungere questa regola in **$HOME/.procmailrc** per abilitare il filtro antivirus tramite il programma **sanitizer**:
  
 <file> <file>
 +#-------------------------------------------------------------------------
 +# $HOME/.procmailrc
 +#-------------------------------------------------------------------------
 PATH=/usr/local/bin:/usr/bin:/bin PATH=/usr/local/bin:/usr/bin:/bin
 SHELL=/bin/bash SHELL=/bin/bash
Line 22: Line 25:
 ===== Sanitizer ===== ===== Sanitizer =====
  
-Il programma sanitizer si configura tramite **/etc/sanitizer.cfg**:+Il programma sanitizer funziona come filtro sui messaggi di posta, analizzando gli allegati secondo la configurazione indicata in  **/etc/sanitizer.cfg**:
  
 <file> <file>
Line 64: Line 67:
 # #
 #    $P - This process's PID, in hex. #    $P - This process's PID, in hex.
-#    $T - The current Unix time, in hex. 
 #    $T - The current Unix time, in hex. #    $T - The current Unix time, in hex.
 #    $F - A safe version of the original file name. #    $F - A safe version of the original file name.
Line 115: Line 117:
 # Virus scanner command line. The three exit codes represent the # Virus scanner command line. The three exit codes represent the
 # following scan conditions: clean, disinfected, infected. # following scan conditions: clean, disinfected, infected.
-file_list_1_scanner = 0:1:1:/usr/bin/clamdscan --fdpass --quiet %FILENAME+# NOTICE: clamdscan does not have the "disinfected" condition. 
 +file_list_1_scanner = 0:99:1:/usr/bin/clamdscan --fdpass --quiet %FILENAME
  
 # What policy to apply for each exit code, plus a catch-all default. # What policy to apply for each exit code, plus a catch-all default.
-file_list_1_policy  = unknown:save:save:unknown+file_list_1_policy  = unknown:unknown:save:unknown
  
  
Line 143: Line 146:
 msg_defanged = ANTIVIRUS msg_defanged = ANTIVIRUS
 </file> </file>
 +
 +Con la direttiva **file_list_1_scanner** si indica il programma filtro da chiamare - nel notro caso **clamdscan** con l'opzione **%%--fdpass%%** - e quali sono i codici di uscita per tre possibili esiti della scansione: **clean** (l'allegato è pulito), **disinfected** (l'allegato era infetto, ma è stato ripulito), **infected** (l'allegato è infetto). Nel caso di clamdscan vale solo l'**exit code 0** per un file **pulito** e l'**exit code 1** per un file **infetto**; non esistendo il caso **disinfected** si è indicato l'inesistente **exit code 99**.
 +
 +La politica da applicare a seguito della scansione è determinata da **file_list_1_policy**. Si devono indicare **quattro possibili azioni** di cui le prime tre corrispondo ai tre esiti della scansione (//clean//, //disinfected// e //infected//) e la quarta è l'azione predefinita.
 +
 +Ricapitolando questa è la politica applicata ai file compresi nella **file_list_1**:
 +
 +^ Esito scansione  ^ Clamdscan Exit Code  ^ Sanitizer Policy  ^
 +| Clean          |    0 | **unknown** (check the next policy).  |
 +| Disinfected    |  N/A | **unknown** (check the next policy).  |
 +| Infected          1 | **save** (remove the attachment from the message).  |
 +| Generic error  |    2 | **unknown** (check the next policy).  |
  
 ===== Cosa succede se clamd è fermo ===== ===== Cosa succede se clamd è fermo =====
doc/appunti/linux/sa/procmail_sanitizer_clamav.txt · Last modified: 2022/04/11 18:13 by niccolo