Guide : Intégrer l’Antivirus ClamAV à Nextcloud

Pourquoi installer ClamAV sur Nextcloud ?

En ouvrant votre cloud à d’autres utilisateurs (famille, amis, clients), vous prenez le risque que quelqu’un téléverse un fichier infecté. ClamAV est un antivirus open source robuste qui va s’intégrer directement au moteur de Nextcloud. Dès qu’un fichier est uploadé, il est scanné silencieusement en arrière-plan. S’il est infecté, Nextcloud le bloque ou le supprime selon vos règles.

1. Installation de ClamAV et de son Daemon

Sur votre serveur Backend (celui qui héberge Nextcloud), nous allons installer le moteur de base et le « Daemon » (le service qui tourne en arrière-plan pour scanner rapidement sans se relancer à chaque fichier).

sudo apt update && sudo apt install clamav clamav-daemon -y

2. Première mise à jour des signatures virales

L’outil freshclam s’occupe de mettre à jour la base de données des virus. Il est souvent lancé automatiquement, mais pour la première installation, il vaut mieux forcer la mise à jour manuellement pour être sûr.

sudo systemctl stop clamav-freshclam
sudo freshclam
sudo systemctl start clamav-freshclam
sudo systemctl enable clamav-daemon clamav-freshclam

Note : Le premier téléchargement peut prendre une ou deux minutes, c’est tout à fait normal.

3. Le piège classique : Les permissions (Socket)

C’est ici que 90% des administrateurs bloquent. ClamAV tourne sous l’utilisateur clamav. Nextcloud tourne sous l’utilisateur web www-data. Pour qu’ils puissent se parler via le fichier socket local (plus rapide et sécurisé que le réseau), Nextcloud doit avoir la permission de parler à ClamAV.

Ajoutez l’utilisateur web au groupe clamav :

sudo usermod -aG clamav www-data

Redémarrez le daemon pour appliquer ce changement de droits :

sudo systemctl restart clamav-daemon

4. Installation de l’application dans Nextcloud

Maintenant que le moteur est prêt sur le serveur Linux, il faut dire à Nextcloud de l’utiliser. On peut le faire depuis l’interface web (Apps > Sécurité > Antivirus for files), mais on peut aussi le faire directement et proprement en ligne de commande :

sudo -u www-data php /var/www/nextcloud/occ app:install files_antivirus

5. Configuration finale dans l’interface Nextcloud

Connectez-vous à Nextcloud avec votre compte administrateur. Allez dans Paramètres > Administration > Sécurité. Descendez jusqu’à la section Antivirus for files.

Configurez les champs ainsi :

Champ Valeur à choisir
Mode ClamAV Choisissez Daemon (Socket). C’est la méthode la plus performante car le service tourne déjà en mémoire.
Socket (Chemin) /var/run/clamav/clamd.ctl (C’est le chemin par défaut sous Ubuntu)
Action en cas de fichier infecté Je recommande Fichier journal seulement pour les premiers jours (pour vérifier qu’il n’y a pas de faux positifs), puis de passer à Supprimer le fichier une fois que tout est stable.

Sauvegardez. Si vous voyez une petite coche verte « Enregistré » à côté du chemin du Socket, c’est que Nextcloud arrive parfaitement à communiquer avec votre antivirus !

6. Test du fonctionnement (Le fichier EICAR)

Comment être sûr que ça marche ? En utilisant le fichier EICAR. C’est un faux virus, inoffensif, créé spécialement pour tester les antivirus.

  • Créez un fichier texte sur votre ordinateur nommé eicar.txt.
  • Collez exactement cette chaîne de caractères à l’intérieur (sans espaces avant ni après) :
X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
  • Sauvegardez et essayez de l’uploader sur votre Nextcloud.

Si la configuration est bonne, Nextcloud va bloquer le transfert ou le supprimer instantanément, et vous verrez une alerte de sécurité. Félicitations, votre Cloud est désormais protégé !