A solução antivírus não gráfica ClamAV para Mac OS X
Escrevi isso como uma alternativa gratuita ao excelente ClamXav. MacClam configura monitoramento de diretório em tempo real e agenda verificações periódicas. Ele usa o ClamAV como um mecanismo antivírus e o fswatch para monitorar ativamente os diretórios em busca de arquivos novos ou alterados, que são então enviados ao clamd para verificação. Verificações completas periódicas são agendadas com o cron. Ele também fornece uma maneira de verificar arquivos ou diretórios individuais sob demanda na linha de comando.
Testei o MacClam no Mojave (macOS 10.14). mas também pode funcionar em outras versões do macOS.
Você precisará ter as ferramentas de linha de comando Xcode da Apple que podem ser instaladas com
xcode-select --install
Em seguida, clique em "Instalar". Depois de instalar as ferramentas de linha de comando, se estiver no Mojave, você também precisará instalar o pacote de cabeçalhos do macOS com
sudo installer -pkg /Library/Developer/CommandLineTools/Packages/macOS_SDK_headers_for_macOS_10.14.pkg -target /
A instalação é muito simples. Após instalar as ferramentas de pré-requisito, digite o seguinte em um terminal.
curl -O https://raw.githubusercontent.com/killdash9/MacClam/master/MacClam.sh chmod +x MacClam.sh ./MacClam.sh
Isso inicializará o MacClam construindo as versões mais recentes do ClamAV e do fswatch a partir do código-fonte. Ele agendará uma verificação completa do sistema de arquivos uma vez por semana e atualizará as assinaturas uma vez por dia. Ele também configura o monitoramento ao vivo para os diretórios $HOME e /Applications. Cada uma dessas coisas pode ser configurada modificando variáveis de script e executando novamente o script.
Por padrão, o diretório de instalação é ~/MacClam
. Este diretório contém todas as fontes, binários, arquivos de log e pasta de quarentena. O único artefato da instalação fora deste diretório é o crontab e o próprio script MacClam.sh
, que é necessário para o funcionamento do MacClam. Se você deseja mover o script MacClam.sh
para outro local, basta executá-lo novamente no novo local e as referências do crontab serão atualizadas. Ele pode ser totalmente desinstalado executando ./MacClam.sh uninstall
.
./MacClam.sh
faz o seguinte:
Compila clamd e fswatch a partir do código-fonte, se necessário
Configura atualizações regulares de assinatura e verificações completas no crontab
Atualiza assinaturas clamd
Inicia os serviços de monitoramento ativo clamd e fswatch se ainda não estiverem em execução
Define o monitoramento ativo para ser executado na inicialização (também feito no crontab)
Se executado a partir de um terminal, mostrará qualquer atividade de verificação atual
O seguinte comando
./MacClam.sh /path/file_or_directory ...
faz tudo listado anteriormente e, em seguida, executa o clamscan nos arquivos ou diretórios. Vários arquivos ou diretórios podem ser especificados.
./MacClam.sh quarantine
Abre a pasta de quarentena no Finder. Por padrão, é ~/MacClam/quarantine
./MacClam.sh help
Exibe uma mensagem de ajuda.
./MacClam.sh uninstall
Desinstala o MacClam. Mais especificamente, ele interrompe clamd e fswatch. Remove entradas MacClam do crontab. Ele move o diretório de quarentena do diretório de instalação do MacClam para ~/MacClam_quarantine, caso haja algo que você queira. Ele exclui o diretório de instalação do MacClam que contém clamav e fswatch. Ele não exclui o arquivo MacClam.sh e você pode reinstalar o MacClam executando-o novamente.
As verificações agendadas, o monitoramento e o local de instalação podem ser configurados editando as variáveis de configuração no início do script e, em seguida, executando o script novamente para aplicar suas alterações.
MacClam.sh foi projetado para ter uma interface muito simples – um comando para fazer tudo. É idempotente, o que significa que a nova execução do MacClam.sh não fará nada se tudo estiver configurado corretamente e os serviços estiverem em execução. Se houver alterações nas variáveis de configuração, ele garantirá que sejam aplicadas e reiniciará os serviços conforme necessário.
MacClam realiza três tipos de varreduras:
Monitoramento ativo: MacClam monitorará todos os diretórios que você especificar para atividade. Quando um arquivo é alterado ou criado, ele será verificado imediatamente. Por padrão, os diretórios $HOME e Applications são monitorados.
Verificação agendada: MacClam realizará verificações recursivas de diretórios em horários programados. Por padrão, todo o disco rígido é verificado uma vez por semana. O agendamento é feito com cron.
Verificação sob demanda: Executar MacClam.sh
com um ou mais argumentos de arquivo ou diretório verificará os arquivos ou diretórios especificados.
Em todos os casos, quando um vírus é encontrado, ele é movido para a pasta de quarentena. Para monitoramento ativo, quando um vírus é identificado, uma breve notificação gráfica é mostrada no canto superior direito.