La solution antivirus non graphique ClamAV pour Mac OS X
J'ai écrit ceci comme une alternative gratuite à l'excellent ClamXav. MacClam met en place une surveillance des répertoires en temps réel et planifie des analyses périodiques. Il utilise ClamAV comme moteur antivirus et fswatch pour surveiller activement les répertoires à la recherche de fichiers nouveaux ou modifiés, qui sont ensuite envoyés à clamd pour analyse. Des analyses complètes périodiques sont planifiées avec cron. Il fournit également un moyen d'analyser des fichiers ou des répertoires individuels à la demande à partir de la ligne de commande.
J'ai testé MacClam sur Mojave (macOS 10.14). mais cela peut également fonctionner dans d'autres versions de macOS.
Vous aurez besoin des outils de ligne de commande Xcode d'Apple qui peuvent être installés avec
xcode-select --install
Cliquez ensuite sur "Installer". Après avoir installé les outils de ligne de commande, si vous êtes sur Mojave, vous devrez également installer le package d'en-têtes macOS avec
sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /
L'installation est très simple. Après avoir installé les outils prérequis, tapez ce qui suit dans un terminal.
curl -O https://raw.githubusercontent.com/killdash9/MacClam/master/MacClam.sh chmod +x MacClam.sh ./MacClam.sh
Cela démarrera MacClam en créant les dernières versions de ClamAV et fswatch à partir des sources. Il planifiera une analyse complète du système de fichiers une fois par semaine et mettra à jour les signatures une fois par jour. Il configure également une surveillance en direct pour les répertoires $HOME et /Applications. Chacune de ces choses peut être configurée en modifiant les variables du script et en réexécutant le script.
Par défaut, le répertoire d'installation est ~/MacClam
. Ce répertoire contient toutes les sources, les binaires, les fichiers journaux et le dossier de quarantaine. Le seul artefact de l'installation en dehors de ce répertoire est la crontab et le script MacClam.sh
lui-même, qui sont nécessaires au fonctionnement de MacClam. Si vous souhaitez déplacer le script MacClam.sh
vers un autre emplacement, réexécutez-le simplement à partir du nouvel emplacement et les références crontab seront mises à jour. Il peut être totalement désinstallé en exécutant ./MacClam.sh uninstall
.
./MacClam.sh
effectue les opérations suivantes :
Construit clamd et fswatch à partir des sources si nécessaire
Configure des mises à jour régulières des signatures et des analyses complètes dans crontab
Mises à jour des signatures
Démarre les services de surveillance active clamd et fswatch s'ils ne sont pas déjà en cours d'exécution
Définit la surveillance active pour qu'elle s'exécute au démarrage (également effectuée dans crontab)
S'il est exécuté à partir d'un terminal, il affichera toute activité d'analyse en cours
La commande suivante
./MacClam.sh /path/file_or_directory ...
fait tout ce qui est répertorié précédemment, puis exécute clamscan sur les fichiers ou répertoires. Plusieurs fichiers ou répertoires peuvent être spécifiés.
./MacClam.sh quarantine
Ouvre le dossier de quarantaine dans le Finder. Par défaut, c'est ~/MacClam/quarantine
./MacClam.sh help
Affiche un message d'aide.
./MacClam.sh uninstall
Désinstalle MacClam. Plus précisément, il arrête clamd et fswatch. Il supprime les entrées MacClam de la crontab. Il déplace le répertoire de quarantaine du répertoire d'installation de MacClam vers ~/MacClam_quarantine, juste au cas où vous voudriez quelque chose dedans. Il supprime le répertoire d'installation de MacClam qui contient clamav et fswatch. Il ne supprime pas le fichier MacClam.sh et vous pouvez réinstaller MacClam en l'exécutant à nouveau.
Les analyses planifiées, la surveillance et l'emplacement d'installation peuvent être configurés en modifiant les variables de configuration au début du script, puis en exécutant à nouveau le script pour appliquer vos modifications.
MacClam.sh est conçu pour avoir une interface très simple : une seule commande pour tout faire. Il est idempotent, ce qui signifie que réexécuter MacClam.sh ne fera rien si tout est correctement configuré et que les services fonctionnent. S'il y a des modifications dans les variables de configuration, il s'assurera qu'elles sont appliquées et redémarrera les services si nécessaire.
MacClam effectue trois types d'analyses :
Surveillance active : MacClam surveillera l'activité de tous les répertoires que vous spécifiez. Lorsqu'un fichier est modifié ou créé, il sera immédiatement analysé. Par défaut, les répertoires $HOME et Applications sont surveillés.
Analyse programmée : MacClam effectuera des analyses récursives des répertoires à des heures programmées. Par défaut, l'intégralité du disque dur est analysé une fois par semaine. La planification se fait avec cron.
Analyse à la demande : l'exécution MacClam.sh
avec un ou plusieurs arguments de fichier ou de répertoire analysera les fichiers ou répertoires spécifiés.
Dans tous les cas, lorsqu'un virus est détecté, il est déplacé vers le dossier de quarantaine. Pour une surveillance active, lorsqu'un virus est identifié, une brève notification graphique s'affiche dans le coin supérieur droit.