web-dev-qa-db-ja.com

Debian 8:ClamAVがリッスンできないTCP 3310

Clamav-daemonをDebian 8システムで実行して、TCPポート3310でリッスンするようにします。次のようにしました。

aptitude install clamav-daemon

次に/etc/clamav/clamd.confを変更して、上部に次のようにしました。

# Added by me
TCPSocket 3310
TCPAddr localhost
# Already existed
LocalSocket /var/run/clamav/clamd.ctl
FixStaleSocket true
LocalSocketGroup clamav
LocalSocketMode 666

service clamav-daemon restartを使用してサービスを再起動しました。

netstat -tap | grep clamが何も返さないことがわかりました。 ps aux | grep clamを実行すると、次が返されます。

clamav   18559 11.4 10.3 649212 399604 ?       Ssl  14:38   0:15 /usr/sbin/clamd --foreground=true

以下を含む自動生成ファイル/etc/systemd/system/clamav-daemon.socket.d/extend.confがあります。

[Socket]
ListenStream=
SocketUser=clamav
ListenStream=/var/run/clamav/clamd.ctl
SocketGroup=clamav
SocketMode=666

私がログで見ることができる唯一のものは:

TCP: No tcp AF_INET/AF_INET6 SOCK_STREAM socket received from systemd

ClamAVをTCP:3310で実行するときに問題が発生する理由を誰かが知っていますか?

2
Doahh

上記の他の提案をすべて試しましたが、機能しませんでした。

ただし、dpkg-reconfigure clamav-daemonおよびTCP(UNIXではなく)初期の設定オプションで)を選択すると、Ubuntu 16.04で他のすべてのデフォルトが機能しました。

1
David Snopek

まず、clamavに関連するすべてのものを削除します。

apt-get purge clamav clamav-base clamav-daemon clamav-freshclam clamav-milter clamdscan clamassassin

次に、再インストールします。

apt-get install clamav clamav-base clamav-daemon clamav-freshclam clamav-milter clamdscan clamassassin

次に/etc/clamav/clamd.confに追加します

TCPSocket 3310
TCPAddr 127.0.0.1

-above-既存のLocalSocketエントリ。それ以外の場合はセットアップは行われますが、実行中にタイムアウトします。次に/etc/systemd/system/clamav-daemon.socket.d/extend.confに追加します

ListenStream=127.0.0.1:3310

下部に。これにより、Unixソケットは期待どおりに動作し、「init」をソケットへのコンジットとして使用して、ポート3310にリスナーを作成します。次に、サービスを再起動します。

service clamav-daemon restart

initがポート3310でリッスンしていることを確認します。

netstat -anp | grep 3310

次に、Thunderbirdのアドオンをテストします-> clamdrib->設定->テスト

1
Larry R. Irwin

私は今それを動かしていますが、Debian 7の場合のように構成するのにいいところはありません。

TCPまたはunixsocket(理由は不明))のいずれかのみを実行できますが、両方を実行することはできません。

/etc/systemd/system/clamav-daemon.socket.d/extend.conf

[Socket]
ListenStream=
SocketUser=clamav
ListenStream=3310

/etc/clamav/clamd.confには以下のみが含まれます:

TCPSocket 3310

uNIXソケット情報は含まれていません。これは削除されました:

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

次に、Exim4で使用するために、次のようにします。

av_scanner = clamd:127.0.0.1:local

そこではlocalhostを使用できませんでした。 127.0.0.1

1
Doahh

Ubuntu 16.04で何度もテストした後、動作しました。

  • ListenStream=内のすべての/lib/systemd/system/clamav-daemon.socketをコメント化します。それらをコメント化しないと、TCP: Received more than two file descriptors from systemdのようなエラーが発生し、clamavを開始できません。

  • ListenStream=に独自の/etc/systemd/system/clamav-daemon.socket.d/extend.conf行を追加します。複数のListenStream=(1つのソケット、1つのネットワークポート)は、次のようにサポートされています。

[Socket] ListenStream=/run/clamav/clamd.ctl ListenStream=xx.xx.xx.xx:3310 SocketUser=clamav SocketGroup=clamav RemoveOnStop=True

0
Zhang Huangbin

コメントするには十分な担当者がいません(私の解決策は別のディストリビューションにあるため)が、ubuntu 16.04のインストールでは、これは私にとってはうまくいきました:

clamav-daemon.socketを直接変更する:

[Socket]
ListenStream=/run/clamav/clamd.ctl
ListenStream=xx.xx.xx.xx:3310
SocketUser=clamav
SocketGroup=clamav
RemoveOnStop=True

それをextend.confに追加してもうまくいきませんでしたが、extend.confからすべてをコメントアウトしてリロードして再起動すると、両方でリッスンしました。

この変更の前に、@ Doahhと同じ問題を見ました

0
ekydfejj