Source: https://once-email.com/ko/blog/corecomponent

전달 및 인증  · 2025년 5월 22일업데이트 2026년 8월 23일

# Postfix와 Dovecot의 차이: 수신 메일 서버의 역할과 진단

Postfix, Dovecot, LMTP, 큐, IMAP의 경계를 이해하고 증거로 수신 실패 지점을 판단합니다.

[Once Email 엔지니어링, Once Email author Once Email 엔지니어링](<https://once-email.com/ko/about>)

검토 Once Email 기술 검토

이 가이드로 할 수 있는 일

수신 오류가 SMTP, 큐 전달, 사서함 저장 또는 IMAP 접근 중 어디에 있는지 판단합니다.

글 안내

이 글을 읽을 가치

**독창적 분석**

한 수신 메시지를 SMTP 수락, 큐, LMTP 전달, 저장, IMAP 접근으로 나누고 각 실패 신호를 실제로 담당하는 구성 요소에 연결합니다.

**동향 설명**

Postfix와 Dovecot은 계속 함께 사용되지만 컨테이너와 관리 패널이 전송, 최종 전달, 사서함 접근의 경계를 숨겨 잘못된 진단을 만들 수 있습니다.

**실용적 가치**

운영자는 민감한 본문을 기록하지 않고 SMTP 거부, 큐 지연, 저장 실패, IMAP 접근 오류를 구분하는 표와 점검 순서를 얻습니다.

Postfix와 Dovecot은 자주 함께 설치되지만 같은 일을 하지 않습니다. 일반적인 수신 시스템에서 **Postfix는 SMTP를 수락하고 큐를 관리**하며, **Dovecot은 LMTP 최종 전달 또는 IMAP 사서함 접근을 담당**합니다. 한 서비스가 실행 중이라는 사실만으로 전체 수신 흐름이 정상이라고 할 수 없습니다.

이 글은 진단 지도이지 운영 환경의 복사형 설정법이 아닙니다. 실제 운영에는 DNS, TLS, 수신자 검증, 남용 방지, 권한, 백업, 모니터링, 릴레이 제한이 필요합니다. Once Email은 수신 전용이며 SMTP 발신, 답장, 전달, 대량 발송을 제공하지 않습니다.

## [역할 비교](<https://once-email.com/ko/blog/corecomponent#%EC%97%AD%ED%95%A0-%EB%B9%84%EA%B5%90>)

| 질문 | Postfix | Dovecot |
| --- | --- | --- |
| 주요 네트워크 역할 | SMTP 수신 또는 발신 | IMAP/POP3 제공, LMTP 수신 가능 |
| 메일 큐 소유 | 예 | 아니요 |
| SMTP 수신자 승인 | 보통 Postfix 맵과 정책 | 설계에 따라 사용자 자료 제공 |
| 최종 사서함 기록 | 로컬/가상 전달 또는 위임 | Dovecot LMTP 최종 전달 가능 |
| 클라이언트 읽기 | 제공하지 않음 | 보통 IMAP으로 제공 |

따라서 “Postfix 또는 Dovecot”은 보통 제품 선택이 아닙니다. 한 책임이 끝나고 다음 책임이 시작되는 경계를 알아야 합니다.

## [한 수신 메시지 추적](<https://once-email.com/ko/blog/corecomponent#%ED%95%9C-%EC%88%98%EC%8B%A0-%EB%A9%94%EC%8B%9C%EC%A7%80-%EC%B6%94%EC%A0%81>)

[Postfix 공식 아키텍처](<https://www.postfix.org/OVERVIEW.html>) 는 네트워크 메일이 ` smtpd `와 cleanup을 거쳐 큐에 들어가고 큐 관리자가 전달 에이전트를 선택하는 과정을 설명합니다.

1. **SMTP 연결:** 원격 발신 서버가 Postfix에 도달해 거래를 수행합니다.
2. **수락:** Postfix가 맵과 규칙에 따라 envelope 수신자를 수락하거나 거부합니다.
3. **큐와 인계:** 수락된 메시지가 local, virtual, pipe 또는 LMTP로 이동합니다.
4. **접근:** 전달 후 Dovecot이 승인된 클라이언트에 IMAP 읽기를 제공합니다.

SMTP ` 250 `은 사서함에 보인다는 뜻이 아닙니다. Postfix가 수락한 뒤 LMTP, quota, 저장 오류로 deferred 상태가 될 수 있습니다. 반대로 저장은 되었지만 IMAP 인증, 인덱스, namespace 또는 파일 권한 때문에 보이지 않을 수도 있습니다.

## [LMTP가 두 서비스를 연결하는 방법](<https://once-email.com/ko/blog/corecomponent#lmtp%EA%B0%80-%EB%91%90-%EC%84%9C%EB%B9%84%EC%8A%A4%EB%A5%BC-%EC%97%B0%EA%B2%B0%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95>)

Postfix가 SMTP와 큐를 유지하고 Dovecot LMTP에 최종 전달을 맡기는 구성이 흔합니다. [Dovecot LMTP 안내](<https://doc.dovecot.org/2.4.2/howto/lmtp/postfix>) 는 Postfix spool 내부의 보호된 Unix socket을 보여 줍니다.

socket은 단순히 복사할 경로가 아닙니다. 소유자, 그룹, 모드, chroot 위치와 서비스 상태가 하나의 계약입니다. Postfix가 접근할 수 없으면 일반적으로 큐 항목을 지연해야 하며 빈 사서함으로 위장해서는 안 됩니다. LMTP가 수락한 뒤에는 quota와 저장 증거를 우선합니다.

권한 문제를 감추기 위해 모든 사용자에게 쓰기 권한을 주지 마십시오. 필요한 서비스 계정을 확인하고 최소 권한만 부여합니다. 인증과 전송 보호를 설계하지 않은 상태로 LMTP를 공개하지 않습니다.

## [증거 기반 진단](<https://once-email.com/ko/blog/corecomponent#%EC%A6%9D%EA%B1%B0-%EA%B8%B0%EB%B0%98-%EC%A7%84%EB%8B%A8>)

| 증거 | 먼저 확인할 경계 |
| --- | --- |
| 25번 포트 연결 불가 | DNS, 방화벽, TLS, Postfix ` smtpd ` |
| 본문 전에 수신자 거부 | Postfix 수신자 맵과 정책 |
| SMTP 수락 후 deferred | Postfix 큐와 선택된 transport |
| LMTP socket 없음/권한 거부 | Postfix–Dovecot 연결과 권한 |
| LMTP quota/쓰기 실패 | Dovecot 전달과 저장소 |
| 파일은 있지만 IMAP에 없음 | Dovecot 인증, namespace, 인덱스, 권한 |

고유한 테스트 표시와 제한된 시간 범위를 사용합니다. 큐 ID, SMTP 상태 분류, LMTP 결과와 마스킹된 사서함 결과만 보관합니다. 실제 주소, 인증 코드, Token, 제목, 본문, 첨부 이름, 전체 URL을 공유 로그나 Analytics에 보내지 않습니다.

## [설정을 바꾸기 전에 4개 필드 추적 카드를 만드세요](<https://once-email.com/ko/blog/corecomponent#%EC%84%A4%EC%A0%95%EC%9D%84-%EB%B0%94%EA%BE%B8%EA%B8%B0-%EC%A0%84%EC%97%90-4%EA%B0%9C-%ED%95%84%EB%93%9C-%EC%B6%94%EC%A0%81-%EC%B9%B4%EB%93%9C%EB%A5%BC-%EB%A7%8C%EB%93%9C%EC%84%B8%EC%9A%94>)

승인된 테스트 메시지 한 건에 대해 비식별화한 네 가지 사실만 보관합니다. 이를 연결해야 수신, 큐 인계, 최종 배달, 사서함 표시가 같은 트랜잭션인지 판단할 수 있습니다.

| 확인점 | 보관 항목 | 입증 범위 |
| --- | --- | --- |
| SMTP 수신 | 시간, 확장 상태 클래스, 축약 큐 ID | Postfix가 트랜잭션을 수신했음을 뜻하며 최종 배달 증명은 아님 |
| 큐 결과 | 같은 축약 ID, transport 이름, delivered/deferred 상태 | Postfix가 전송 경로를 선택하고 완료하거나 보류했음 |
| LMTP 결과 | 수신자와 본문이 없는 성공 또는 오류 클래스 | Dovecot LMTP가 최종 배달을 수락했거나 제한된 원인을 반환함 |
| 표시 결과 | 전후 사서함 개수와 애플리케이션 읽기 결과 | 저장소 변화와 실제 읽기 경로의 가시성을 확인함 |

먼저 읽기 전용으로 검사합니다. ` postqueue -p `는 큐를 나열하므로 전체를 내보내지 말고 축약 ID로 로컬 필터링합니다. ` doveadm mailbox status -u TEST_USER "messages unseen" INBOX `는 승인된 테스트 ID로만 카운터를 확인합니다. 공식 [Postfix 큐 도구](<https://www.postfix.org/QSHAPE_README.html>) 와 [Dovecot mailbox status](<https://doc.dovecot.org/2.4.2/core/man/doveadm-mailbox.1.html>) 가 값의 의미를 정의합니다. 시간과 비식별 마커도 일치하지 않으면 같은 메시지라는 증거가 아닙니다.

## [범주 오류와 안전한 확인 순서](<https://once-email.com/ko/blog/corecomponent#%EB%B2%94%EC%A3%BC-%EC%98%A4%EB%A5%98%EC%99%80-%EC%95%88%EC%A0%84%ED%95%9C-%ED%99%95%EC%9D%B8-%EC%88%9C%EC%84%9C>)

Dovecot 설치만으로 SMTP listener가 생기지 않고 Postfix만으로 IMAP 사서함이 제공되지 않습니다. SPF, DKIM, DMARC는 인증과 alignment를 제공하는 별도 계층입니다. [인증 결과 안내](<https://once-email.com/ko/blog/read-spf-dkim-dmarc-results>) 를 사용하십시오.

빈 큐는 성공의 증거가 아닙니다. bounce, 만료, 명시적 폐기 또는 이미 전달된 경우가 있습니다. 빈 사서함도 미도착 증거가 아닙니다. 조회 실패, 오프라인, 다른 namespace일 수 있습니다. “결과 없음”, “일시 실패”, “빈 상태 확인”을 구분합니다.

SMTP endpoint를 확인하고 승인된 고유 테스트 한 통을 보내 Postfix 수락, 큐와 최종 전달, Dovecot 저장, 실제 IMAP 읽기 순으로 추적합니다. 테스트 사서함을 삭제하고 마스킹된 증거만 남깁니다. 관찰 전에 두 서비스를 재시작하면 시간과 큐 증거가 사라지고 원인은 여전히 설명되지 않습니다.

## 관련 가이드

수신된 헤더를 읽고 이메일 전달 경로를 추적하는 방법

수신된 헤더 필드를 올바른 순서로 따르고, 타임스탬프를 안전하게 비교하고, 호스트 이름, IP 주소 및 신뢰할 수 없는 추적 데이터의 한계를 인식하세요.

[수신된 헤더를 읽고 이메일 전달 경로를 추적하는 방법](<https://once-email.com/ko/blog/read-received-headers>)

불안정한 테스트를 구축하지 않고 임시 이메일 API를 사용하는 방법

임시 이메일 API 테스트를 위한 실용적인 디자인: 각 실행을 분리하고, 백오프로 폴링하고, 올바른 메시지를 식별하고, 비밀을 보호하고, 항상 정리합니다.

[불안정한 테스트를 구축하지 않고 임시 이메일 API를 사용하는 방법](<https://once-email.com/ko/blog/temporary-email-api-testing-guide>)

확인 이메일이 도착하지 않습니까? 안전한 문제 해결 체크리스트

반복적으로 코드를 요청하거나 계정 보안을 약화시키지 않고도 주소 실수, 발신자 지연, 재시도, 필터링 및 사서함 제한을 해결합니다.

[확인 이메일이 도착하지 않습니까? 안전한 문제 해결 체크리스트](<https://once-email.com/ko/blog/anxiety>)

## 개인정보 보호 중심 이메일 도구

이메일 헤더 분석기

전달 경로와 SPF, DKIM, DMARC 증거를 설명하며 절대적인 진위 여부를 단정하지 않습니다.

[이메일 헤더 분석기](<https://once-email.com/ko/tools/email-header-analyzer>)

[많은 이메일 첨부파일을 UnpackFlow로 로컬에서 압축 해제하기 전용 폴더에서 각 다운로드를 확인하고 list, plan, run, start로 분할 및 중첩 압축을 온라인 업로드 없이 처리합니다.](<https://once-email.com/ko/blog/batch-email-attachments-unpackflow>) [임시 이메일은 얼마나 오래 지속되나요? 만료되기 전에 계획하세요 Once Email 평생 선택, 삭제 및 교체를 이해한 다음 무엇을 저장할지, 계정에 영구 복구 주소가 필요한 시기를 결정하세요.](<https://once-email.com/ko/blog/readbook>)
