ClamD:无法更改插座位置

ClamD:无法更改插座位置

Ubuntu 20.04.2
ClamAV 0.102.4

我想对 ClamD 的 LocalSocket 指令使用不同的值,但一直出现以下错误:

!LOCAL: Socket file /var/run/clamd.scan/clamd.sock could not be bound: Permission denied

/etc/clamav/clamd.conf 中的默认值为:

LocalSocket /var/run/clamav/clamd.ctl
FixStaleSocket true
LocalSocketGroup clamav
LocalSocketMode 666
User clamav

我将 LocalSocket 值更改为:

LocalSocket /var/run/clamd.scan/clamd.sock
FixStaleSocket true
LocalSocketGroup clamav
LocalSocketMode 666
User clamav

然后创建新目录并设置权限和所有权。与可以创建套接字文件的 /var/run/clamav/ 相匹配。

mkdir /var/run/clamd.scan
chown clamav:root /var/run/clamd.scan/
chmod 755 /var/run/clamd.scan/

重新启动 Clam 并收到上面的“权限被拒绝”错误

systemctl restart clamav-daemon && systemctl status clamav-daemon.service

目录所有权和权限相同:

drwxr-xr-x  2 clamav   root         40 Feb 26 18:52 clamav/
drwxr-xr-x  2 clamav   root         60 Feb 26 19:12 clamd.scan/

我尝试暂时将权限更改/var/run/clamd.scan/为 777,但重新启动 clamd 后仍然出现相同的错误。

如果我尝试,我可以以 clamav 用户身份在该目录中创建一个文件:

su - clamav -s /bin/bash -c "cd /var/run/clamd.scan && touch clamd.sock"

所以我不明白为什么我会收到“权限被拒绝”的消息。有什么建议吗?我肯定漏掉了什么。

答案1

我遇到了与您类似的问题:全新安装后,clamd 无法充分使用其套接字,并且在我手动启动它时发出抱怨:

$ sudo clamd
!LOCAL: Socket file /var/run/clamav/clamd.ctl could not be removed: Permission denied

(我不确定这是启动 clamd 的正确方法,但仍然)因此我将权限设置如下:

drwxrwxr-x  2 root   clamav   60 mars  21 09:49 clamav
srw-rw-rw-  1 clamav clamav    0 mars  21 09:51 clamd.ctl

然后sudo clamd返回而没有任何错误消息,所以 clamd 已启动!

我对其他人对此套接字具有 rw 权限的想法感到不安,但是如果我删除它们,则在启动它时,clamd 会将它们再次设置回来......

我希望它能有所帮助!

相关内容