시스템에 업로드된 파일을 스캔하기 위한 clamAV 구성이 있는 API 서버(tomcat)가 있습니다.
clamAV 구성에서는 clamAV 서버에 연결하기 위해 API 서버가 필요합니다.
SELinux는 두 서버 모두에서 활성화되어 있으며 파일을 업로드하려고 할 때마다 다음 오류/예외가 발생합니다.
tomcat: java.net.socketexception permission denied (connect failed)
이 오류는 SELinux와 관련이 있으며 여기에는 이 거부에 대한 감사 로그가 있습니다.
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.
명령을 사용하여 SELinux 사용자 정의 정책을 생성하여 이 문제를 해결했습니다 Audit2Allow
.
그러나 SELinux 부울 또는 적용할 수 있는 라벨 변경을 사용하여 이 문제를 해결할 수 있는 다른 방법이 있는지 알아야 합니다.
나에게 조언 해주실 수 있으신가요 ?
감사해요
답변1
다른 방법이 있었다면 audit2why
그것에 대해 알려주었을 것입니다.
sealert
최근 SELinux 거부를 표시하고 자세한 정보를 제공하는 도구를 사용해 볼 수도 있습니다 .