Como el autor relata en su página web, el antivirus de Consigna funciona a través de un servicio web. Al subir un fichero, se mete en una cola de trabajos hasta que es analizado por el antivirus respondiendo el identificador del fichero subido, cambiando su situación a la que sea (error, limpio, infectado…).

De ahí que sea necesario instalar Beanstalk y tener el demonio corriendo, y tener el servicio web activo a través del comando antivirus-worker.php.

Obviamente, antes de todo esto hay que tener el antivirus bien instalado.

Una vez hecho todo esto, nos tocara trabajar con el fichero config.php hubicado en la carpeta conf donde deberemos cambiar lo siguiente:

$config['activar_antivirus'] = TRUE;
$config['beanstalkd_host'] = "127.0.0.1";
$config['beanstalkd_port'] = 11300;
$config['beanstalkd_tube'] = 'antivirus';

Indicando en que maquina se esta ejecutando el demonio e indicando lo que llama un tube, que no es más que una de las colas de procesos.

$config['antivirus_ws_pass'] = 'untextocualquiera';

Se trata de la contraseña de un administrador que puede ser cualquiera ya que, en el fondo, no se usa.

El resto de opciones para el antivirus son bastante autoexplicativas y son tales como el tiempo que estará un fichero marcado antes de volver a ser analizado o el tiempo que estará en pendiente antes de volver a la cola.

Aunque, lo importante es la siguiente opción.
$config['avmodule'] = 'clamav';

Consigna, de serie, viene unicamente preparado para el antivirus Clamav, aunque, como el autor relata, deja la API abierta para poder ser usada con cualquier otro antivirus. En esta opción le indicaremos que módulo de antivirus vamos a usar y que se encuentra en la ruta:

/app/libraries/avmodules

Si queremos usar otro antivirus diferente, deberemos crear su modulo correspondiente donde deberemos (principalmente) indicar la ruta del ejecutable (si no se la pasamos como parámetro, como veremos). Aun con eso, tenéis más documentación en la wiki de Consigna.

Y por ultimo, como hemos indicado, configuramos las opciones del modulo, que en nuestro caso es la ruta del ejecutable y las opciones de este:

$config['avconfig'] = array('/opt/local/bin/clamscan -i');