23.4. 설정 예
23.4.1. SpamAssassin 및 Postfix
SpamAssasin은 수신 이메일에서 원하지 않는 이메일(스왑 메시지)을 필터링하는 방법을 제공하는 오픈 소스 메일 필터입니다.[23]
Red Hat Enterprise Linux를 사용하는 경우 스파스ass in 패키지는 SpamAssassin을 제공합니다. 다음 명령을 입력하여 스파스assin 패키지가 설치되어 있는지 확인합니다.
~]$ rpm -q spamassassin
package spamassassin is not installed
설치되지 않은 경우
yum
유틸리티를 root로 사용하여 설치합니다.
~]# yum install spamassassin
SpamAssassin은 스팸 필터링 기능을 제공하기 위해 Postfix와 같은 메일러와 함께 작동합니다. SpamAssassin이 메일을 효과적으로 가로채기, 분석 및 필터링하려면 네트워크 인터페이스에서 수신 대기해야 합니다. SpamAssassin의 기본 포트는 TCP/783이지만 변경할 수 있습니다. 다음 예제에서는 SELinux가 기본적으로 특정 포트에 대한 액세스만 허용하여 SpamAssassin을 보완하는 방법을 보여주는 실제 데모를 제공합니다. 이 예제에서는 포트를 변경하는 방법을 보여주며 기본이 아닌 포트에서 SpamAssassin이 작동하도록 합니다.
이 예제는 SELinux가 SpamAssassin의 간단한 설정에 어떤 영향을 줄 수 있는지를 보여줍니다. SpamAssassin에 대한 포괄적인 설명서는 이 문서의 범위를 벗어납니다. 자세한 내용은 공식 SpamAssassin 설명서 를 참조하십시오. 이 예제에서는 스파스 키언이 설치되어 있다고 가정하고, 사용 중인 포트에 대한 액세스를 허용하도록 방화벽이 구성되었다고 가정하고, SELinux 대상 정책이 사용 중이며 SELinux가 강제 모드로 실행 중이라고 가정합니다.
절차 23.1. 기본이 아닌 포트에서 SpamAssassin 실행
semanage
유틸리티를 root로 사용하여 SELinux가스팸 데몬이 기본적으로 수신 대기할
수 있는 포트를 표시합니다.~]# semanage port -l | grep spamd spamd_port_t tcp 783
이 출력은 TCP/783이 작동할 SpamAssassin의 포트로spamd_port_t
에 정의되어 있음을 보여줍니다./etc/sysconfig/spa bootstrapass
in 구성 파일을 편집하고 예제 포트 TCP/10000 예제에서 SpamAssassin을 시작하도록 수정합니다.# Options to spamd SPAMDOPTIONS="-d -p 10000 -c m5 -H"
이 행은 이제 SpamAssassin이 포트 10000에서 작동하도록 지정합니다. 이 예제의 나머지 부분은 이 소켓을 열 수 있도록 SELinux 정책을 수정하는 방법을 보여줍니다.- 시작 SpamAssassin 및 다음과 유사한 오류 메시지가 나타납니다.
~]# systemctl start spamassassin.service Job for spamassassin.service failed. See 'systemctl status spamassassin.service' and 'journalctl -xn' for details.
이 출력은 SELinux가 이 포트에 대한 액세스를 차단했음을 의미합니다. - 다음과 유사한 거부 메시지가 SELinux에 의해 기록됩니다.
SELinux is preventing the spamd (spamd_t) from binding to port 10000.
- 루트로 SpamAssassin이 예제 포트(TCP/10000)에서 작동할 수 있도록
semanage
를 실행하여 SELinux 정책을 수정합니다.~]# semanage port -a -t spamd_port_t -p tcp 10000
- 이제 SpamAssassin이 TCP 포트 10000에서 시작되고 작동하는지 확인합니다.
~]# systemctl start spamassassin.service ~]# netstat -lnp | grep 10000 tcp 0 0 127.0.0.1:10000 0.0.0.0:* LISTEN 2224/spamd.pid
- 이때
스팸은
SELinux 정책에 의해 해당 포트에 액세스할 수 있으므로 TCP 포트 10000에서 올바르게 작동합니다.