Documentation sur le logiciel SYMPA

Ceci est une ancienne révision du document !


Installation de l'antivirus clamav pour les dossiers partagés

Documentations

Installation

Sur redhat 6

# wget https://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
# yum install epel-release-6-8.noarch.rpm
        remplacer https par http au niveau de mirrorlist
# yum install pcre-devel
# yum install clamav

Version : 0.99

Configuration

Groupe

clam 491

User

clam:x:494:491:Clam Anti Virus Checker:/var/lib/clamav:/sbin/nologin

Fichier de configuration

  • /etc/freshclam.conf : vérifier que
# Example
UpdateLogFile /var/log/clamav/freshclam.log    # chemin au fichier journal
LogTime yes                                    # horodatage du journal à décommenter
DatabaseMirror db.fr.clamav.net                # pointer sur le serveur français de mises à jour  
DatabaseMirror database.clamav.net             # tout en gardant la directive en secours sur la ligne suivante)

Logs

# cd /var/log/clamav
# touch freshclam.log
# chmod 600 freshclam.log
# chown clam:clam  freshclam.log
# cd /etc/logrotate.d/
# vi freshclam 
    /var/log/clamav/freshclam.log {
        rotate 4
        weekly
        compress
        delaycompress
        create 600 clam clam
        }

Bases anti-virales

Télécharger mise à jour

# freshclam

Automatiser dans un cron à 7h30

## mise a jour bases anti-virales clamav
30 7 * * * /usr/bin/freshclam --quiet  

Test

# vi eicar.com

# clamscan eicar.com

eicar.com: Eicar-Test-Signature FOUND

----------- SCAN SUMMARY -----------
Known viruses: 3800473
Engine version: 0.98.7
Scanned directories: 0
Scanned files: 1
Infected files: 1
Data scanned: 0.00 MB
Data read: 0.00 MB (ratio 0.00:1)
Time: 8.895 sec (0 m 8 s)

Vérifier des répertoires

# clamscan -r /home/sympa/list-data

Script pour automatiser par cron à 8h30, 12h30, 18h30, 22h30, 2h30

## verification dossier avec clamav
30 8 * * * /usr/local/SCRIPTS/clamav/clamav_dossier.pl 

/usr/local/SCRIPTS/clamav/clamav_dossier.pl

#!/usr/bin/perl -w
#
# /usr/local/SCRIPTS/clamav/clamav_dossier.pl
#
# 05/01/06
#
########################################################################
#
#   scanner un dossier avec clamav
#
########################################################################
#

use strict;
use warnings;
use File::Copy;
use Time::Local;
use POSIX qw(strftime);
use Sys::Hostname;

my $host = hostname;
my $datescan = strftime "%Y%m%d", localtime;

my $REP = "/home/sympa/list_data/\*/\*/shared" ;:q

my $fich1 = "/usr/local/SCRIPTS/clamav/scan.log" ;
my $fich2 = "/usr/local/SCRIPTS/clamav/pbscan"."$datescan" ;
my $admin = "catherine.balleydier\@grenoble-inp.fr" ;

my $commande1 = "clamscan -r $REP > $fich1" ;
system ($commande1) ;

open (FICH1,"$fich1") ||die "probleme fichier";
my @CONFIG = <FICH1> ;
close (FICH1);

if ("@CONFIG" !~ /Infected files: 0/ )
{
   open (FICH2,">$fich2") ||die "probleme fichier";
   my $ligne ;
   foreach $ligne (@CONFIG)
   {
      if ( $ligne !~ /: OK/ )
      {
      chomp $ligne ;
      print FICH2 "$ligne\n" ;
      }
   }
   close (FICH2);
   my $commande2 = "mailx -s \"fichiers infectes sur $host\" $admin < $fich2" ;
   system ($commande2) ;

# chmod 700 clamav_dossier.pl

Logrotate de scan

Créer sous /etc/logrotate.d : resul-clamav

/usr/local/SCRIPTS/clamav/scan.log
{    
    missingok
    compress
    notifempty
    daily
    rotate 30    
}