콘텐츠로 이동

U-47: 스팸 메일 릴레이 제한

분류: 01_unix

중요도: 상


개요

점검 내용

SMTP 서버의 릴레이 기능 제한 여부 점검

점검 목적

스팸 메일 서버로의 악용 방지 및 서버 과부하를 방지하기 위함

보안 위협

SMTP 서버의 릴레이 기능을 제한하지 않을 경우, 악의적인 사용 목적을 가진 사용자들이 스팸 메일 서버로 사용하거나 DoS 공격의 위험이 존재함

참고

SMTP(Simple Mail Transfer Protocol) 서버

SMTP에 의해 전자 메일을 발신하는 서버(server)를 SMTP 서버라고 함

참고

메일 서비스를 사용하지 않는 경우 양호 또는 N/A

점검 대상 및 판단 기준

대상

SOLARIS, LINUX, AIX, HP-UX 등

판단 기준

✅ 양호: 릴레이 제한이 설정된 경우

❌ 취약: 릴레이 제한이 설정되어 있지 않은 경우

조치 방법

  • 메일 서비스를 사용하지 않는 경우 서비스 중지 및 비활성화 설정
  • 메일 서비스 사용 시 릴레이 방지 설정 또는 릴레이 대상 접근 제어 설정

조치 시 영향

일반적인 경우 영향 없음

점검 및 조치 사례

SOLARIS, LINUX, AIX, HP-UX

Sendmail 8.9 이상 버전

  1. /etc/mail/sendmail.cf 파일 내 릴레이 허용 설정 여부 확인

  2. /etc/mail/sendmail.mc 파일 수정

    FEATURE(`promiscuous_relay’)dnl <해당 설정 제거>
    
  3. sendmail.cf 설정 파일 재생성

    # m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
    
  4. /etc/mail/access 파일에 특정 IP, Domain, Email 주소, 네트워크에 대한 접근제한 설정

    예시)
    localhost.localdomain    RELAY
    localhost               RELAY
    127.0.0.1               RELAY
    spam.com              REJECT
    

/etc/mail/access 파일을 생성하거나 수정하였을 경우

# makemap hash /etc/mail/access.db < /etc/mail/access 명령으로 DB 파일 생성

  1. 설정 적용 및 재시작

    # systemctl restart sendmail
    

참고

Sendmail 8.9 이상 버전부터는 기본적으로 스팸 메일 릴레이 제한 설정이 적용됨

Sendmail 8.9 미만 버전

  1. /etc/mail/sendmail.cf 파일 내 릴레이 제한 설정 확인

    # cat /etc/mail/sendmail.cf | grep “R$\*” | grep “Relaying denied”
    
  2. /etc/mail/sendmail.cf 파일 수정

    # R$*    $#error $@ 5.7.1 $: “550 Relaying denied”
    
  3. /etc/mail/access 파일에 특정 IP, Domain, Email 주소, 네트워크에 대한 접근제한 설정

    예시)
    localhost.localdomain    RELAY
    localhost               RELAY
    127.0.0.1               RELAY
    spam.com              REJECT
    
  4. Sendmail 서비스 재시작

참고

파일이 존재하지 않는 경우 생성하여 설정

/etc/mail/access 파일을 생성하거나 수정하였을 경우

# makemap hash /etc/mail/access.db < /etc/mail/access 명령으로 DB 파일 생성

Postfix

  1. /etc/postfix/main.cf 파일 내 릴레이 정책 설정 확인

    # cat /etc/postfix/main.cf | grep -E “smtpd_recipient_restrictions|mynetworks”
    
  2. /etc/postfix/main.cf 파일 수정

    mynetworks = <허용할 네트워크 주소>
    
  3. 설정 적용

    # postfix reload
    

Exim

  1. /etc/exim/exim.conf, /etc/exim4/exim4.conf 파일 내 릴레이 설정이 허용된 네트워크 주소 확인

    cat <파일명> | grep -E “relay_from_hosts|hosts =
  2. /etc/exim/exim.conf 또는 /etc/exim4/exim4.conf 파일 수정

    hostlist   relay_from_hosts = <허용할 네트워크 주소>
    accept hosts         = +relay_from_hosts 또는 <허용할 네트워크 주소>
    
  3. Exim 서비스 재시작