{"id":22700191,"url":"https://github.com/simp/pupmod-simp-clamav","last_synced_at":"2025-04-13T05:53:28.042Z","repository":{"id":32298679,"uuid":"35873639","full_name":"simp/pupmod-simp-clamav","owner":"simp","description":"The SIMP clamav Puppet Module","archived":false,"fork":false,"pushed_at":"2024-08-20T19:52:57.000Z","size":235,"stargazers_count":2,"open_issues_count":4,"forks_count":17,"subscribers_count":16,"default_branch":"master","last_synced_at":"2025-04-13T05:53:22.924Z","etag":null,"topics":["puppet","simp"],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/simp.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2015-05-19T09:49:33.000Z","updated_at":"2024-07-11T21:05:21.000Z","dependencies_parsed_at":"2022-07-25T18:22:25.532Z","dependency_job_id":"b5685417-230a-4bd0-8ff7-e313e5c49410","html_url":"https://github.com/simp/pupmod-simp-clamav","commit_stats":{"total_commits":70,"total_committers":12,"mean_commits":5.833333333333333,"dds":0.5714285714285714,"last_synced_commit":"19359e868ad822f656bb89407ea17ec9f9fd603e"},"previous_names":[],"tags_count":17,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simp%2Fpupmod-simp-clamav","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simp%2Fpupmod-simp-clamav/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simp%2Fpupmod-simp-clamav/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/simp%2Fpupmod-simp-clamav/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/simp","download_url":"https://codeload.github.com/simp/pupmod-simp-clamav/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248670503,"owners_count":21142901,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["puppet","simp"],"created_at":"2024-12-10T06:10:23.357Z","updated_at":"2025-04-13T05:53:28.016Z","avatar_url":"https://github.com/simp.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![License](https://img.shields.io/:license-apache-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0.html)\n[![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/73/badge)](https://bestpractices.coreinfrastructure.org/projects/73)\n[![Puppet Forge](https://img.shields.io/puppetforge/v/simp/clamav.svg)](https://forge.puppetlabs.com/simp/clamav)\n[![Puppet Forge Downloads](https://img.shields.io/puppetforge/dt/simp/clamav.svg)](https://forge.puppetlabs.com/simp/clamav)\n[![Build Status](https://travis-ci.org/simp/pupmod-simp-clamav.svg)](https://travis-ci.org/simp/pupmod-simp-clamav)\n\n## This is a SIMP module\n\nThis module is a component of the [System Integrity Management Platform](https://simp-project.com),\na compliance-management framework built on Puppet.\n\nIf you find any issues, they can be submitted to our [JIRA](https://simp-project.atlassian.net/).\n\nPlease read our [Contribution Guide](https://simp.readthedocs.io/en/stable/contributors_guide/index.html).\n\n#### Table of Contents\n\n\u003c!-- vim-markdown-toc GFM --\u003e\n\n* [Description](#description)\n* [This is a SIMP module](#this-is-a-simp-module)\n* [Using clamav](#using-clamav)\n  * [Enabling updates](#enabling-updates)\n    * [freshclam](#freshclam)\n    * [rsync](#rsync)\n      * [Client side](#client-side)\n      * [Server side](#server-side)\n* [Limitations](#limitations)\n* [Development](#development)\n  * [Acceptance tests](#acceptance-tests)\n\n\u003c!-- vim-markdown-toc --\u003e\n\n## Description\n\nThis module provides an interface to the installation and management of ClamAV.\n\nSee [REFERENCE.md](./REFERENCE.md) for API documentation.\n\n## This is a SIMP module\n\nThis module is a component of the [System Integrity Management Platform](https://simp-project.com),\na compliance-management framework built on Puppet.\n\nIf you find any issues, they can be submitted to our [JIRA](https://simp-project.atlassian.net/).\n\nPlease read our [Contribution Guide](https://simp.readthedocs.io/en/stable/contributors_guide/index.html)\n\nThis module is optimally designed for use within a larger SIMP ecosystem, but\nit can be used independently:\n\n  * When included within the SIMP ecosystem, security compliance settings will\n    be managed from the Puppet server.\n\n  * If used independently, all SIMP-managed security subsystems are disabled by\n    default and must be explicitly opted into by administrators.  Please review\n    the `simp-simp_options` module for details.  These catalysts are used by\n    SIMP to allow users to override default behavior of classes that are\n    included by default.\n\n**NOTE:**\n\n* SIMP's `clamav` class was removed from the default class list in all SIMP\n  scenarios in SIMP 6.5.  Users of SIMP 6.5 or later must manually add `clamav`\n  to the class list or include it via a manifest.\n\n* Because of the SIMP 6.5 clamav change, SIMP's `simp_options::clamav` catalyst\n  has been deprecated and will be removed in a future release.  In the interim,\n  the catalyst is still used as a wrapper for this module for backwards\n  compatibility.  Therefore, you must have `simp_options::clamav` undefined or set\n  to `true` for this module to do anything.\n\n* Setting the SIMP catalyst, `simp_options::clamav`, to `false` does *not* uninstall\n  ClamAV, it simply prevents this module from doing anything.  See the\n  ``Using clamav`` section below for how to remove ClamAV from the system.\n\n## Using clamav\n\nThis module can be used to add or remove clamav from a system.\n\nTo manage ClamAV with this module:\n\n```puppet\ninclude clamav\n```\n\nBy default this module will install ClamAV and set up a cron\nto do a scan.\n\n\nTo remove ClamAV from the system set the following via Hiera:\n\n```yaml\n---\nclamav::enable: false\n```\n\n### Enabling updates\n\nGenerally, your updates will be provided by an upstream package repository,\nsuch as EPEL. However, there are two optional methods for enabling DAT file\nupdates.\n\n#### freshclam\n\nTo enable the `freshclam` update system, set the following via Hiera:\n\n```yaml\n---\nclamav::enable_freshclam: true\n```\n\nNOTE: No additional configuration of `freshclam` is currently supported. To\nupdate the configuration file, you will need to create your own `File`\nresource.\n\n#### rsync\n\nYou may choose to enable `rsync` downloads of the DAT files from a SIMP `rsync`\nserver. The module defaults are already set to support this configuration.\n\n##### Client side\n\nAdd the following to Hiera to enable `rsync` downloads:\n\n```yaml\n---\nclamav::enable_data_rsync: true\n```\n\n##### Server side\n\nTo add DAT files to the server, you should place them in\n`/var/simp/environments/\u003cenvironment\u003e/rsync/Global/clamav` and ensure that the\npermissions are set to `409:409`.\n\n\n## Limitations\n\nSIMP Puppet modules are generally intended for use on Red Hat Enterprise Linux\nand compatible distributions, such as CentOS. Please see the [`metadata.json` file](./metadata.json)\nfor the most up-to-date list of supported operating systems, Puppet versions,\nand module dependencies.\n\n\n## Development\n\nPlease see the [SIMP Contribution Guidelines](https://simp.readthedocs.io/en/stable/contributors_guide/index.html).\n\n\n### Acceptance tests\n\nThis module includes [Beaker](https://github.com/puppetlabs/beaker) acceptance\ntests using the SIMP [Beaker Helpers](https://github.com/simp/rubygem-simp-beaker-helpers).\nBy default the tests use [Vagrant](https://www.vagrantup.com/) with\n[VirtualBox](https://www.virtualbox.org) as a back-end; Vagrant and VirtualBox\nmust both be installed to run these tests without modification. To execute the\ntests run the following:\n\n```shell\nbundle install\nbundle exec rake beaker:suites\n```\n\nPlease refer to the [SIMP Beaker Helpers documentation](https://github.com/simp/rubygem-simp-beaker-helpers/blob/master/README.md)\nfor more information.\n\nSome environment variables may be useful:\n\n```shell\nBEAKER_debug=true\nBEAKER_provision=no\nBEAKER_destroy=no\nBEAKER_use_fixtures_dir_for_modules=yes\n```\n\n* `BEAKER_debug`: show the commands being run on the STU and their output.\n* `BEAKER_destroy=no`: prevent the machine destruction after the tests finish so you can inspect the state.\n* `BEAKER_provision=no`: prevent the machine from being recreated. This can save a lot of time while you're writing the tests.\n* `BEAKER_use_fixtures_dir_for_modules=yes`: cause all module dependencies to be loaded from the `spec/fixtures/modules` directory, based on the contents of `.fixtures.yml`.  The contents of this directory are usually populated by `bundle exec rake spec_prep`.  This can be used to run acceptance tests to run on isolated networks.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimp%2Fpupmod-simp-clamav","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsimp%2Fpupmod-simp-clamav","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsimp%2Fpupmod-simp-clamav/lists"}