=============================================================================================================================

※ 해당 내용의 경우 VMware를 이용한 로컬 네트웍 상에서 작업을 하는 내용을 안내하여 드립니당~!

[ 시스템 설정을 위한 내용 ]

설치된 Base Windows : Windows 7 Pro
설치된 Server CentOS : CentOS 5.8
설치된 VMware Program : VM workstation 8.0.1

메일 서버 패키지 파일 : sendmail, sendmail-cf
=============================================================================================================================

- 메일 서버의 개요 및 동작 원리 -
메일 사용자가 메일 클라이언트(ex:outlook)를 사용해서 메일을 보내는 경우 "e-mail"은 메일서버로 접속한 뒤 받는 사람

메일 주소가 현재 사용 가능한지 여부를 인증(SMTP)받아야 한다.

사용가능여부의 인증이 성공하면 메일서버의 MTA(Mail Transfer Agent)는 SMTP(Simple Mail Transfer Protocol)를
이용하여 받는 사람(@뒤쪽 도메인의 메일 서버 정보를 NS/DNS 서버로 부터 질의하여 검색)의 메일 서버로 전송한다.

메일을 수신한 메일서버는 지정된 디렉터리(/var/spool/mail)에 수신메일을 저장 후 수신자가 접속할 때까지 기다린다.

메일은 받는 사람이 자신의 메일 클라이언트로 접속하여 자신의 메일 계정으로 수신된 메일을 확인, 삭제 또는 다운로드 등

메일 서버로 부터 응답을 결정하여 메일 서버로부터 전송받게 된다.

- 메일 서버의 구분 -
ㄱ. SMTP 서버 (MTA) - Sendmail, Qmail ... 등
ㄴ. POP 서버 (MDA:Mail Delevery Agent) - ipop3, imap ... 등
ㄷ. Mail Client (MUA:Mail User Agent) - Outlook express, 웹메일 ... 등


[ 메일서버 참고사항(CentOS 기준) ]




이제 메일 서버를 실제로 설정하여 사용할텐데요. DNS 구성은 Host 만 추가하면 되므로 구성이 완료되어 있다는

전제하에 진행하도록 하겠습니다.

[ 메일서버 환경 설정(/etc/mail) ]

※ 메일 서버 설정 파일 : sendmail.cf, sendmail.mc


1. sendmail.cf 파일을 삭제

2. sendmail.mc 파일을 수정
(빨간색이 수정사항이며 수정전 백업은 필수!!!)

- 52 Line : dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl - dnl 삭제
- 53 Line : dnl define('confAUTH_MECHANISMS', 'EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl - dnl 삭제
- 116 Line : DAEMON_OPTIONS('Port=smtp, Addr=0,0,0,0, Name=MTA')dnl

3. m4 유틸리티로 sendmail.cf 파일을 생성 (2번 사항의 sendmail.mc 파일의 수정부분을 반영하여 생성됨)

- m4 sendmail.mc > sendmail.cf

4. sendmail 환경설정 (3번에서 생성한 sendmail.cf 파일로 빨간색 부분이 수정된 부분)
- Cwmail.noose.net : 메일 서버로 사용될 Domain 을 지정
- Djmail.noose.net : Telnet 을 통해 확인을 하는 경우에도 강제적으로 Domain 이 출력되게 설정


※ 1. "/etc/mail/access", "/etc/mail/local-host-names" 파일에 할당받은 도메인 명을 기록해야 함
    2. "Cw" 와 "Dj" 중 한개의 옵션만을 사용해야 한다. 두개를 같이 사용하는 경우 데몬 재시작시 오류 발생


[ 메일서버 방화벽 설정해제 ]
1. /etc/sysconfig/iptables 를 수정 (" "안쪽 부분(붉은색만)을 라인 추가해서 입력해야함!!!)
- "-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 25 -j ACCEPT" //SMTP가 사용하는 포트
- "-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 110 -j ACCEPT" //POP3가 사용하는 포트


[ 시스템 시작시 메일 서비스 자동시작 설정 ]
1. "ntsysv" 에서 아래의 두가지 서비스를 등록
- "dovecot"
- "saslauthd"
- 두가지 서비스의 "[]" 부분에 "*" 표시를 등록한다.


[ 적용한 사항의 확인 ]
1. name/sendmail 의 데몬을 재시작
# /etc/rc.d/init.d/named restart
# /etc/rc.d/init.d/sendmail restart

2. 일반 PC에서 도메인 질의
C:\>nslookup
>mail.noose.net
Server: ns.noose.net
Address: 192.168.X.128#53

Name: mail.noose.net
Address: 192.168.X.130#53

3. 일반 PC에서 25번 포트의 telnet 확인
- C:\>telnet 192.168.X.130 25 입력 후 아래의 " " 안의 메세지 내용이 출력되어야 함    //SMTP가 사용하는 포트 확인
" 220 mail.noose.net ESMTP Sendmail 8.13.8/8.13.8; Tue, 26 Apr 2011 15:20:18 +09 00 "
- C:\>telnet 192.168.X.130 110 입력 후 아래의 " " 안의 메세지 내용이 출력되어야 함     //POP3가 사용하는 포트 확인
" +OK Dovecot ready. "

4. Outlook Express 에서 메일 기능의 정상 여부 확인

AND