자체 메일 서버 운영은 셀프 호스팅 중 가장 어려운 일 중 하나이면서 가장 끌리는 일이기도 합니다. 불가능하지는 않지만 문제는 전달입니다. 대형 제공업체는 소규모 서버를 신뢰하지 않으며, 한 번의 실수로 메일이 스팸함에 들어갈 수 있습니다. 시작하기 전에 어떤 일인지 알아 두세요.
어려운 이유
- 평판. 주요 제공업체는 IP 주소 이력으로 발신자를 평가합니다. 새 서버는 평판이 없는 상태에서 시작합니다.
- 인증. SPF, DKIM, DMARC 레코드가 올바르지 않으면 메일이 거부되거나 스팸 처리됩니다.
- 역방향 DNS. IP가 메일 호스트 이름으로 다시 확인되어야 합니다.
- 지속적인 관리. 패치를 적용하고 큐를 모니터링하며 악용 신고를 처리해야 합니다.
해야 할 일
- SPF, DKIM, DMARC를 설정하세요. 서버가 내 도메인을 대신해 메일을 보낼 수 있음을 수신자에게 알려 줍니다.
- 역방향 DNS를 일치시키세요. 메일 호스트 이름과 맞추고, 그 호스트 이름이 같은 IP로 확인되는지 확인하세요.
- 송수신에 TLS를 사용하세요.
- 천천히 시작하세요. 처음에는 적은 양만, 메일을 기다리는 사람에게만 보내세요.
- 오픈 릴레이를 막으세요. 서버는 인증된 사용자를 위해서만 메일을 보내야 합니다.
- 사서함과 설정을 백업하세요. restic 또는 borg로 백업을 참고하세요.
하지 말아야 할 일
- 새 서버에서 대량 메일이나 마케팅 메일을 보내지 마세요. 그런 용도에는 전문 발송 서비스를 사용하세요.
- 인증과 TLS 없이 25, 143, 110번 포트를 열어 두지 마세요.
- 가능하면 다른 모든 것과 같은 작은 서버에서 메일을 운영하지 마세요.
- 반송 메일과 악용 신고를 무시하지 마세요.
필요한 레코드
example.com. TXT "v=spf1 mx -all"
mail._domainkey TXT "v=DKIM1; k=rsa; p=PUBLIC_KEY"
_dmarc.example.com. TXT "v=DMARC1; p=quarantine; rua=mailto:postmaster@example.com"
example.com. MX 10 mail.example.com.
값을 직접 사용하는 값으로 바꾸세요. 설정에 의존하기 전에 메일 테스터로 테스트하세요.
도움이 되는 도구
Mailcow, Mail-in-a-Box, Stalwart 같은 패키지형 메일 서버는 설정에서 어려운 부분을 처리해 줍니다. 비교해 보고 최신 문서를 읽어 보세요. 그래도 깨끗한 IP와 위의 DNS 레코드는 필요합니다.
더 쉬운 방법: 호스팅에 포함된 이메일
내 도메인의 사서함만 원한다면, 저희 무료 이메일 호스팅과 웹 호스팅 플랜에 서버 운영 없이 사서함 수 제한 없는 이메일이 포함되어 있습니다. 위에서 말한 전달 문제를 피할 수 있습니다.