I’m currently looking into integrating Discourse with our existing web systems to provide a discussion forum for our site’s users. One of the requirements of our platform is that all uploaded files are checked for viruses prior to being made available for anyone to download.
Looking through the documentation, I can’t see any way to configure Discourse to use a virus scanner on uploaded files. Am I missing something?
Dies wäre eine zusätzliche monatliche Gebühr für das Enterprise-Hosting. Möchten Sie diese Funktion hinzufügen? Falls ja, wenden Sie sich bitte an unsere Supportkanäle, um weitere Informationen zu erhalten.
Ich habe das gleiche Problem in meiner Organisation, aber wir sind nicht berechtigt, Enterprise-Hosting zu betreiben. Mir wurde mitgeteilt, dass die Seite abgeschaltet wird, wenn wir keine Lösung finden.
Wo werden die Dateien in Discourse hochgeladen, und könnte eine Installation auf AWS Antivirenprogramme nutzen, um diese Speicherorte in Echtzeit zu scannen?
Wenn das Scannen von Uploads erforderlich ist und Enterprise-Hosting keine Option ist, könnten Sie andere Hosting-Optionen in Betracht ziehen oder das Hochladen gefährlicher Dateitypen deaktivieren.
Müssen Sie JPGs und PNGs auf Viren scannen?
Das ist möglich, aber wenn Sie CDCK-Hosting nutzen, hätten Sie keine Kontrolle darüber.
Wenn die Uploads in einem S3-Bucket liegen, den Sie kontrollieren, könnten Sie dann AWS-Antivirensoftware verwenden, um Ihre Sicherheitsanforderungen zu erfüllen?
Die letzte Frage, die Sie gestellt haben, entspricht im Wesentlichen dem, was ich fragen wollte. Befindet sich also der /uploads-Ordner, in dem das Upload-Dateibaumverzeichnis liegt, im [persistenten?] Docker-Image, oder ist er als Volume eingebunden? Ich habe vergessen, wie die Dinge mit Docker funktionieren, und bin mir nicht sicher, wie Discourse Upload-Dateien speichert. Mein Systemadministrator erwägt die Installation von ClamAv, aber wir sind uns nicht sicher, ob dies nur auf unserer EC2-Instanz installiert werden muss oder ob es im Docker-Image selbst installiert werden muss (indem das Image bearbeitet wird, um ClamAv hinzuzufügen, und dann neu erstellt wird???).
Standardmäßig befindet es sich in einem Volume, das auf /var/discourse/shared/standalone im Host abbildet. Sie können Uploads auch an Objektspeicherdienste liefern, wie in der Konfiguration unter Verwendung von Objektspeicher für Uploads (S3 & Clones) erklärt.
Reicht es also, ClamAv im Betriebssystem der Instanz zu installieren und Dateien in /var/discourse/shared/ zu scannen? Muss es nicht tiefer integriert werden, also direkt im Docker-Image selbst?
Der exakte Pfad in einer Standardinstallation ist /var/discourse/shared/standalone/uploads/default/. Dieser wird im Container als Volume eingebunden, und dort werden alle hochgeladenen Dateien gespeichert.
Wenn dies die von Ihnen benötigten Compliance-Anforderungen erfüllt, können Sie es gerne so verwenden.
@Falco sorry, ich bin verwirrt. Kannst du bestätigen, dass ClamAV nicht innerhalb des Docker-Images, sondern nur auf dem EC2-Betriebssystem installiert werden muss? (Ich habe Docker schon eine Weile nicht mehr benutzt…)
Wir haben ein offizielles Antiviren-Plugin, das nur unseren Enterprise-Kunden im Rahmen unseres Hostings zur Verfügung steht. Die Konfiguration und Bereitstellung ist recht komplex; wir beabsichtigen nicht, es öffentlich auf Meta zu unterstützen.
Als gehosteter Enterprise-Kunde bieten wir diesen Service jedoch an.