... |
... |
@@ -1,36 +1,132 @@ |
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 |
|
5 |
|
-{{figure image="de_plugin.png" width="600"}} |
6 |
|
- Es muss ein TCP-Verbindung eingerichtet werden, um den Clam-Daemon Service zum scannen der hochgeladenen Dateien zu verwenden. |
7 |
|
-{{/figure}} |
|
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. |
8 |
8 |
|
9 |
|
-Es ist möglich, Hochgeladene Elemente im Backend sowie in ausgelieferten Formularen durch ClamAV auf Viren untersuchen zu lassen. Dazu wird dieses Plugin als aktiviertes System-Plugin benötigt sowie ein laufender Clam-Daemon Service der über TCP erreicht werden kann. |
|
13 |
+== Funktionalität == |
10 |
10 |
|
11 |
|
-Nachdem dieses Plugin installiert wurde, muss es konfiguriert werden. Die Konfiguration besteht daraus, dass angegeben wird, auf welche {{smallcaps}}host:port{{/smallcaps}} Kombination zugegriffen werden soll. Außerdem kann die Übertragung mit einem {{smallcaps}}InputStream{{/smallcaps}} geschehen oder es wird direkt auf dem Pfad gearbeitet. |
|
15 |
+; Sofortiger Virenscan |
|
16 |
+: Jede Datei wird direkt nach Ihrem Upload gescannt. |
12 |
12 |
|
13 |
|
-== Konfiguration == |
|
18 |
+Der verwendete //ClamAV//-Daemon Service kann weder durch dieses Plugin konfiguriert noch gestartet werden. |
14 |
14 |
|
15 |
|
-{{figure image="en_error.png" width="400"}} |
|
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. Es steht somit immer allen Benutzern zur Verfügung. Daher ist es anzuraten, das Plugin als System-Plugin zu installieren. Dies umgeht auch mögliche Probleme mit doppelt belegten Ports und ermöglicht eine zenztrale konfiguration. |
|
26 |
+{{/info}} |
|
27 |
+ |
|
28 |
+== Konfiguration Plugin == |
|
29 |
+ |
|
30 |
+//ClamAV// ist dafür gedacht, auf Linux basierten Servern zu laufen. Deswegen kann eine anderweitige Unterstützung unserseits nicht garantiert werden. |
|
31 |
+ |
|
32 |
+{{figure image="de_error.png" width="400"}} |
16 |
16 |
Falls keine Verbindung zu dem angegeben Host aufgebaut werden kann, wird diese Meldung ausgegeben. |
17 |
17 |
{{/figure}} |
18 |
18 |
|
19 |
|
-Folgende Konfigurationparameter gibt es: |
|
36 |
+Folgende Konfigurationsparameter gibt es: |
20 |
20 |
|
21 |
21 |
; host (Erforderlich) |
22 |
|
-: Host-Name oder IP-Adresse des Servers auf dem Clam-Daemon läuft, bzw. {{smallcaps}}127.0.0.1{{/smallcaps}} falls der Service auf dem gleichen Server wie {{formcycle/}} läuft. |
23 |
|
-; port |
24 |
|
-: Der Standard Port von Clam-Daemon ist {{smallcaps}}3310{{/smallcaps}}. Falls der Port abweichen sollten, so muss dieser hier angegeben werden. |
|
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 |
25 |
25 |
; file-source |
26 |
|
-: Standardmäßig wird das zu überprüfende Element per Javas {{smallcaps}}InputStream{{/smallcaps}} übertragen. Falls hier der Wert {{smallcaps}}path{{/smallcaps}} eingeben wird, wird direkt auf dem Pfad gearbeitet - wobei dafür der Clam-Daemon Prozess root Rechte besitzen muss. |
|
43 |
+: Wenn hier der Wert //stream// eingegeben wird (Standardwert), werden die Daten der zu überprüfenden Datei direkt an //ClamAV// übertragen. Falls hier der Wert //path// eingegeben wird, wird direkt auf dem Pfad gearbeitet - wobei dafür der //ClamAV//-Daemon Service root Rechte besitzen muss. |
27 |
27 |
|
28 |
28 |
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. |
29 |
29 |
|
30 |
|
-== ClamAV Einstellungen == |
|
47 |
+== Konfiguration //ClamAV// == |
31 |
31 |
|
32 |
|
-Im folgenden Abschnitt wird auf wichtige Konfigurationsschritte von Clam-Daemon eingegangen. In diesem Szenario in {{formcycle/}} auf einem Debian basierten Server installiert und auf selbigen System läuft der Clam-Daemon Service. |
|
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. |
33 |
33 |
|
34 |
|
-Da das eigentliche Virusscanning losgelöst von {{formcycle/}} stattfindet, sollte auf eine aktulle Virensignatur-Datenbank geachtet werden via {{smallcaps}}freshclam{{/smallcaps}} |
|
51 |
+=== Installation === |
35 |
35 |
|
36 |
|
-Dieses Plugin überträgt die zu untersuchenden Elemente via TCP, was standardmäßig in Clam-Daemon deaktiviert ist. Zur Aktivierung muss die Konfigurationsdatei unter: {{smallcaps}}/etc/clamav/clamd.conf{{/smallcaps}} bearbeitet werden. |
|
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 |
+ |
|
62 |
+{{code language="shell"}} sudo apt-get install clamav clamav-daemon -y {{/code}} |
|
63 |
+ |
|
64 |
+=== Aktualisieren der Virensignatur-Datenbank === |
|
65 |
+ |
|
66 |
+//freshclam// wird mit //ClamAV// automatisch installiert und wird zum aktualisieren der Virensignatur Datenbank genutzt. |
|
67 |
+ |
|
68 |
+: Beenden des automatischen //freshclam// Prozess: |
|
69 |
+; {{code language="shell"}} sudo systemctl stop clamav-freshclam {{/code}} |
|
70 |
+ |
|
71 |
+: Manuelles aktualisieren der Virensignatur Datenabank: |
|
72 |
+; {{code language="shell"}} sudo freshclam {{/code}} |
|
73 |
+ |
|
74 |
+=== Konfiguration //ClamAV//-Daemon === |
|
75 |
+ |
|
76 |
+//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. |
|
77 |
+ |
|
78 |
+Dafür soll die Konfigurationsdatei unter: // /etc/clamav/clamd.conf // angepasst werden. |
|
79 |
+ |
|
80 |
+: Öffnen der Konfigurationsdatei: |
|
81 |
+; {{code language="shell"}} sudo nano /etc/clamav/clamd.conf {{/code}} |
|
82 |
+ |
|
83 |
+Mit den Pfeiltasten kann an das Ende der Datei navigiert werden. |
|
84 |
+ |
|
85 |
+: Hinzufügen von //TCPAddr 127.0.0.1 // |
|
86 |
+: Hinzufügen von //TCPSocket 3310 // |
|
87 |
+ |
|
88 |
+{{lightbox image="en_clamd.conf.png"/}} |
|
89 |
+ |
|
90 |
+Um //ClamAV//-Daemon root Rechte zu geben, muss man in dieser Datei den Eintrag //User clamav// in //User root// ändern. |
|
91 |
+ |
|
92 |
+Nun kann mit //Strg + X// gespeichert und beendet werden. Mit //Y// unter 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 |
+ |
|
102 |
+{{figure image="de_tcp_test.png"}} |
|
103 |
+ Mithilfe von //netstat// kann der TCP Socket vom //ClamAV//-Daemon Service untersucht werden. |
|
104 |
+{{/figure}} |
|
105 |
+ |
|
106 |
+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 durch folgenden Befehl im Terminal überprüft werden: |
|
107 |
+ |
|
108 |
+{{code language="shell"}} |
|
109 |
+sudo netstat -anp | grep -E "(clam)" |
|
110 |
+{{/code}} |
|
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 |
+== Versionshistorie == |
|
125 |
+ |
|
126 |
+**Version 1.0.1** |
|
127 |
+ |
|
128 |
+* Optimierungen für Installation auf Server-Cluster |
|
129 |
+ |
|
130 |
+**Version 1.0.0** |
|
131 |
+ |
|
132 |
+* Initialer Release |