콘텐츠로 이동






Centos6에서 dovecot 설치하기

back

Dovecot IMAP/POP3 설정 (Dovecot 2.x 계열)

이 문서는 /etc/dovecot/dovecot.conf/etc/dovecot/conf.d/ 구조를 사용하는
Dovecot 2.x 계열을 기준으로 작성했다.

CentOS 5.x의 Dovecot 1.0 계열은 일반적으로 /etc/dovecot.conf 단일 설정 파일을 사용하므로, 본 문서의 conf.d/10-*.conf 설정 방식과 혼용하면 안 된다.

아래의 ssl = no, disable_plaintext_auth = no 설정은 테스트 또는 폐쇄망 환경에서만 사용한다. 운영 환경에서는 TLS를 활성화하고 IMAPS(993) 또는 POP3S(995)를 사용한다.

1. 활성화할 서비스 설정

Dovecot의 메인 설정 파일에서 사용할 프로토콜을 지정한다.

# vi /etc/dovecot/dovecot.conf

다음 항목의 주석을 해제하고 필요한 프로토콜만 설정한다.

protocols = imap pop3
  • imap: IMAP 서비스 활성화
  • pop3: POP3 서비스 활성화
  • lmtp: Postfix 등의 MTA가 Dovecot LMTP로 메일을 전달할 때 사용

IMAP과 POP3만 제공하는 일반적인 예시는 다음과 같다.

protocols = imap pop3

Dovecot이 수신할 IP 주소를 설정한다.

listen = *, ::
  • *: 모든 IPv4 인터페이스에서 수신
  • ::: 모든 IPv6 인터페이스에서 수신

IPv4 환경만 사용하고 IPv6 수신을 비활성화하려면 다음과 같이 설정한다.

listen = *

IPv6를 사용하거나 향후 사용할 가능성이 있다면 listen = *, :: 설정을 유지한다.

2. 메일 저장소 위치 설정

메일 저장소 형식과 위치는 /etc/dovecot/conf.d/10-mail.conf에서 설정한다.

# vi /etc/dovecot/conf.d/10-mail.conf

Sendmail 또는 Postfix가 시스템 기본 mbox 경로인 /var/spool/mail/<사용자명>에 메일을 저장하는 환경이라면 다음과 같이 설정할 수 있다.

mail_location = mbox:~/mail:INBOX=/var/spool/mail/%u
  • mbox: mbox 형식의 메일 저장소 사용
  • ~/mail: 사용자의 개인 메일 폴더
  • INBOX=/var/spool/mail/%u: 시스템 Inbox 경로
  • %u: 로그인한 사용자 이름으로 치환

예를 들어 test 계정으로 로그인하면 Inbox는 다음 경로를 사용한다.

/var/spool/mail/test

다음 설정도 문법상 사용할 수 있다.

mail_location = mbox:~/mail:INBOX=/var/spool/mail/%u:INDEX=MEMORY

단, INDEX=MEMORY는 Dovecot 인덱스를 디스크에 저장하지 않고 메모리에서만 사용한다. 테스트 환경이나 특정 NFS 환경에서는 사용할 수 있지만, 일반적인 운영 환경에서는 인덱스를 디스크에 저장하는 기본 동작을 유지하는 편이 좋다.

3. TLS/SSL을 사용하지 않는 테스트 설정

주의: 아래 설정은 TLS를 완전히 비활성화한다. 외부 네트워크나 운영 환경에서는 적용하지 않는다.

TLS/SSL을 사용하지 않는 경우 /etc/dovecot/conf.d/10-ssl.conf 파일을 수정한다.

# vi /etc/dovecot/conf.d/10-ssl.conf

다음 항목의 주석을 해제하거나 값을 변경한다.

ssl = no

ssl = no로 설정하면 Dovecot의 TLS 기능이 비활성화된다. 따라서 일반적으로 TLS 전용 포트인 IMAPS(993), POP3S(995) listener도 사용하지 않는다.

4. TLS 미사용 시 평문 인증 허용

주의: 이 설정을 적용하면 사용자 이름과 비밀번호가 네트워크에 평문으로 노출될 수 있다.

Dovecot 2.3 계열에서는 TLS 없이 PLAIN, LOGIN 방식의 인증을 허용하려면 /etc/dovecot/conf.d/10-auth.conf 파일을 수정한다.

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

다음 설정을 적용한다.

disable_plaintext_auth = no

TLS를 사용하지 않으면서 이 값을 변경하지 않으면, 평문 인증을 시도하는 클라이언트의 로그인이 거부될 수 있다.

Dovecot 2.4 이상에서는 disable_plaintext_auth 대신 auth_allow_cleartext = yes를 사용한다.

5. 설정 검증 및 서비스 재시작

Dovecot 설정 문법을 확인한다.

# doveconf -n

서비스를 재시작한다.

# systemctl restart dovecot

부팅 시 자동 시작되도록 설정한다.

# systemctl enable dovecot

서비스 상태를 확인한다.

# systemctl status dovecot

6. 리슨 포트 확인

Dovecot이 열고 있는 포트를 확인한다.

# ss -lntp | grep dovecot

또는 구형 환경에서는 다음 명령을 사용한다.

# netstat -lntp | grep dovecot

평문 IMAP/POP3만 활성화한 경우의 예상 예시는 다음과 같다.

LISTEN 0      100          0.0.0.0:110        0.0.0.0:*    users:(("dovecot",pid=1234,fd=20))
LISTEN 0      100          0.0.0.0:143        0.0.0.0:*    users:(("dovecot",pid=1234,fd=21))
  • TCP 110: POP3
  • TCP 143: IMAP
  • TCP 993: IMAPS (TLS)
  • TCP 995: POP3S (TLS)

TLS를 활성화한 운영 환경에서는 TCP 993 또는 995 포트가 열려 있는지 확인한다.

7. 운영 환경 권장 사항

운영 환경에서는 다음 구성을 권장한다.

  • ssl = yes 또는 ssl = required 설정
  • 유효한 TLS 인증서와 개인 키 설정
  • disable_plaintext_auth = yes 유지
  • IMAPS(993) 또는 POP3S(995) 사용
  • 방화벽에서 필요한 포트만 허용
  • Dovecot 설정 확인 시 doveconf -n 사용
  • 메일 수신과 로컬 메일함 전달을 위한 Postfix 등의 MTA 별도 구성



작성일: 2026년 7월 15일 ,  마지막 업데이트: 2026년 8월 13일