SELinux impide la conexión clamd_port_t:tcp_socket

SELinux impide la conexión clamd_port_t:tcp_socket

Contamos con API Server (tomcat) que tiene configuración clamAV para escanear cualquier archivo subido al sistema.

La configuración de clamAV requerirá que el servidor API se conecte al servidor de clamAV.

SELinux está habilitado en ambos servidores y cada vez que intentamos cargar archivos obtenemos el siguiente error/excepción:

tomcat: java.net.socketexception permission denied (connect failed)

Este error está relacionado con SELinux y aquí el registro de auditoría para esta denegación:

type=AVC msg=audit(1632293242.892:403): avc:  denied  { name_connect } for  pid=2663 comm="http-nio-8780-e" dest=3310 scontext=system_u:system_r:tomcat_t:s0 tcontext=system_uSmiley Surprisedbject_r:clamd_port_t:s0 tclass=tcp_socket permissive=0

    Was caused by:
        Missing type enforcement (TE) allow rule.

        You can use audit2allow to generate a loadable module to allow this access.

Resolvimos esto creando una política personalizada de SELinux usando Audit2Allowel comando.

Pero necesitamos saber si hay alguna otra forma de resolver esto usando SELinux Booleans o cualquier cambio de etiqueta que podamos aplicar.

Podrías avisar por favor ?

Gracias

Respuesta1

Si hubiera otra manera, audit2whyte lo habría contado.

También puede probar la sealertherramienta que mostrará denegaciones recientes de SELinux y proporcionará información detallada.

información relacionada