En esta ocasión vamos a ver como disponer de clamav en Centos 7 ya que digamos que requiere de un poco de toqueteo de archivos.
El motivo de este post es servir de apoyo a otro futuro en el que hablaremos de como usar clamav para escanear determinados archivos nuevos que son subidos vía ftp/sftp/http/https a algún directorio. Digamos que es necesario primero instalar clamav para luego poder ya crear un escaneo de nuevos archivos que entran en el sistema y poder ponerlos en cuarentena o eliminarlos. Eso servirá para wordpress/nextcloud/drupal/… y poder eliminar archivos sospechosos subidos por los/las usuarios/as o apartarlos.
Instalamos repo epel y el tinglado:
# yum install epel-release # yum update # yum install clamav clamd htop -y # yum install clamav-server clamav-data clamav-update clamav-filesystem clamav clamav-scanner-systemd clamav-devel clamav-lib clamav-server-systemd -y Copiamos una configuración para el demonio clamd (quitando Example para que chute):
# cp /usr/share/clamav/template/clamd.conf /etc/clamd.d/clamd.conf # sed -i '/^Example/d' /etc/clamd.d/clamd.conf
Tocamos la configuración para indicar:
User clamscan
y descomentar cambiando:
LocalSocket /var/run/clamd.scan/clamd.sock
Ahora creamos una copia de /etc/freshclam.conf (freshclam se encargará de mantener al día la base de datos de malwares):
# cp /etc/freshclam.conf /etc/freshclam.conf.bak # sed -i '/^Example/d' /etc/freshclam.conf
Seguimos creando archivos y metiendo contenido. Para poder levantar esto como demonio y que se actualice la base de datos de malwares.
# touch /usr/lib/systemd/system/clam-freshclam.service
con este contenido:
[Unit]
Description = freshclam scanner
After = network.target
[Service]
Type = forking
ExecStart = /usr/bin/freshclam -d -c 4
Restart = on-failure
PrivateTmp = true
[Install]
WantedBy=multi-user.target
Habilitamos el servicio clam-freshclam :
# systemctl enable clam-freshclam.service # systemctl start clam-freshclam.service # systemctl status clam-freshclam.service
Ahora apañamos el servicio de scaneo demonio:
# mv /usr/lib/systemd/system/[email protected] /usr/lib/systemd/system/clamd.service
Quitamos la @ de la primera línea:
# nano /usr/lib/systemd/system/[email protected]
Estará así:
.include /lib/systemd/system/[email protected]
Y queda así:
.include /lib/systemd/system/clamd.service
Ahora sustituimos lo que tenga el archivo/usr/lib/systemd/system/clamd.service
# nano /usr/lib/systemd/system/clamd.service
Por esto:
[Unit]
Description = clamd scanner daemon
After = syslog.target nss-lookup.target network.target
[Service]
Type = simple
ExecStart = /usr/sbin/clamd -c /etc/clamd.d/clamd.conf --foreground=yes
Restart = on-failure
PrivateTmp = true
[Install]
WantedBy=multi-user.target
Si todo va bien finalizamos así:
# systemctl enable clamd.service # systemctl disaable [email protected] # systemctl start clamd.service # systemctl stop [email protected] # reboot
Con un reboot para comprobar luego al iniciarse la maquina que todo se levanta como ha de ser (con “ps aux” por ejemplo).
# tail -f /var/log/messages
Deja tu comentario