skillfed

cvdupdate

ClamAV Private Database Mirror Updater Tool

cvdupdate v1.2.0 959.4K downloads/30d#4,638 on PyPI118
Permissive license Active released

What it is and what it does

cvdupdate is a command-line tool that automates downloading ClamAV virus definition databases and their associated CDIFF patch files from Cisco's official servers, replacing an older Perl script. It's designed to let you run your own private ClamAV database mirror on your network, which you can then serve to local FreshClam clients via HTTP instead of having every machine download directly from the public servers.

The tool uses DNS queries to check for new database versions before downloading, so repeated runs don't waste bandwidth. It stores databases and patches locally (by default in ~/.cvdupdate), rotates old patch files and logs automatically, and includes a built-in test HTTP server for quick validation. You can customize the database directory, nameserver, and logging behavior via a JSON config file, and integrate it into cron jobs or other automation for hands-off updates.

Use it for:

  • Set up a private ClamAV mirror on an internal network to reduce external bandwidth and centralize antivirus updates.
  • Automate daily or hourly database updates via cron, keeping your local mirror synchronized with Cisco's latest definitions.
  • Serve ClamAV databases to multiple FreshClam clients on your network from a single local HTTP endpoint.
  • Test database mirror configuration locally using the built-in test server before deploying to production.
  • Maintain an offline copy of ClamAV databases for air-gapped or restricted-network environments.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Downloads and maintains a local ClamAV antivirus database mirror, including patch files, for hosting your own update server.

Yes. If you operate a ClamAV deployment with multiple clients or restricted external network access, this tool is the standard way to host your own database mirror. It's actively maintained, has no known vulnerabilities, installs with low friction, and carries a permissive license. Not relevant for single-machine ClamAV setups that can reach the public servers directly.

Install

cvdupdate on PyPI

pip

pip install cvdupdate

uv

uv add cvdupdate

poetry

poetry add cvdupdate

Installing cvdupdate

Before you install

Low friction: pure Python wheel with seven common dependencies (click, colorlog, colorama, requests, dnspython, rangehttpserver, packaging). Active maintenance with recent commits and no known vulnerabilities.

License in practice

Apache 2.0 permissive license allows commercial and private use with minimal restrictions; suitable for enterprise deployment.

Quickstart

pip install cvdupdate
cvd config set --dbdir /path/to/databases
cvd update
cvd serve

Requires Python 3.6 or newer and an internet connection with DNS enabled.

Verify before relying

  • Whether the tool handles network interruptions gracefully during large database downloads.
  • Performance characteristics when serving databases to many concurrent FreshClam clients.
  • Whether custom database directory permissions are automatically managed.

Package facts

License not declared (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 7 — click, colorlog, colorama, requests, dnspython, rangehttpserver, packaging
Maintenance actively maintained — 315 days since the last release
Last repo commit
First released
Downloads 959,401/month — #4,638 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: cvdupdate-1.2.0-py3-none-any.whl

License :: OSI Approved :: Apache Software LicenseOperating System :: OS IndependentProgramming Language :: Python :: 3

Tags

clamav database mirrorantivirus database updaterclamav offline mirrorlocal virus definition serverclamav patch downloaderfreshclam database mirrorprivate clamav repository
antivirus-managementclamavmirror-hosting

More Utilities packages