별의 공부 블로그 🧑🏻‍💻
728x90
728x170

샌드메일(sendmail) 관련 주요 파일

① /etc/mail/local-host-names

  • 메일 서버에 사용하는 도메인을 설정하는 파일
  • 한 줄에 도메인 하나씩 기입하면 된다.

설정 예

# vi /etc/mail/local-host-names
starrykss.org
starrykss.co.kr
yuloje.com

 

② /etc/mail/sendmail.mc

  • sendmail매크로 설정 파일
  • sendmail.cf 파일이 삭제되었거나 복원할 경우 m4 라는 매크로 프로세서를 이용하여 새롭게 생성할 수 있다.

사용 예

# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

 

③ /etc/mail/access

  • 메일 서버로 접근하는 호스트나 도메인의 접근을 제어하는 파일
  • 허가할 호스트나 도메인은 통과(RELAY)시키고, 허용하지 않으려면 거부(REJECT 또는 DISCARD)할 수 있다.
  • 2개의 필드로 구성
    • 첫 번째 필드
      • 도메인명, IP 주소, 메일 계정 등 기입
    • 두 번째 필드
      • 정책 기입
  • 실제 데몬이 참고하는 파일 : /etc/mail/access.db
    • 변경 시에는 makemap hash 명령을 이용한 업데이트가 필요하다.

설정 예

From:spammer@aol.com              REJECT
From:cyberspammer.com             REJECT
Connect:cyberspammer.com          REJECT
Connect:192.168.5                 DISCARD
Connect:127.0.0.5                 OK
Connect:starrykss.org             RELAY
To:starrykss.org                  RELAY
  • Connect : 접속하는 클라이언트의 주소나 이름을 기반으로 제어
  • From : 보낸 사람을 기반으로 제어
  • To : 받는 사람을 기반으로 제어

 

주요 정책

  • RELAY : 특정 호스트나 도메인의 접근을 허용함.
  • REJECT : 메일을 거절하고, 거부 메시지를 보냄.
  • DISCARD : 메일을 거부 메시지 없이 무조건 거절
  • OK
    • DNS 조회가 되지 않은 경우라도 들어오는 메일을 허가함.
    • 보통 거부된 도메인에 대한 예외 처리 시 사용

 

적용 명령

# makemap hash /etc/mail/access < /etc/mail/access>

 

④ /etc/aliases

  • 특정 계정으로 들어오는 메일을 다른 계정으로 전송되도록 설정하는 파일
  • 보통 동일한 계정으로 들어오는 메일을 여러 사용자에게 전달하는 메일링 리스트가 필요한 경우에 유용하다.
  • 예) 고객지원센터의 이메일 계정이 webmaster인 경우
    • 해당 계정으로 들어오는 메일을 고객지원센터에 근무하는 다수의 사용자에게 전달할 수 있다.
  • 샌드메일이 참고하는 파일 : /etc/aliases.db
    • 변경 시에는 다음의 명령을 실행해야 적용이 됨.
      • newaliases
      • sendmail -bi
      • sendmail -I

 

설정법

방법 1

name: value1, value2
  • name은 도메인 없이 로컬 시스템의 계정을 기입한다.
  • 콜론(:)으로 구분한 뒤에 전달할 계정을 콤마(,)로 구분해서 나열한다.

 

방법 2

name::include:파일명
  • 메일링 리스트 파일을 사용할 경우
    • :include:파일명 형식으로 지정

 

설정 예

# vi /etc/aliases
webmaster:      starrykss, yuloje, jalin, joon, starrykss@naver.com
admin::include:/etc/mail/admgroup
  • 기본적으로 콜론(:)으로 구분된 2개의 필드를 사용함.
  • 메일링 리스트 파일을 사용하는 경우에는 4개의 필드를 사용해야 함.

 

적용 명령

# newaliases
# sendmail -bi
# sendmail -I

 

(참고) setup 패키지

  • /etc/aliases 파일
    • 메일 서버인 sendmail에서 사용하는 파일
  • 레드햇 계열 리눅스
    • /etc/passwd, /etc/shadow 등과 같이 시스템에서 중요한 역할을 수행하는 파일들을 묶어서 setup이라는 패키지에 포함시켜서 배포하고 있음.
  • rpm -ql setup 명령을 실행하면 확인할 수 있음.

 

⑤ /etc/mail/virtusertable

  • 하나의 메일 서버에 여러 도메인을 사용하는 환경에서 동일한 메일 계정을 요구할 때, 각각의 도메인으로 도착하는 메일을 전달(포워딩)할 때 사용하는 파일
  • 예) windows.com과 linux.com이라는 도메인을 사용 중이고, 각 회사에서 ceo라는 동일한 이메일 계정을 요구하는 경우에 설정
  • 샌드메일이 참고하는 파일 : /etc/mail/virtusertable.db
    • 변경 시에는 makemap hash 명령을 사용해야 한다.

 

설정 예

# vi /etc/virtusertable
ceo@linux.com       starrykss
ceo@windows.com     yuloje
@starrykss.org      starrkyss@naver.com
  • ceo@linux.com에 들어오는 메일은 starrykss에게 전달
  • ceo@windows.com에 들어오는 메일은 yuloje에게 전달
  • starrykss.org에 들어오는 메일은 starrykss@naver.com로 잔달

 

적용 명령

# makemap hash /etc/mail/virtusertable < /etc/mail/virtusertable

 

⑥ ~/.forward

  •  사용자 개인이 자신에게 들어오는 메일을 다른 메일 주소로 전달(포워딩)할 때 사용하는 파일
  • 홈 디렉터리 안에 직접 파일을 생성한다.
  • 한 줄에 메일 주소 하나씩 입력하면 된다.
  • .forward 파일의 퍼미션
    • 해당 사용자에게만 쓰기(w) 권한이 설정되어야 한다.

 

설정 예

$ vi ~/.forward
starrykss@naver.com
starrykss@gmail.com
  • 전달(포워딩) 할 메일 주소를 한 줄에 하나씩 기입
$ chmod 600 ~/.forward
  • 생성한 파일의 퍼미션 값을 변경한다.
728x90
그리드형(광고전용)
⚠️AdBlock이 감지되었습니다. 원할한 페이지 표시를 위해 AdBlock을 꺼주세요.⚠️
starrykss
starrykss
별의 공부 블로그 🧑🏻‍💻


📖 Contents 📖