Почему ClamAV не может сканировать некоторые файлы?
Всякий раз, когда я пытаюсь выполнить сканирование ClamAV для файла во многих из моих bin
каталоги, это не удается с
Не удается открыть файл или каталог ОШИБКА
сообщение. Я знаю, что можно заставить ClamdScan сканировать bin
каталог, но я не могу понять, как. Какие-либо предложения?
$ clamdscan /bin/true
/bin/true: Can't open file or directory ERROR
----------- SCAN SUMMARY -----------
Infected files: 0
Total errors: 1
Time: 0.000 sec (0 m 0 s)
Я не могу найти никаких различий между AppArmor
конфигурационные файлы на машине, где она работает, и на машине, где она не работает. Я получил его для сканирования с обходным путем, добавив:
/bin/** r,
чтобы:
/etc/apparmor.d/local/usr.sbin.clamd
Но эта строка отсутствует на локальном компьютере другой машины. clamd
AppArmor
файл разрешений, так что я все еще в замешательстве и такое решение о дробовике просто сказать ClamAV
может получить доступ ко всему в /bin
и ниже в основном потому, что если это решение, то я должен добавить /sbin
/usr/bin
а также /usr/sbin
в AppArmor
также, и это только кажется нелогичным.
2 ответа
Это был AppArmor, не позволяющий мне получить доступ к бину. Я изменился:
/etc/apparmor.d/local/usr.sbin.clamd
добавляя:
/bin/** r,
К нему и удалось отсканировать файлы в / bin. Если я хочу добавить другие каталоги, мне нужно просто добавить строки в этот файл, чтобы включить их. Строка AppArmor выше означает / bin и все дочерние папки, рекурсивно, с доступом только для чтения, и это все, что нужно ClamAV. Данный файл является директивой AppArmor для получения специальных разрешений / usr / sbin / clamd, которые являются демоном службы ClamAV. Так что это было все, что мне нужно было сделать, чтобы это заработало. Спасибо @Ramhound за подсказку!
У меня возникли проблемы при сканировании импортированной файловой системы NFS, например /data/nfs/dir1/file.jpg.
clamdscan /data/nfs/dir1/file.jpg: Can't open file or directory ERROR
Добавление «/data/nfs/* r» в файл /etc/apparmor.d/local/usr.sbin.clamd мне не помогло. Запускapparmor_status
показывает, что процесс clamd находится в принудительном режиме:
2 processes are in enforce mode.
/usr/bin/freshclam (18572)
/usr/sbin/clamd (18677)
Итак, я установил пакет apparmor-utils и настроил процесс clamd как жалобу:
aa-complain /usr/sbin/clamd
Затем мне удалось отсканировать файл
clamdscan /data/nfs/dir1/file.jpg
/data/nfs/dir1/file.jpg: OK