sendmail 및 dovecot (imap4, pop3) 설치 및 설정 방법

리눅스가 설치된 서버의 경우 다양한 어플리케이션을 설치 및 구성 할수 있다. 오늘은 간단히 메일서비스를 설치 및 구성해보도록 하겠다.

리눅스에서 대표적인 메일서비스는 sendmail, postfix,qmail 등이 있다. 메일을 이용하는 사용자 수에 따라서 메일서비스를 선택하는것이 좋으며, sendmail 및 postfix 의 경우 설치가 쉬운방면에 다중접속이 많을 경우 적절하지 못하고, qmail의 경우 설치가 어려운 반면에 높은 퍼포먼스를 보여주는게 장점이다.

필자는 작은 규모에서 가장 많이 사용하는 sendmail 설치 및 구성에 대해서 설명해본다.

Sendmail 이란?

메일서버의 구성을 놓고 얘기하자면 센드메일 서버만으로 이루어 지는것이 아니다. 정확히 말해 센드메일서버는 보내는 메일서버 즉 메일을 받기위함이 아닌 보내기위한 서버 SMTP(Simple Mail Transfer Protocol) 서버를 얘기 하는것이다.

메일서버에 대한 이해가 잡혀있지 않는 상태에서는 센드메일 서버를 논하기가 어렵다. 일반적인 메일서버의 구성을 보자면 메일을 보내기위한 SMTP 서버와 반대로 메일을 받기위해 존재하는 POP3서버나 IMAP 서버로 나뉠수 있다.

이중 센드메일은 SMTP 서버에 속하며 받는 메일서버의 경우 위에서 언급한대로 따로 구성된다.

물론 클라이언트(사용자) 입장에서 보면 이들은 하나로 뭉처진 동일한 시스템으로 인식될수 있다.

예를 들어 인터넷이 보급되면서 이제는 너무도 일반화된 웹메일 서비스(daum,naver,gmail 등) 또한 이 메일서버의 구성을 기본으로 웹상에서 메일의 송수신을 제어할수 있도록 PHP나 ASP등의 서버기반 프로그램 언어를 통해 이루어지는 서비스이다.

웹 메일의 관점에서 보자면 사용자들은 별도의 설정없이 메일의 보내기와 받기 서비스를 동시에 마치 하나의 시스템 처럼 생각하며 이용할수 있지만 실제의 구성은 앞에서 언급한대로 각각의 나누어진 서비스 들이다.

이렇게 받는 메일서비스를 제공하는 프로그램이 dovecot 이라는 어플리케이션이다. 오늘은 sendmail+dovecot 설치 구성을 다루도록 하겠다.

sendmail+dovecot 설치

설치환경

OS : CentOS 6.5 64bit
CPU: 가상화서버
Ram : 1G

sendmail을 먼저 설치하고 postfix를 삭제해야 의존성에 걸리지 않는다.

yum install sendmail sysstat redhat-lsb dovecot sendmail-cf
yum install cyrus*
chkconfig saslauthd on
chkconfig sendmail on
/etc/init.d/saslauthd start
yum remove postfix

sendmail 릴레이 인증 관련 설정을 해주고 dovecot 설정한다.

vi /etc/dovecot/dovecot.conf
protocols = imap
listen = *

vi /etc/dovecot/conf.d/10-auth.conf
disable_plaintext_auth = no

home 디렉토리에 mail 폴더가 생기지 않도록 설정한다.

vi /etc/dovecot/conf.d/10-mail.conf
mail_location = mbox:/var/empty:INBOX=/var/spool/mail/%u:INDEX=MEMORY

SMTP 인증 설정

vi /etc/mail/sendmail.mc

dnl #TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl
dnl #define(`confAUTH_MECHANISMS’, `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl
dnl MAILER(cyrusv2)dnl

위에 주석으로 설정된 부분을 아래와 같이 해제한다.

##주석해제##

TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl
define(`confAUTH_MECHANISMS’, `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl

SMTP 인증을 할 때 꼭 필요한 설정이기 때문에 꼭 주석해제 한다.

dnl #DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA’)dnl
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf

vi /etc/mail/local-host-names

itopening.com

설정이 끝났다면, sendmail 재시작 한다.

service sendmail restart

TIP

혹시나 설치도중에 아래와 같은 에러 발생시 해결방법이다.

m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
m4:/etc/mail/sendmail.mc:10: cannot open `/usr/share/sendmail-cf/m4/cf.m4': No such file or directory

yum install sendmail* -y

이제 메일서비스를 위한 모든 설치가 완료되었다.

그럼 테스트로 메일을 발송한다.

echo "System OK" | mail -s "SystemCheck" it@itopening.com

자신의 메일에 Sytem OK 라는 메일이 확인이 된다면 성공이다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다