GithubHelp home page GithubHelp logo

isabella232 / mattermost-plugin-antivirus Goto Github PK

View Code? Open in Web Editor NEW

This project forked from mattermost/mattermost-plugin-antivirus

0.0 0.0 0.0 3.93 MB

Antivirus plugin for scanning files uploaded to Mattermost

License: Apache License 2.0

Makefile 37.68% Go 62.32%

mattermost-plugin-antivirus's Introduction

Mattermost Antivirus Plugin

CircleCI branch Code Coverage Release HW

Maintainer: @iomodo Co-Maintainer: @hanzei

This plugin allows the forwarding of uploaded files to an antivirus scanning application and prevents the upload from completing if there is a virus detected in the file. Use it to prevent users from inadvertently spreading malware or viruses via your Mattermost instance.

Currently the plugin supports ClamAV anti-virus software across browser, Desktop Apps and the Mobile Apps. ClamAV is an open source (GPL) anti-virus engine used in a variety of situations including email scanning, web scanning, and end point security. It provides a number of utilities including a tool for automatic database updates. A ClamAV server can be easily provisioned as a Docker container that runs alongside Mattermost.

Requirements:

  • Mattermost Server Version: 5.2+
  • ClamAV Server access

Installation

  1. Go to the releases page of this Github repository and download the latest release for your Mattermost server.

  2. In the Mattermost System Console under System Console > Plugins > Plugin Management upload the file to install the plugin. To learn more about how to upload a plugin, see the documentation.

  3. Install ClamAV (clamd) for virus scanning. One easy option is to provision a ClamAV container with Docker by running the following command. Assuming you have already installed Docker, this will download and install the latest version of ClamAV and set up a server with an open port at 3310: and MaxFileSize of 50 MB. Mattermost's MaxFileSize default value is subject to change. To ensure that the correct value is set, verify your value at the following link: Maximum File Size.

    docker run -e CLAMD_CONF_MaxFileSize=50M -d -p 3310:3310 mkodockx/docker-clamav
    
  4. Once clamd server is running, configure the plugin to make requests to your clamd instance. Go to System Console > Plugins > Antivirus and configure Clamav Host and Port to point at your clamd instance.

  5. Activate the plugin at System Console > Plugins > Management and ensure it starts with no errors.

Testing

To test your configuration is correct, create an EICAR test file (copy the text from that webpage into a text file editor and save it) and upload it. The file should be rejected as below:

Screenshot of Anti-virus in action

Upload a regular file to ensure it is processed successfully and posted to the channel.

If there is an error with your setup - check your ClamAV server setup and communication:

Screenshot of Anti-virus plugin showing a server error

mattermost-plugin-antivirus's People

Contributors

aaronrothschild avatar anidok avatar cpanato avatar crspeller avatar francois-d avatar hanzei avatar jasonblais avatar jfrerich avatar justinegeffen avatar levb avatar mickmister avatar nathanaelhoun avatar sibasankarnayak avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.