將文件發送到遠端 clamd 實例
我可能誤解瞭如何使用clamd。我的情況是,我的媒體伺服器功能不夠強大,無法掃描文件以及託管它正在執行的其他服務(樹莓派)。當我瀏覽 clamd.conf 和手冊頁時,似乎有一個選項可以讓 clamd 監聽指定的 IP 地址和套接字。有沒有辦法將文件從遠端文件伺服器流式傳輸到另一台執行 clamd 的機器上進行掃描?
我也遇到過這種“遠端蛤蜊掃描”,儘管它甚至在程式碼中指出
您必須使用本地套接字來掃描本地文件
(它也被設計為一次掃描一個文件,而不是一個很好的目錄)
儘管sandroid指出了類似的問題,但這裡已經提出了類似的問題
Clamd 坐下來聽取有關需要掃描哪些文件的指令,即它通過 TCP 接收的通信。我們需要知道它如何訪問要掃描的郵件文件…
那麼,clamd 不支持遠端文件掃描嗎?如果不是,那麼掃描遠端文件的最佳方法是什麼?我可以臨時對文件進行 rsync 並掃描它們,或者將 raspbian 配置為文件伺服器並將其安裝到我託管 clamd 服務的機器上。如果有更好的建議,將不勝感激。
我同意 jezzaaaa 的上述答案,您確實可以根據您的需要配置客戶端/伺服器。例如:
如果您希望 clamaV 作為將執行掃描並擷取受感染文件的伺服器,這裡是 Ubuntu 20.04 的配置…
伺服器端
# Install the 'daemon and freshclam' sudo apt remove -y clamav-daemon clamav-freshclam
在“/etc/clamav/clamd.conf”文件中添加選項“TCPSocket 3310”,使其可用於接收在埠 3310 上偵聽的請求。 完成,伺服器現在正在偵聽並等待請求。
客戶端
# Install the 'clamdscan', this will install other things, you can remove them sudo apt install -y clamdscan # Remove the extra from the client machine sudo apt remove -y clamav-daemon clamav-freshclam
添加選項
TCPAddr
和TCPSocket
(TCPAddr 1.2.3.4 TCPSocket 3310) 並從客戶端/etc/clamav/clamd.conf
文件中刪除 (LocalSocket)。客戶端測試
~$ clamdscan -v ~/infected-file.txt ~$ clamdscan -v ~/document-file.pdf
如果伺服器和客戶端機器可以通過埠 3310 進行通信,則輸出應記錄在您
clamav-daemon
正在執行的伺服器機器上。