목차

이강우 2015/07/29 10:30

Exim4 - Dovecot SASL

목적

Exim4에 인증기능을 올리기 위한 SASL모듈중 Dovecot 에서 제공하는 SASL을 통해 인증을 처리하기 위한 방법을 설명한다.
본 방법을 사용하기 위해서는 Exim v4.64 이후 버전을 사용하여야 하며 SMTP인증을 위해 사용되는 Cyrus SASL을 Dovecot SASL로 대체 할 수 있게 된다.

준비작업

[user@host]# apt-get install exim4-daemon-heavy dovecot-core

설정

Dovecot 설정

기본적으로 dovecot-core 패키지를 설치하고 난 이후 아래 파일을 수정한다.

/etc/dovecot/conf.d/10-master.conf

service auth {
...
#SASL
  unix_listener auth-client {
    mode = 0660
    user = Debian-exim
  }
...
}

/etc/dovecot/conf.d/10-auth.conf

auth_mechanisms = plain login

Exim4 설정

Dovecot에서 설정한 SASL용 unix socket을 인증에 이용할 수 있도록 설정파일에 아래 내용을 추가해준다.

/etc/exim4/exim4.conf.template

dovecot_login:
  driver = dovecot
  public_name = LOGIN
  server_socket = /var/run/dovecot/auth-client
# setting server_set_id might break several headers in mails sent by authenticated smtp. So be careful.
  server_set_id = $auth1

dovecot_plain:
  driver = dovecot
  public_name = PLAIN
  server_socket = /var/run/dovecot/auth-client
  server_set_id = $auth1

적용

위의 내용으로 설정 후 서버에 적용하기 위해 아래 명령어를 입력한다.

[user@host]# update-exim4.conf -d /etc/exim4 -o /etc/exim4/exim4.conf
[user@host]# systemctl restart dovecot.service
[user@host]# systemctl restart exim4.service

테스트

root@mail:~# telnet localhost 25
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 mail.koov.net ESMTP Exim 4.84 Mon, 27 Jul 2015 15:03:31 +0900
EHLO koov.net
250-mail.koov.net Hello koov.net [::1]
250-SIZE 52428800
250-8BITMIME
250-PIPELINING
250-AUTH LOGIN PLAIN
250 HELP
AUTH LOGIN
334 VXNlcm5hbWU6
a29vdg==
334 UGFzc3dvcmQ6
dGVzdDEyMzQ=
235 Authentication succeeded

참고링크