Customize Consent Preferences

We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.

The cookies that are categorized as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site. ... 

Always Active

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

No cookies to display.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

No cookies to display.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

No cookies to display.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

No cookies to display.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

No cookies to display.

Añadir antivirus Clamav para analizar archivos y entornos Docker, usando un Docker Compose

Tiempo de lectura: 3 minutos

ClamAV es un programa de código abierto diseñado para detectar virus, malware y otras amenazas en sistemas operativos Unix y Linux. Su nombre es una abreviatura de «Clam Antivirus». Aunque se originó en el entorno Linux, también es compatible con otros sistemas operativos, incluidos Windows y macOS.

Aquí hay algunos aspectos clave sobre ClamAV:

  1. Motor de Escaneo: ClamAV utiliza un motor de escaneo de virus que se actualiza regularmente con nuevas definiciones de virus. Este motor es capaz de identificar y eliminar diversos tipos de malware, incluidos virus, troyanos, gusanos y otros tipos de software malicioso.
  2. Código Abierto: ClamAV es un proyecto de código abierto, lo que significa que su código fuente está disponible para que cualquiera lo examine, modifique y distribuya. Esto permite a la comunidad de usuarios contribuir al desarrollo y mejora continua del software.
  3. Uso Común en Servidores de Correo: ClamAV es conocido por su uso común en servidores de correo electrónico para escanear adjuntos y mensajes en busca de malware. Puede integrarse con servidores de correo para proporcionar una capa adicional de seguridad.
  4. Detección de Amenazas en Tiempo Real: ClamAV puede operar en tiempo real, escaneando archivos y directorios a medida que se crean o modifican. Esto es particularmente útil para la detección temprana de amenazas.
  5. Compatibilidad con Docker: ClamAV se ha empaquetado en contenedores Docker, como el que has mencionado (tiredofit/clamav), lo que facilita su implementación en entornos de contenedores.
  6. Configuración y Personalización: ClamAV es altamente configurable y puede adaptarse a diferentes necesidades de escaneo. Permite establecer reglas específicas y configurar la frecuencia de actualización de las definiciones de virus.

Es importante tener en cuenta que ClamAV, aunque es una herramienta valiosa para la detección de amenazas, no es la única medida de seguridad necesaria. Se recomienda utilizar varias capas de seguridad, como firewalls, actualizaciones regulares del sistema operativo y otros programas de seguridad, para proporcionar una protección más completa contra las amenazas en línea.

Ahora vamos a aprender cómo podemos implementarlo usando Docker Compose.

Crea un archivo llamado docker-compose.yml en el directorio de tu elección. Puedes hacerlo con tu editor de texto favorito. Aquí hay un ejemplo básico:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
version: '3'
services:
clamav:
image: tiredofit/clamav
restart: always
volumes:
- /path/to/your/html:/data/html:ro
# Agrega otros volúmenes según sea necesario
version: '3' services: clamav: image: tiredofit/clamav restart: always volumes: - /path/to/your/html:/data/html:ro # Agrega otros volúmenes según sea necesario
version: '3'
services:
  clamav:
    image: tiredofit/clamav
    restart: always
    volumes:
      - /path/to/your/html:/data/html:ro
      # Agrega otros volúmenes según sea necesario

Asegúrate de cambiar /path/to/your/html a la ruta real en tu servidor que deseas escanear.

Paso 2: Iniciar los Servicios

Abre una terminal en el mismo directorio que tu archivo docker-compose.yml y ejecuta el siguiente comando para iniciar los servicios:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
docker-compose up -d
docker-compose up -d
docker-compose up -d

Este comando descargará la imagen de ClamAV, creará el contenedor y lo iniciará en segundo plano.

Paso 3: Acceder al Contenedor

Para ejecutar un escaneo manual, primero necesitas acceder al shell del contenedor. Usa el siguiente comando:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
docker exec -it nombre_del_contenedor sh
docker exec -it nombre_del_contenedor sh
docker exec -it nombre_del_contenedor sh

Sustituye nombre_del_contenedor con el nombre real de tu contenedor ClamAV.

Paso 4: Ejecutar un Escaneo Manual

Dentro del contenedor, utiliza el comando clamscan para realizar un escaneo manual. Por ejemplo, para escanear el directorio /data/html, ejecuta:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
clamscan --infected --recursive /data/html
clamscan --infected --recursive /data/html
clamscan --infected --recursive /data/html

Este comando escaneará de manera recursiva todos los archivos en el directorio /data/html y mostrará los resultados en la terminal.

Paso 5: Salir del Contenedor

Una vez que hayas realizado el escaneo manual, puedes salir del shell del contenedor:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
exit
exit
exit

Paso 6: Detener los Servicios

Para detener y eliminar los servicios y contenedores, utiliza el siguiente comando:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
docker-compose down
docker-compose down
docker-compose down

Con estos pasos, has configurado ClamAV en un contenedor Docker y has ejecutado un escaneo manual en un directorio específico. Puedes ajustar la configuración según tus necesidades específicas y agregar más directorios para escanear según sea necesario.

Incluso puedes ejecutar el escaneo desde fuera del contenedor de esta forma:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
docker exec clamav clamscan --infected --recursive /data/html /data/html2
docker exec clamav clamscan --infected --recursive /data/html /data/html2
docker exec clamav clamscan --infected --recursive /data/html /data/html2

Aquí además he incluido 2 directorios por si tuviésemos más añadidos.

Si queremos eliminar los archivos infectados podemos usar este comando:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
docker exec clamav clamscan --infected --remove --recursive /data/html /data/html2
docker exec clamav clamscan --infected --remove --recursive /data/html /data/html2
docker exec clamav clamscan --infected --remove --recursive /data/html /data/html2

*No recomiendo utilizar este comando, ya que elimina directamente los archivos.

1

Deja un comentario