clamd: Unterschied zwischen den Versionen

Aus Mikiwiki
Wechseln zu: Navigation, Suche
(Konfiguration)
 
(7 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
 
Der [[Daemon]] <b>clamd</b> aus dem Antivirenprogramm [[Clamav]] wartet nach seinem Start standardmässig auf Port 3310 darauf, dass ein anderes Programm mit ihm kommuniziert. Er dient als Grundlage für den Einsatz von Drittprogrammen. Zusatzmodule (sogenannte "third party addons") eröffnen zusätzlich viele Möglichkeiten, Clamav in E-Mail- und Dateirechnern sowie Proxys und Webrechnern einzubinden.
 
Der [[Daemon]] <b>clamd</b> aus dem Antivirenprogramm [[Clamav]] wartet nach seinem Start standardmässig auf Port 3310 darauf, dass ein anderes Programm mit ihm kommuniziert. Er dient als Grundlage für den Einsatz von Drittprogrammen. Zusatzmodule (sogenannte "third party addons") eröffnen zusätzlich viele Möglichkeiten, Clamav in E-Mail- und Dateirechnern sowie Proxys und Webrechnern einzubinden.
 +
 +
clamd kann in den Betriebsmodi lokal oder Netzwerk laufen - die Modi unterscheiden sich dadurch, dass der Daemon-Prozess entweder an einem [[Socket]] oder an einem [[Port]] lauscht.
  
 
== Konfiguration ==
 
== Konfiguration ==
  
Die Konfigurationsdatei "/etc/clamd.conf" (Ubuntu 8.04: "/etc/clamav/clamd.conf") ist für das Start- und Laufverhalten von clamd verantwortlich.
+
Die Konfigurationsdatei "/etc/clamd.conf" (Ubuntu 8.04: "/etc/clamav/clamd.conf") ist für das Start- und Laufverhalten von clamd verantwortlich. Unter Ubuntu 8.04 kann die Konfiguration auch durch Aufruf von "sudo dpkg-reconfigure clamav-base" erfolgen.
  
 
{| class=wiki
 
{| class=wiki
Zeile 10: Zeile 12:
 
| <tt>LogSyslog true</tt> || Protokollierung der Arbeit von clamd.
 
| <tt>LogSyslog true</tt> || Protokollierung der Arbeit von clamd.
 
|-
 
|-
| <tt>LogFile /var/log/clamav/clamav.log</tt> || Festlegen der Logdatei für clamd (hier "/var/log/clamav/clamav.log").
+
| <tt>LogFile /var/log/clamav/clamav.log</tt> || Festlegen der Protokolldatei für clamd (hier "/var/log/clamav/clamav.log").
 
|-
 
|-
| <tt>LogFile-MaxSize 2M</tt> || Maximalgrösse der Logdatei (hier 2 MB).
+
| <tt>LogFile-MaxSize 2M</tt> || Höchstgrösse der Protokolldatei (hier 2 MB).
 
|-
 
|-
| <tt>LogTime true</tt> || In der Logdatei steht vor den Einträgen die jeweilige Uhrzeit.
+
| <tt>LogTime true</tt> || In der Protokolldatei steht vor den Einträgen die jeweilige Uhrzeit.
 
|-
 
|-
 
| <tt>DatabaseDirectory /var/lib/clamav</tt> || Verzeichnis der von clamd verwendeten Virensignatur-Datenbank (hier "/var/lib/clamav").
 
| <tt>DatabaseDirectory /var/lib/clamav</tt> || Verzeichnis der von clamd verwendeten Virensignatur-Datenbank (hier "/var/lib/clamav").
 +
|-
 +
| <tt>ScanArchive true</tt> || Auch gepackte Archivdateien werden geprüft.
 +
|-
 +
| <tt>ScanRAR true</tt> || Auch gepackte [[RAR]]-Archivdateien werden geprüft.
 +
|-
 +
| <tt>ArchiveMaxFileSize 2M</tt> || Höchstgrösse einer zu prüfenden Datei in einer gepackten Archivdatei (hier 2 MB) - dieser Schalter schützt das System vor [[Archivbomben]].
 +
|-
 +
| <tt>StreamMaxLength 5M</tt> || Höchstgrösse einer zu prüfenden Datei (hier 5 MB). Die Höchstgrösse sollte 100 MB nicht übersteigen, um die Rechnerperformance nicht zu sehr zu beeinträchtigen.
 +
|-
 +
| <tt>ArchiveBlockEncrypted true</tt> || Eine passwortgeschützte Archivdatei wird als Schadprogramm betrachtet, da clamd eine solche ohnehin nicht prüfen kann.
 +
|-
 +
| <tt>User clamav</tt> || clamd wird als Benutzer "clamav" gestartet. Damit clamd mit sämtlichen Addons korrekt zusammenarbeitet, muss er als Benutzer "root" gestartet werden, der Eintrag muss dann also lauten "User root".
 
|}
 
|}
  
== Verwendung ==
+
Zur Aktivierung des lokalen Socket-Betriebsmodus werden die Parameter "TCPSocket" und "TCPAddr" auskommentiert und der Parameter "LocalSocket <i>/path/to/file</i>" hinzugefügt (bei älteren Versionen lautet der Eintrag "socket name = <i>/path/to/file</i>"). Da Clamav den Socket als Datei erstellt, muss das diese Datei enthaltende Verzeichnis für alle Benutzer les- und schreibbar sein, damit andere Programme darauf zugreifen können. Zu diesem Zweck wird beispielsweise im Verzeichnis "/var/run" das Unterverzeichnis "clamscan" angelegt und letzteres mit "chmod 777 clamscan" für alle les- und schreibbar gemacht.
 +
 
 +
Zum Test der Funktion von clamd kann die [http://www.eicar.org/anti_virus_test_file.htm Eicar-Testdatei] verwendet werden, welche von praktisch allen Antivirenprogrammen als Schadprogramm erkannt wird, jedoch ausser einer Signatur keinerlei Schadcode enthält. Folgt dem Aufruf von [[clamdscan]] die Meldung "Eicar-Test-Signature FOUND", so arbeitet clamd korrekt.
  
Starten des Daemons freshclam.
+
$ <b>clamdscan - < eicar.com</b>
 +
stream: Eicar-Test-Signature FOUND
 +
 +
----------- SCAN SUMMARY -----------
 +
Infected files: 1
 +
Time: 2.506 sec (0 m 2 s)
  
$ <b>sudo /etc/init.d/freshclam start</b>
+
Bei aktivierter Protokollierung findet sich auch ein entsprechender Hinweis in der Protokolldatei:
bzw. (Ubuntu 8.04)
 
$ <b>sudo /etc/init.d/clamav-freshclam start</b>
 
  
Um die Virendatenbank händisch zu aktualisieren genügt folgender Befehl. Die Bildschirmausgabe zeigt dann die Aktualität der Datenbank, welche die Virensignaturen im Verzeichnis "/var/lib/clamav" speichert. Neben den Virensignaturen bedürfen aber auch die Programme einer regelmässigen Aktualisierung - Clamav prüft die Aktualität bei jedem Start einer Komponente und gibt die Meldung "WARNING: Your ClamAV installation is OUTDATED!" aus, falls eine neuere Version zum Herunterladen bereitsteht. Die offiziellen Ubuntu-Quellen stellen nicht immer die aktuellste Clamav-Version bereit - wird diese benötigt, so muss Clamav aus den Quellen kompiliert werden. Die Virensignaturen sind jedoch auch für die älteren Versionen identisch, der Einsatz einer "älteren" Version ist also nicht zwangsläufig sicherheitskritisch.
+
Mon Aug  3 13:55:19 2009 -> stream(127.0.0.1@1199): Eicar-Test-Signature FOUND
  
$ <b>sudo freshclam</b>
+
Was mit als Schadprogrammen erkannten Dateien geschieht, entscheiden letztlich aisschliesslich die kommunizierenden Anwendungsprogramme (z. B. [[clamdscan]]). Normalerweise sind das Vermittler zwischen Netzwerkdiensten (z. B. Mailserver, Fileserver, Proxy, FTP-Server) und clamd.
ClamAV update process started at Sun Aug  2 18:41:13 2009
 
WARNING: Your ClamAV installation is OUTDATED!
 
WARNING: Local version: 0.94.2 Recommended version: 0.95.2
 
<nowiki>DON'T PANIC! Read http://www.clamav.net/support/faq</nowiki>
 
main.cld is up to date (version: 51, sigs: 545035, f-level: 42, builder: sven)
 
daily.cvd is up to date (version: 9643, sigs: 62083, f-level: 43, builder: mcichosz)
 
  
  

Aktuelle Version vom 6. August 2011, 18:13 Uhr

Der Daemon clamd aus dem Antivirenprogramm Clamav wartet nach seinem Start standardmässig auf Port 3310 darauf, dass ein anderes Programm mit ihm kommuniziert. Er dient als Grundlage für den Einsatz von Drittprogrammen. Zusatzmodule (sogenannte "third party addons") eröffnen zusätzlich viele Möglichkeiten, Clamav in E-Mail- und Dateirechnern sowie Proxys und Webrechnern einzubinden.

clamd kann in den Betriebsmodi lokal oder Netzwerk laufen - die Modi unterscheiden sich dadurch, dass der Daemon-Prozess entweder an einem Socket oder an einem Port lauscht.

Konfiguration

Die Konfigurationsdatei "/etc/clamd.conf" (Ubuntu 8.04: "/etc/clamav/clamd.conf") ist für das Start- und Laufverhalten von clamd verantwortlich. Unter Ubuntu 8.04 kann die Konfiguration auch durch Aufruf von "sudo dpkg-reconfigure clamav-base" erfolgen.

Parameter Beschreibung
LogSyslog true Protokollierung der Arbeit von clamd.
LogFile /var/log/clamav/clamav.log Festlegen der Protokolldatei für clamd (hier "/var/log/clamav/clamav.log").
LogFile-MaxSize 2M Höchstgrösse der Protokolldatei (hier 2 MB).
LogTime true In der Protokolldatei steht vor den Einträgen die jeweilige Uhrzeit.
DatabaseDirectory /var/lib/clamav Verzeichnis der von clamd verwendeten Virensignatur-Datenbank (hier "/var/lib/clamav").
ScanArchive true Auch gepackte Archivdateien werden geprüft.
ScanRAR true Auch gepackte RAR-Archivdateien werden geprüft.
ArchiveMaxFileSize 2M Höchstgrösse einer zu prüfenden Datei in einer gepackten Archivdatei (hier 2 MB) - dieser Schalter schützt das System vor Archivbomben.
StreamMaxLength 5M Höchstgrösse einer zu prüfenden Datei (hier 5 MB). Die Höchstgrösse sollte 100 MB nicht übersteigen, um die Rechnerperformance nicht zu sehr zu beeinträchtigen.
ArchiveBlockEncrypted true Eine passwortgeschützte Archivdatei wird als Schadprogramm betrachtet, da clamd eine solche ohnehin nicht prüfen kann.
User clamav clamd wird als Benutzer "clamav" gestartet. Damit clamd mit sämtlichen Addons korrekt zusammenarbeitet, muss er als Benutzer "root" gestartet werden, der Eintrag muss dann also lauten "User root".

Zur Aktivierung des lokalen Socket-Betriebsmodus werden die Parameter "TCPSocket" und "TCPAddr" auskommentiert und der Parameter "LocalSocket /path/to/file" hinzugefügt (bei älteren Versionen lautet der Eintrag "socket name = /path/to/file"). Da Clamav den Socket als Datei erstellt, muss das diese Datei enthaltende Verzeichnis für alle Benutzer les- und schreibbar sein, damit andere Programme darauf zugreifen können. Zu diesem Zweck wird beispielsweise im Verzeichnis "/var/run" das Unterverzeichnis "clamscan" angelegt und letzteres mit "chmod 777 clamscan" für alle les- und schreibbar gemacht.

Zum Test der Funktion von clamd kann die Eicar-Testdatei verwendet werden, welche von praktisch allen Antivirenprogrammen als Schadprogramm erkannt wird, jedoch ausser einer Signatur keinerlei Schadcode enthält. Folgt dem Aufruf von clamdscan die Meldung "Eicar-Test-Signature FOUND", so arbeitet clamd korrekt.

$ clamdscan - < eicar.com
stream: Eicar-Test-Signature FOUND

----------- SCAN SUMMARY -----------
Infected files: 1
Time: 2.506 sec (0 m 2 s)

Bei aktivierter Protokollierung findet sich auch ein entsprechender Hinweis in der Protokolldatei:

Mon Aug  3 13:55:19 2009 -> stream(127.0.0.1@1199): Eicar-Test-Signature FOUND

Was mit als Schadprogrammen erkannten Dateien geschieht, entscheiden letztlich aisschliesslich die kommunizierenden Anwendungsprogramme (z. B. clamdscan). Normalerweise sind das Vermittler zwischen Netzwerkdiensten (z. B. Mailserver, Fileserver, Proxy, FTP-Server) und clamd.