computer system

Mail 서버에 동적릴레이 추가하기 (작성중...)

hongiiv 2006. 2. 28. 13:10
반응형
우선 sendmail, 즉 인터넷 e-mail에서의 relay라는 단어가 무엇을 의미하는지 부터 짚고 넘어가야 할것 같다. 사전적인 의미에서의 relay는 [...을 중계하여 전하다]라는 의미를 가지고 있다. 흔히 말하는 '스팸 릴레이(spam relay)'는 사전적인 의미 그대로 해석하자면 "스팸 메일을 중계하여 전하다"라는 의미가 될 수 있겠다.

그러면 어떠한 방법으로 나의 메일서버가 스팸 메일을 중계하는 중간자(?) 역할을 할 수 있을까? 여기에는 sendmail을 통해서 메일을 내/외부 도메인으로 보내는 경우, sendmail을 통해서 메일을 받는 경우의 두가지 경우에서 relay가 발생하게 된다.(^^;; 물론 sendmail의 기능이 이 두가지밖에 없으니 당연한 일이지만...)

  1. 내부 도메인 및 내부 ip가 아닌 곳에서 내 메일서버를 통해 메일이 전달된다. 물론 전달 될 수도 있다. 설정에 따라서는 말이다. 그러나 기본적으로 sendmail을 설치하고 난 상태에서(아무런 설정도 하지 않은 상태에서) 이런 일이 발생한다면 안되겠네~ (/etc/mail/access 파일 참조)
  2. 다른 도메인으로 가는 메일이 내 서버를 통해서 전달된다. 25번 포트에서는 누군가가 메일을 보내거나, 누군가가 보낸 메일을 받거나 둘중에 한가지의 일을 수행하고 있다.
외부 도메인에서 내 메일 서버를 통해 메일이 전달되는지 테스트하기
hongiiv@socmaster ~ $ telnet mail.ngri.go.kr 25
Trying 152.99.75.170...
Connected to mail.ngri.go.kr.
Escape character is '^]'.
<<<220 mail.ngri.re.kr ESMTP Sendmail 8.11.6/8.11.6; Thu, 9 Mar 2006 14:42:26 +0900
>>>helo mail
<<<250 mail.ngri.re.kr Hello [59.6.153.50], pleased to meet you
>>>mail from:
<<<250 2.1.0 ... Sender ok
>>>rcpt to:
<<<550 5.7.1 ... Relaying denied. IP name lookup failed [59.6.153.50]
>>>rset
<<<250 2.0.0 Reset state

출발지와 목적지의 e-mail 주소가 같을 경우 테스트

1. 우선 다음 사이트에서 내 메일서버의 relay를 테스해 보도록 한다.
http://www.abuse.net/relay.html


2. Sendmail8.9.0 부터는 기본적으로 메일 릴레이 기능을 제한하도록 설정되어있다. Sendmail8.9.0 부터 Access DB라는 새로운 데이터베이스를 도입하여 여러가지 스팸릴레이 및 접근에 관한 설정을 하도록하고 있다.

3. 다음 명령을 통하여 설치된 Sendmail의 버전 정보를 얻도록 한다.
[root@mail root]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
220 mail.ngri.re.kr ESMTP Sendmail 8.11.6/8.11.6; Tue, 28 Feb 2006 13:15:51 +0900
ehlo mail
250-mail.ngri.re.kr Hello localhost.localdomain [127.0.0.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-SIZE
250-DSN
250-ONEX
250-ETRN
250-XUSR
250-AUTH GSSAPI LOGIN PLAIN
250 HELP

4. 현재 Sendmail의 상태를 점검해 보도록 하자.
[root@mail root]# mailstats
Statistics from Thu Jan 13 02:23:17 2005
 M   msgsfr  bytes_from   msgsto    bytes_to  msgsrej msgsdis  Mailer
 4   131930    2068652K     4383     519610K     6602       0  esmtp
 9    10185     993773K   182294    2677109K     1412       0  local
=============================================================
 T   142115    3062425K   186677    3196719K     8014       0
 C   142115               186677                 8014

5. 현재 smtp의 인증 메커니즘의 설정을 변경한다.
#O AuthMechanisms=GSSAPI KERBEROS_V4 DIGEST-MD5 CRAM-MD5 <-변경전
O AuthMechanisms=GSSAPI KERBEROS_V4 EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN <-변경후
 




참고사이트
1) Sendmail에서 DRAC를 이용한 Dynamic Relay(RedHat 7.0)
    http://kldp.org/Translations/html/Sendmail_DRAC-KLDP/Sendmail_DRAC-KLDP.html#toc1
2) sendmail의 smtp인증 질답스레드
    http://www.kr.freebsd.org/ml/questions/2001/08/msg00493.shtml
3) sendmail관련 무단도용방지
    http://www.superuser.co.kr/home/superuserboard/view.html?code=linux&id=10512&start=0&position=
4) sendmail configuration 8.smtp인증
    http://www.oops.org/lecture.php?c=white&s=sendmail
5) 뇌를 자극하는 redhat fedora 애프터서비스 9장 추가. 동적릴레이
    http://brain.hanbitbook.co.kr/fedora/
반응형