Änderungen von Dokument ClamAV


Von Version 1.2
bearbeitet von fse
am 16.05.2022, 13:02
Änderungskommentar: Es gibt keinen Kommentar für diese Version
Auf Version 34.1
bearbeitet von fse
am 22.12.2022, 16:04
Änderungskommentar: Es gibt keinen Kommentar für diese Version

Zusammenfassung

Details

Seiteneigenschaften
Inhalt
... ... @@ -1,5 +1,165 @@
1 -[[**Plugin-Download**>>https://customer.formcycle.eu/index.php/apps/files/?dir=/FORMCYCLE%20-%20Plugins%20Customer/fc-plugin-malware-scanner/ClamAV&fileid=40404]]
1 +{{info}}
2 +{{version major="7" minor="0" patch="13" showInfo="true"}}
3 +Dieses Plugin kann nur mit {{formcycle/}} Version 7.0.13 oder höher verwendet werden.
4 +{{/version}}
5 +{{/info}}
2 2  
7 +[[**Plugin-Download**>>https://customer.formcycle.eu/index.php/apps/files/?dir=/FORMCYCLE%20-%20Plugins%20Customer/fc-plugin-malware-scanner/ClamAV&fileid=40404]] (erfordert Anmeldung)
8 +
3 3  {{content/}}
4 4  
11 +Mit dem kostenlosen //ClamAV//-Plugin für {{formcycle/}} besteht die Möglichkeit, hochgeladene Dateien auf Viren zu scannen. Hierfür stellt dieses Plugin eine Verbindung zu einem //ClamAV//-Daemon Service via TCP her.
5 5  
13 +== Funktionalität ==
14 +
15 +; Sofortiger Virenscan
16 +: Jede Datei wird direkt nach Ihrem Upload gescannt.
17 +
18 +Der verwendete //ClamAV//-Daemon Service kann weder durch dieses Plugin konfiguriert noch gestartet werden.
19 +
20 +== Installation ==
21 +
22 +Die Installation des Plugins ist über die dafür vorgesehene Verwaltungsoberfläche von Plugins durchzuführen. Hierbei muss lediglich die entsprechende //Jar//-Datei eingespielt werden.
23 +
24 +{{info}}
25 + Das //ClamAV//-Plugin scannt Dateien in Backend und Fronted. Um immer für alle Benutzer verfügbar zu sein, ist es ratsam, das Plugin als System-Plugin zu installieren. Dies umgeht auch mögliche Probleme mit doppelt belegten Ports und ermöglicht eine zentrale Konfiguration.
26 +{{/info}}
27 +
28 +== Konfiguration Plugin ==
29 +
30 +Nach dem Speichern wird automatisch ein Ping-Test durchgeführt. Falls dieser fehlschlägt wird eine entsprechende Meldung angezeigt. In diesem Fall werden alle Uploads im Backend oder im Formular als fehlerhaft markiert - das Plugin sollte erst einmal deaktiviert werden und eine funktionierende Verbindung aufgebaut werden.
31 +
32 +{{figure image="de_error.png" width="400"}}
33 + Falls keine Verbindung zu dem angegeben Host aufgebaut werden kann, wird diese Meldung ausgegeben.
34 +{{/figure}}
35 +
36 +Folgende Konfigurationsparameter gibt es:
37 +
38 +; host (Erforderlich)
39 +: Standardwert: //127.0.0.1//. Gibt die zu verwendende //IP//-Adresse des //ClamAV//-Daemon Service an. Der Standardwert ist //127.0.0.1// und verwendet damit einen lokalen //ClamAV//-Daemon Service.
40 +; port (Erforderlich)
41 +: Standardwert: //3310//. Gibt den zu verwendenden Port des //ClamAV//-Daemon Service an. Der Standardwert sollte nur geändert werden, falls dieser Port nicht zu Verfügung steht
42 +
43 +{{info}}
44 +//ClamAV// ist dafür gedacht, auf Linux basierten Servern zu laufen. Deswegen kann eine anderweitige Unterstützung unserseits nicht garantiert werden.
45 +{{/info}}
46 +
47 +== Konfiguration //ClamAV// ==
48 +
49 +Im folgenden Abschnitt wird auf Installation und Konfiguration von //ClamAV// eingegangen. Unser empfohlenes Szenario ist {{formcycle/}} und den //ClamAV//-Daemon Service auf dem selben Server zu installieren.
50 +
51 +=== Installation ===
52 +
53 +Um //ClamAV// auf einem Server zu installieren, sollten folgende Befehle auf dem Server eingegeben werden.
54 +
55 +//ClamAV// ist das Programm, welches Dateien auf Viren scannen kann und wird für die Verwendung von //ClamAV//-Daemon benötigt.
56 +
57 +; Aktualisieren der package list:
58 +; {{code language="shell"}} sudo apt-get update {{/code}}
59 +
60 +; Installiere //ClamAV// und //ClamAV//-Daemon:
61 +; {{code language="shell"}} sudo apt-get install clamav clamav-daemon -y {{/code}}
62 +
63 +=== Aktualisieren der Virensignatur-Datenbank ===
64 +
65 +//freshclam// wird mit //ClamAV// automatisch installiert und wird zum aktualisieren der Virensignatur Datenbank genutzt.
66 +
67 +; Beenden des automatischen //freshclam// Prozess:
68 +; {{code language="shell"}} sudo systemctl stop clamav-freshclam {{/code}}
69 +
70 +; Manuelles aktualisieren der Virensignatur Datenbank:
71 +; {{code language="shell"}} sudo freshclam {{/code}}
72 +
73 +=== Konfiguration //ClamAV//-Daemon ===
74 +
75 +//ClamAV//-Daemon ist der auf dem Server im Hintergrund laufende Prozess, welcher zum Virusscan angesprochen wird. Das geschieht via TCP und muss entprechend konfiguriert werden.
76 +
77 +Dafür soll die Konfigurationsdatei unter: // /etc/clamav/clamd.conf // angepasst werden.
78 +
79 +; Öffnen der Konfigurationsdatei:
80 +; {{code language="shell"}} sudo nano /etc/clamav/clamd.conf {{/code}}
81 +
82 +Mit den Pfeiltasten kann an das Ende der Datei navigiert werden.
83 +
84 +; Hinzufügen von //TCPAddr 127.0.0.1 //
85 +; Hinzufügen von //TCPSocket 3310 //
86 +
87 +{{lightbox image="en_clamd.conf.png"/}}
88 +
89 +; //ClamAV//-Daemon root Rechte geben
90 +: dafür muss in dieser Datei der Eintrag //User clamav// in //User root// geändert werden.
91 +
92 +Nun kann mit //Strg + X// gespeichert und beendet werden. Mit //Y// und der Enter-Taste bestätigen.
93 +
94 +=== Starten der //ClamAV//-Daemon Service ===
95 +
96 +Nun kann der Service gestartet werden.
97 +
98 +: Starten des //ClamAV//-Daemon Service:
99 +; {{code language="shell"}} sudo systemctl start clamav-daemon.service {{/code}}
100 +
101 +=== Prüfen der Verfügbarkeit des Service ===
102 +
103 +Damit dieses Plugin den //ClamAV//-Daemon Service ansprechen kann, muss der Service an der richtigen Stelle zuhören - in diesem Fall unter //127.0.0.1:3310//. Das kann im Terminal der Servers überprüft werden.
104 +
105 +; Mithilfe von //netstat// kann der TCP Socket vom //ClamAV//-Daemon Service untersucht werden.
106 +; {{code language="shell"}} sudo netstat -anp | grep -E "(clam)" {{/code}}
107 +
108 +{{lightbox image="de_tcp_test.png"/}}
109 +
110 +Falls keine Zeile beginnend mit //tcp// zu sehen ist oder eine abweichende //host:port// Kombination als //127.0.0.1:3310// zu erkennen ist, muss die Konfiguration erneut geprüft werden.
111 +
112 +== Beispielkonfiguration ==
113 +
114 +Ein beispielhafte Konfiguration mit den oben genannten Standardwerten:
115 +
116 +{{lightbox image="de_plugin.png"/}}
117 +
118 +== Verwendung ==
119 +
120 +Sobald eine Virensignatur erkannt wurde, ist folgende Meldung zu sehen:
121 +
122 +{{lightbox image="de_virus_found.png"/}}
123 +
124 +=== Testdatei ===
125 +
126 +Eine gängige Methode zur Überprüfung von Virenscannern ist die //eicar.com// Datei.
127 +An beliebiger Stelle kann diese Tastdatei hochgeladen werden und nach erfolgreicher Konfiguration ist die oben dargestellte Meldung zu sehen.
128 +
129 +; [[**Wikipedia**>>https://de.wikipedia.org/wiki/EICAR-Testdatei]]
130 +; [[**Download**>>https://www.eicar.org/download-anti-malware-testfile/]]
131 +
132 +=== Logging ===
133 +
134 +//ClamAV// erstellt logs, welche unter // /var/log/clamav/clamav.log // zu finden sind.
135 +
136 +: Nach dem hochladen der //eicar.com// Testdatei ist zum Beispiel folgender Eintrag in //clamav.log //zu sehen:
137 +; {{code language="shell"}} Wed May 25 10:10:21 2022 -> instream(127.0.0.1@32984): Win.Test.EICAR_HDB-1(44d88612fea8a8f36de82e1278abb02f:68) FOUND {{/code}}
138 +
139 +{{formcycle/}} logs sind hierfür unter // /formcycle-data/formcycle7/logs zu finden.//
140 +
141 +: Nach dem hochladen der //eicar.com// Testdatei ist zum Beispiel folgender Eintrag in //formcycle-errors-log //zu sehen:
142 +; {{code language="shell"}} [WARN] [25-05-22 10:10:21,192] [ajp-nio-127.0.0.1-8009-exec-43] (MalwareScanner.java:211) - Scanner <fc.plugin.malware.scanner.clamAV.ClamAntiVirusFileScanner@7b2a4953> detected malware signature for file </home/fc/tomcat9/tmp/xima-temp/formcycle7/xfc-malware-scan/stream-scan12705251110052849842/data2383296604287452271>: {stream=[Win.Test.EICAR_HDB-1]} {{/code}}
143 +; {{code language="shell"}} [ERROR] [25-05-22 10:10:21,207] [ajp-nio-127.0.0.1-8009-exec-43] (VirusScannerService.java:71) - Detected a virus {{/code}}
144 +
145 +== Versionshistorie ==
146 +
147 +=== Version 1.0.4
148 +
149 +* Fix: Ein Fehler beim Virenscan auf dem Frontend-Server wurde behoben.
150 +
151 +=== Version 1.0.3
152 +
153 +* Change: Das Plugin wird auch auf den Frontend-Server übertragen, wenn ein solcher verfügbar ist. Somit kann auch auf Frontend-Server nach Viren gesucht werden.
154 +
155 +=== Version 1.0.2
156 +
157 +* Entfernen: Eigenschaft für Pfad-Scanning, nur noch InputStream
158 +
159 +=== Version 1.0.1
160 +
161 +* Fix: Überspringen der Überprüfung, wenn das Betriebssystem nicht UNIX ist, anstatt die Datei als Virus zu erkennen
162 +
163 +=== Version 1.0.0
164 +
165 +* Initialer Release