Git Product home page Git Product logo

clamd-rest's Introduction

clamdscan via REST in single container

Abstraction

clamAV deamon, pattern update, REST endpoint with single container. inspired by https://github.com/uktrade/dit-clamav-rest

running

docker build -t <yourtag> . docker run -v <your volume>:/var/lib/clamav -e "AUTH_USER=user" -e "AUTH_PASSWORD=password" -p 8080:8080 <yourtag>

then, test by curl.

curl -X POST -u user:password -F "[email protected]" http://localhost:8080/scan

OK response is below.

{
  "reason": null,
  "time": 2.8135181999532506,
  "valid": true
}

NG response example is below.

{
  "reason": "Eicar-Test-Signature",
  "time": 0.003237200027797371,
  "valid": false
}

Volumes

I recomend to mount /var/lib/clamav directory as volume because ClamAV pattern files save at /var/lib/clamav.

ENV

  • AUTH_USER - user name for basic auth
  • AUTH_PASSWORD - user password for basic auth

Log

output to stdout.

update virus update

refleshclam command run at 0:00 UTC and 12:00 UTC . clamd check update every 4 hours.

If you want to change update term, change crontab and clamd.conf.

clamd-rest's People

Contributors

kencharos avatar

Watchers

 avatar James Cloos 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.