| ... | 
        ... | 
                @@ -1,36 +1,128 @@ | 
      
              
                    | 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//-Daemon 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//-Daemon auf einem Server zu installieren, sollten folgende Befehle auf dem Server eingegeben werden. | 
        
              
                     | 
          54 | 
          + | 
        
              
                     | 
          55 | 
          +: Aktualisieren der package list: | 
        
              
                     | 
          56 | 
          +; {{code language="shell"}} sudo apt-get update {{/code}} | 
        
              
                     | 
          57 | 
          + | 
        
              
                     | 
          58 | 
          +: Installiere //ClamAV// und //ClamAV//-Daemon: | 
        
              
                     | 
          59 | 
          +; {{code language="shell"}} sudo apt-get install clamav clamav-daemon -y {{/code}} | 
        
              
                     | 
          60 | 
          + | 
        
              
                     | 
          61 | 
          +=== Aktualisieren der Virensignatur-Datenbank === | 
        
              
                     | 
          62 | 
          + | 
        
              
                     | 
          63 | 
          +//freshclam// wird mit //ClamAV// automatisch installiert und wird zum aktualisieren der Virensignatur Datenbank genutzt. | 
        
              
                     | 
          64 | 
          + | 
        
              
                     | 
          65 | 
          +: Beenden des automatischen //freshclam// Prozess: | 
        
              
                     | 
          66 | 
          +; {{code language="shell"}} sudo systemctl stop clamav-freshclam {{/code}} | 
        
              
                     | 
          67 | 
          + | 
        
              
                     | 
          68 | 
          +: Manuelles aktualisieren der Virensignatur Datenabank: | 
        
              
                     | 
          69 | 
          +; {{code language="shell"}} sudo freshclam {{/code}} | 
        
              
                     | 
          70 | 
          + | 
        
              
                     | 
          71 | 
          +=== Konfiguration //ClamAV//-Daemon | 
        
              
                     | 
          72 | 
          + | 
        
              
                     | 
          73 | 
          +//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. | 
        
              
                     | 
          74 | 
          + | 
        
              
                     | 
          75 | 
          +Dafür soll die Konfigurationsdatei unter: // /etc/clamav/clamd.conf // angepasst werden. | 
        
              
                     | 
          76 | 
          + | 
        
              
                     | 
          77 | 
          +: Öffnen der Konfigurationsdatei: | 
        
              
                     | 
          78 | 
          +; {{code language="shell"}} sudo nano /etc/clamav/clamd.conf {{/code}} | 
        
              
                     | 
          79 | 
          + | 
        
              
                     | 
          80 | 
          +: Hinzufügen von //TCPAddr 127.0.0.1 // | 
        
              
                     | 
          81 | 
          +: Hinzufügen von //TCPSocket 3310 // | 
        
              
                     | 
          82 | 
          + | 
        
              
                     | 
          83 | 
          +{{lightbox image="en_clamd.conf.png" /}} | 
        
              
                     | 
          84 | 
          + | 
        
              
                     | 
          85 | 
          +Da das eigentliche Virusscanning losgelöst von {{formcycle/}} stattfindet, sollte auf eine aktulle Virensignatur-Datenbank geachtet werden via //freshclam//. | 
        
              
                     | 
          86 | 
          + | 
        
              
                     | 
          87 | 
          +Dieses Plugin überträgt die zu untersuchenden Elemente via TCP, was standardmäßig in //ClamAV//-Daemon deaktiviert ist. Zur Aktivierung muss die Konfigurationsdatei unter: // /etc/clamav/clamd.conf // bearbeitet werden. | 
        
              
                     | 
          88 | 
          + | 
        
              
                     | 
          89 | 
          +Folgende Parameter müssen der Datei hinzugefügt werden: | 
        
              
                     | 
          90 | 
          + | 
        
              
                     | 
          91 | 
          +; TCPAddr (Erforderlich) | 
        
              
                     | 
          92 | 
          +: Soll hinzugefügt und mit dem Wert //127.0.0.1// angegeben werden. | 
        
              
                     | 
          93 | 
          +; TCPSocket (Erforderlich) | 
        
              
                     | 
          94 | 
          +: Soll hinzugefügt und mit dem Wert //3310// angegeben werden oder abweichend, falls der Port anderweitig genutzt werden soll. | 
        
              
                     | 
          95 | 
          +; User | 
        
              
                     | 
          96 | 
          +: Ist standardmäßig //clamav// und muss zu //root// geändert werden, um dem //ClamAV//-Daemon Service root Rechte zu geben. | 
        
              
                     | 
          97 | 
          + | 
        
              
                     | 
          98 | 
          +{{figure image="de_tcp_test.png"}} | 
        
              
                     | 
          99 | 
          +  Mithilfe von //netstat// kann der TCP Socket vom //ClamAV//-Daemon Service untersucht werden. | 
        
              
                     | 
          100 | 
          +{{/figure}} | 
        
              
                     | 
          101 | 
          + | 
        
              
                     | 
          102 | 
          +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: | 
        
              
                     | 
          103 | 
          + | 
        
              
                     | 
          104 | 
          +{{code language="shell"}} | 
        
              
                     | 
          105 | 
          +sudo netstat -anp | grep -E "(clam)" | 
        
              
                     | 
          106 | 
          +{{/code}} | 
        
              
                     | 
          107 | 
          + | 
        
              
                     | 
          108 | 
          +== Beispielkonfiguration == | 
        
              
                     | 
          109 | 
          + | 
        
              
                     | 
          110 | 
          +Ein beispielhafte Konfiguration mit den oben genannten Standardwerten: | 
        
              
                     | 
          111 | 
          + | 
        
              
                     | 
          112 | 
          +{{lightbox image="de_plugin.png" /}} | 
        
              
                     | 
          113 | 
          + | 
        
              
                     | 
          114 | 
          +== Verwendung == | 
        
              
                     | 
          115 | 
          + | 
        
              
                     | 
          116 | 
          +Sobald eine Virensignatur erkannt wurde, ist folgende Meldung zu sehen: | 
        
              
                     | 
          117 | 
          + | 
        
              
                     | 
          118 | 
          +{{lightbox image="de_virus_found.png" /}} | 
        
              
                     | 
          119 | 
          + | 
        
              
                     | 
          120 | 
          +== Versionshistorie == | 
        
              
                     | 
          121 | 
          + | 
        
              
                     | 
          122 | 
          +**Version 1.0.1** | 
        
              
                     | 
          123 | 
          + | 
        
              
                     | 
          124 | 
          +* Optimierungen für Installation auf Server-Cluster | 
        
              
                     | 
          125 | 
          + | 
        
              
                     | 
          126 | 
          +**Version 1.0.0** | 
        
              
                     | 
          127 | 
          + | 
        
              
                     | 
          128 | 
          +* Initialer Release |