And*_*ley 6 10.04 permissions clamav
不知道这里发生了什么。我已经安装了clamav
,clamav-freshclam
并clamav-daemon
在运行Ubuntu Desktop 10.04 LTS x64 的机器上运行自动扫描(使用 cron)。
不幸的是,clamdscan 拒绝扫描任何内容。这是我每次尝试时收到的输出:
root@uhs:/raid/Share/Public/# clamdscan -v /raid/Share/Public/
/raid/Share/Public: lstat() failed: Permission denied. ERROR
----------- SCAN SUMMARY -----------
Infected files: 0
Total errors: 1
Time: 0.004 sec (0 m 0 s)
root@uhs:/raid/Share/Public/#
Run Code Online (Sandbox Code Playgroud)
/raid/Share/Public
拥有 777 权限,并且 clamav-daemon 用户clamav
已添加到admin
和root
组。无论我尝试扫描什么文件或目录,我都会遇到同样的错误。
我什至运行dpkg-reconfigure clamav-base
并让守护程序用户root
查看是否有帮助(它没有帮助)。当然,我也经历service clamav-daemon restart
过所有这些变化。
我知道这个cat file_name | clamdscan -
选项,但我需要能够递归扫描整个目录,所以显然这行不通。
我究竟做错了什么?我可以使用 clamdscan 吗?
感谢您的任何帮助。
的输出sudo -u clamav stat /raid/Share/Public/
:
root@uhs:/raid/Share/Public# sudo -u clamav stat /raid/Share/Public/
File: `/raid/Share/Public/'
Size: 6 Blocks: 0 IO Block: 4096 directory
Device: 900h/2304d Inode: 54526208 Links: 2
Access: (0777/drwxrwxrwx) Uid: ( 1000/awensley) Gid: ( 120/ admin)
Access: 2011-01-19 01:00:00.304365306 -0600
Modify: 2011-01-18 22:47:06.793592673 -0600
Change: 2011-01-19 00:42:52.023813550 -0600
root@uhs:/raid/Share/Public#
Run Code Online (Sandbox Code Playgroud)
我在 5 台独立的 Ubuntu 10.04 机器上遇到了完全相同的问题;其中3台服务器。所以要么我遗漏了什么,要么这里有一个真正的问题。
我已将此作为错误报告提交到 Launchpad
在其他地方,我已经看到 AppArmor 或 SELinux 会导致 clamdscan 出现问题。
如果您运行sudo aa-complain clamd
并且重新扫描工作,那可能是您的问题。(请务必使用 重新启用它sudo aa-enforce clamd
。)
要暂时禁用我没有在 Ubuntu 上运行的 SELinux,您可以尝试
echo 0 > /selinux/enforce
. 如果您正在运行 SELinux,我们可以跟进。
更新:这是来自启动板的一个非常有趣的线程:https : //bugs.launchpad.net/ubuntu/+source/clamav/+bug/450250。我会按照 Jamie Strandboge 在那里的评论来消除 AppArmor 配置文件作为罪魁祸首。
如果这些不适用,我想到的 hack 是通过 tar 将目录传送到标准输出,然后将其输入 clamdscan(这是您提到的单个文件的变体)。我认为这看起来像:
tar -cvf --to-stdout /somedirectory | clamdscan -
Run Code Online (Sandbox Code Playgroud)
您应该能够从 Ubuntu Clamav 团队的 ppa 获得最新的 clamav 打包版本:https : //launchpad.net/~ubuntu-clamav/+archive/ppa
此外,来自ClamAV 站点:“如果您要提交错误报告,请始终对照最新的开发代码进行检查。” (假设您还没有这样做)您必须从他们的 Git 存储库中手动提取该代码并进行编译。
有关 Ubuntu 软件包的错误报告,请参阅 http://askubuntu.com...how-do-i-report-a-bug 。
========
需要注意的一件事是,据我所知,它是clamscan
而不是clamdscan
哪个应该在您的主目录中正常工作。
Ubuntu 通过默认打开 apparmor 可能会带来一些可能的复杂性(具有非常理想的安全性增强)。
(clamdscan 需要运行 clamav 守护进程——clamscan,更像是一个面向用户的临时包,不需要。使用 clamdscan/clamd 的附加功能,增加了复杂性开销。)
然而,与此clamdscan
相反,这篇文章中的错误中提到的错误和 apparmor 应该在当前包的时候得到纠正。
更新 尝试重现和解决
我认为我无法完全重现您的环境或控制用户错误(肯定是我的,也可能是您的),但是我已经在您拥有的相同版本的 clamav 下重现了我认为相同的问题。
此外,我已经从 git 存储库下载了最新的代码,编译并安装了它,但仍然存在问题。
我没有 SELinux,但我有 AppArmor。我是否正确地考虑了这一点?我不是 100%。不过,在关闭 AppArmor 后,我仍然收到权限被拒绝的错误。
========
归档时间: |
|
查看次数: |
9366 次 |
最近记录: |