제목:센드메일 서버 구축 - 보내는 서버 SMTP
이번 시간에는 센드메일 서버 구축 가운데에서 보내는 메일 서버 기능을 설정하는 방법에 대해서 알아봅니다. 지난 시간에 알아본 메일 서버 구축은 외부로부터 메일을 받는 기능에 대해서 알아보았습니다. 지난번에 알아본 메일서버 구축 내용으로는 메일을 외부로 보낼 수 없습니다. 그러므로 메일 서버가 제대로 서비스될 수 있도록 메일을 보내는 SMTP 기능을 추가하여 이메일 프로그램에서 메일을 보낼 수 있도록 설정해 보도록 하겠습니다.
센드메일은 원칙적으로는 외부 네트워크상에서는 메일을 보낼 수 없도록 되어 있습니다. 그 이유는 누구나 메일을 보낼 수 있게 허용한다면 내 메일 서버가 스팸 메일 서버로 악용될 수 있기 때문입니다. 센드메일에서는 동적 릴레이(Dynamic Relay)라는 기능을 통하여 외부 네트워크의 사용자들도 메일을 보낼 수 있는 기능을 제공하는데, 이 기능을 이용해야 메일을 보낼 수 있게 됩니다. 그러나 로컬 네트워크상에 있는 사용자들만 메일을 보낼 수 있도록 하려면 간단하게 /etc/mail/access 파일에 허용할 내부 네트워크를 지정해 주면 됩니다(책 890쪽 참고). 이번 시간에 이 설정을 알아보기 위함이 아니라 동적 릴레이 설정 기능을 통하여 SMTP 기능을 활성화시키는 것에 있으므로 이에 대해서 알아봅니다.
센드메일에서 지원하는 동적 릴레이 기능은 Cyrus SASL(Simple Authentication and Security Layer) 라이브러리를 이용한 인증 방법과 STARTTLS(Start Transport Layer Security)를 이용한 인증 방법이 있는데, Cyrus SASL SMTP Auth 기능은 책 893쪽에 기술되어 있고, STARTTLS SMTP Auth는 기술되어 있지 않고, 필자의 다른 서적을 참고하라고 되어 있는데, 이 강좌에서는 책에 있는 내용인 Cyrus SASL SMTP Auth에 대해서 알아 보고, STARTTLS SMTP Auth는 책자료실에서 강좌를 이어가겠습니다. 또한 책자료실 게시판에서는 dovecot의 SSL 인증키를 설정하는 방법에 대해서도 함께 알아봅니다.
그러면 Cyrus SASL SMTP Auth기능을 이용하여 SMTP 인증을 통하여 메일을 보낼 수 있도록 다음 과정과 같이 설정해 봅니다.
1. 다음과 같이 명령을 실행하여 cyrus-sasl 패키지가 설치되어 있는지를 확인합니다.
2. /usr/lib/sasl2/Sendmail.conf 파일의 설정 내용을 확인합니다.
3. /etc/pam.d/smtp 파일의 설정 내용을 확인합니다.
4. 센드메일 설정 파일에서 인증 기작에 관련된 옵션을 수정합니다. /etc/mail/sendmail.cf 파일을 수정해야 하는데, 파일 퍼미션이 읽기 전용 모드로 되어 있으므로, chmod 644 /etc/mail/sendmail.cf 명령을 실행한 후에 vi 편집기로 /etc/mail/sendmail.cf 파일을 열어 550라인으로 갑니다. 이때 콜론키를 누르고 550를 입력하여 엔터키를 치면 550라인으로 이동됩니다.
5. /etc/sysconfig/saslauthd 파일 설정에서 SASL_AUTHMECH값이 pam으로 되어 있는지를 확인합니다.
6. saslauthd 데몬과 센드메일 데몬을 각각 시작 또는 재시작시킵니다.
7. 텔넷으로 SMTP 25번 포트로 접속하여 SMTP Auth 기능이 지원되는지를 확인해 봅니다. 25번 포트로 접속한 다음에 ehlp smtp를 입력합니다. 출력된 메시지 가운데 250-AUTH LOGIN PLAIN이 있는지를 확인하면 됩니다.
Cyrus-SASL SMTP Auth 기능이 정상적으로 이뤄지고 있으므로 이메일 프로그램에서 SMTP 인증 설정을 해 주면 내 메일 서버를 이용하여 외부로 메일을 보낼 수 있게 됩니다. 모질라 썬더버드에서는 보내는 서버(SMTP)을 선택하여 편집 버튼을 클릭하여 [보안통신 사용]에서 [TLS(가능한 경우)]또는 [선택안함]을 선택하여 메일을 보내 보면 됩니다.
다음은 모질라 썬더버드의 계정 설정에 관한 부분입니다. 책 283쪽을 참고하기 바랍니다.
1. 모질라 썬더버드를 실행합니다[시작 메뉴 -> 인터넷 -> 모질라 썬더버드].
2. [Skip this and use my existing email]를 클릭합니다.
3. 이메일 계정을 설정합니다. 그리고나서 [계속] 버튼을 클릭합니다.
4. POP/IMAP 서버 설정에 있어서 POP서버는 메일서버에 도착한 메일을 내 컴퓨터로 끌어 오는 것이고, IMAP 서버는 서버에 메시지를 남겨 두고 메일을 사용하는 것이라 이해하면 됩니다. 이들 중에서 어떤 서버를 이용할 것인지를 선택합니다. SMTP서버를 선택하고 PORT, SSL, Authentication을 Auto로 선택하고 [Re-test] 버튼을 클릭하게 되면 자동으로 서버를 체크하여 인증 방법을 설정해 줍니다. SSL은 현재 적용되지 않으므로 기본 25번 포트를 사용하여 인증을 하게 됩니다. 책자료실에서는 TLS를 적용하여 인증하는 방법을 소개할 것입니다. 설정이 완료되었다면 [Done] 버튼을 클릭합니다.
5. 경고 팝업창이 뜨는데, POP나 SMTP 모두 SSL를 적용하지 않기 때문에 뜨는 것인데, [I understand the risks]를 체크한 다음 [Done] 버튼을 클릭합니다.
좋은 글 고맙습니다 ^^ 이렇게 알려주시니 정말 훨씬 쉽네요~
그런데 이상한 점이 보내고 받는 게 되긴 하는데,
메일을 보낼 때는 구글에서만 받아지고
받을 떄는 네이버에서 보낸 메일만 받아지네요;