我在 Azure 上有两个位于同一子网中的 VM。一个 VM (10.1.0.6) 运行 clamav 守护程序,另一个运行 Java Wildfly 应用程序 (10.1.0.5)。
我想将文件从 Java 应用程序发送到 clam av 守护程序。
我检查了 Clamav 是否正在运行并在端口 3310 上侦听:
netstat -ant|grep 3310
tcp 0 0 127.0.0.1:3310 0.0.0.0:* LISTEN
netstat -lnp | grep clam
(Not all processes could be identified, non-owned process info
will not be shown, you would have to be root to see it all.)
unix 2 [ ACC ] STREAM LISTENING 800631 -
/var/run/clamav/clamd.ctl
对于 Clam Av 服务器,在虚拟专用网络中打开了所有入站端口。但是,如果我在 java 服务器上检查端口是否可以通过 telnet 或 nc 使用,我会得到:
telnet 10.1.0.6 3310
Trying 10.1.0.6...
telnet: Unable to connect to remote host: Connection refused
nc -vz 10.1.0.6 3310
nc: connect to 10.1.0.6 port 3310 (tcp) failed: Connection refused
如果我通过 Java 应用程序发送文件,我会得到同样的错误。
我的 clamav 设置是否正确,这个问题是否与我的子网配置有关?
谢谢你的帮助!
问题是守护程序正在侦听环回 IP 地址 (127.0.0.1)。我不得不切换这是听 10.1.0.6 (0.0.0.0 也应该工作)。
添加在
/etc/clamav/clamd.conf
:添加在
/etc/systemd/system/clamav-daemon.service.d/extend.conf
重新启动守护程序,现在它正在工作!