Check upload resources for viruses
Project description
ckanext-clamav
This is a basic example that helps to scan uploaded resources for malwares with clamd library.
Installation
Clamd library uses clamav tool, and you must install it into your environment, to make this extension work.
For example, to install ClamAV on Ubuntu:
-
Install ClamAV with APT
apt-get update apt-get install clamav clamav-daemon -y
-
Update the ClamAV signature database
systemctl stop clamav-freshclam freshclam systemctl start clamav-freshclam
To install ckanext-clamav:
-
Activate your CKAN virtual environment, for example:
. /usr/lib/ckan/default/bin/activate
-
Clone the source and install it on the virtualenv
git clone https://github.com/DataShades/ckanext-clamav.git cd ckanext-clamav pip install -e . pip install -r requirements.txt
-
Add
clamav
to theckan.plugins
setting in your CKAN config file (by default the config file is located at/etc/ckan/default/ckan.ini
). -
Restart CKAN. For example if you've deployed CKAN with Apache on Ubuntu:
sudo service apache2 reload
Config settings
# If your socket file is in different folder, you can specify it
# (optional, default: /var/run/clamav/clamd.ctl).
ckanext.clamav.socket_path = /your/path/to/socket.file
# You can decide to upload unscanned files or not.
# For example, if clamav is disabled, you won't be able to scan a file
# (optional, default: True).
ckanext.clamav.upload_unscanned = False
# ClamAV connection mechanism. There are two options: `tcp` or `unix`.
# If `tcp` selected, you must provide host:port (check next options).
# ( optional, default: unix)
ckanext.clamav.socket_type = unix
# TCP/IP hostname
ckanext.clamav.tcp.host = your.hostname.address
# TCP/IP port
ckanext.clamav.tcp.port = 3310
# ClamAV connection timeout. Either `tcp` or `unix`
# By default, there is no timeout.
# ( optional, default: 60)
ckanext.clamav.timeout = 120
Developer installation
To install ckanext-clamav for development, activate your CKAN virtualenv and do:
git clone https://github.com/DataShades/ckanext-clamav.git
cd ckanext-clamav
python setup.py develop
pip install -r dev-requirements.txt
Tests
To run the tests, do:
pytest --ckan-ini=test.ini
License
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ckanext_clamav-1.0.32.tar.gz
.
File metadata
- Download URL: ckanext_clamav-1.0.32.tar.gz
- Upload date:
- Size: 19.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a4e4c7c9c69a68bf9d24052b3178a00205faca57937a1afdc3f94de52ecf8a7a |
|
MD5 | 944e272090085f377f4849fed5a72519 |
|
BLAKE2b-256 | 838c6ad526a5a9bf6ae3d72da350600c6a6605f22a1a66f1d39c41ea0a883403 |
File details
Details for the file ckanext_clamav-1.0.32-py3-none-any.whl
.
File metadata
- Download URL: ckanext_clamav-1.0.32-py3-none-any.whl
- Upload date:
- Size: 19.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.8.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | dfee4c14ff0ca0e61d699dff9b7acae64c4aa568e02af13e9c9642a1299f50b4 |
|
MD5 | 47790d00b8ef35a5a79ce8625e39fc1e |
|
BLAKE2b-256 | 4ef1b497f96b5838c6fc7aad2bc9ff00312b89eea4eb4b9dce2655af1a4b363f |