👾 Antivirus app for Nextcloud Files
Перейти к файлу
Robin Appelman 31e828ec89
Merge pull request #400 from nextcloud/release/5.6.1
chore(release): v5.6.1
2024-11-19 14:27:32 +01:00
.github
.tx
LICENSES
appinfo chore(release): v5.6.1 2024-11-19 10:01:17 +01:00
css
img
js
l10n Fix(l10n): Update translations from Transifex 2024-11-18 00:44:01 +00:00
lib Make notice instead of error message 2024-11-15 19:28:20 +01:00
screenshots
templates
tests fix: ignore files in appdata when counting unscanned files 2024-11-13 16:18:02 +01:00
.gitignore
.nextcloudignore
.php-cs-fixer.dist.php
.scrutinizer.yml
AUTHORS.md
CHANGELOG.md chore(release): v5.6.1 2024-11-19 10:01:17 +01:00
LICENSE
README.md
REUSE.toml
composer.json
composer.lock
krankerl.toml
psalm.xml

README.md

Nextcloud Antivirus for Files

REUSE status Build Status Scrutinizer Code Quality Code Coverage

files_antivirus is an antivirus app for Nextcloud using ClamAV or Kaspersky.

Features

  • 🐿️ When the user uploads a file, it's checked
  • ☣️ Infected files will be deleted and a notification will be shown and/or sent via email
  • 🔎 It runs a background job to scan all files
  • 🦺 It will block all uploads if the file cannot be checked to ensure all files are getting scanned.

Requirements

One of

  • ClamAV as binaries on the Nextcloud server
  • ClamAV running in daemon mode
  • Kaspersky Scan Engine running in HTTP mode
  • Any virus scanner supporting ICAP (ClamAV and Kaspersky are tested, others should work)

Install

Documentation about installing ClamAV and this app can be found in our documentation.

ClamAV Details

This app can be configured to work with the executable or the daemon mode (recommended ❤️) of ClamAV. If this is used in daemon mode, it can connect through network or local file-socket. In daemon mode, it sends files to a remote/local server using the INSTREAM command.

Kaspersky HTTP Details

When running Kaspersky in HTTP mode the SessionTimeout will need to be set to a value higher than default, a value of 10 minutes (600000 millisecond) or higher is recommended to properly deal with larger uploads

ICAP (version 5.0 and later)

The app support the ICAP protocol which is a standard supported by various antivirus software products.

Some additional configuration is required depending on the antivirus software used:

  • ICAP service: The name of the service the antivirus software expects
  • ICAP virus response header: The name of the header the antivirus software send the details of the detected virus in

ClamAV ICAP

  • ICAP service: avscan
  • ICAP virus response header: X-Infection-Found

Kaspersky ICAP

  • ICAP service: req
  • ICAP virus response header: X-Virus-ID

Additionally, the Kaspersky scan engine needs some additional configuration:

TLS Encryption

Using TLS encryption for the ICAP connection is supported, this requires the ICAP server to use a valid certificate. If the certificate isn't signed by a trusted certificate authority, you can import the certificate into Nextcloud's certificate bundle using

occ security:certificates:import /path/to/certificate