Server관련/Sever(OS)

[SMTP Diag Tool] SMTP Relay Server 트러블 슈팅하기 프로그램

saltdoll 2021. 12. 1. 09:28
반응형

Sendmail의 SMTP 서버를 설정(sendmail.mc)을 하다 보면, 종종 메일 전송이 안 되는 경우가 발생할 수 있습니다.

저 같은 경우, 직원 중에 특정 인터넷 통신사를 사용할 경우 SMTP 보내기가 안된다고 불만을 토라 하는 분들이 있었습니다.

 

SMTP Relay 트러블 슈팅 하기

저의 경우, 특정 RBL(Real-time Blocking List)에서 차단하는 IP에서 SMTP로 Email를 보내려고 했기 때문이었습니다.

이런 경우, Sendmail 설정에서 추가한 RBL리스트 중에 제거를 해줘야 하는데요.

이런 이슈는 거의 서버 설정으로 생각하기 힘든 문제점이며,

문제점을 찾기가 많이 어렵습니다.

이 경우, SMTP가 전송이 안 되는 인터넷 라인에서

SMTP Diag Tool 해당 프로그램으로 실행해보면,

모니터링을 통해서 찾아볼 수 있습니다.

 

Blacklisting Errors

554 5.7.1: Service unavailable; Client host X.X.X.X blocked using zen.spamhaus.org

 

zen.spmhaus.org는 스팸 릴레이를 차단해주는 RBL사이트 중에 유명한 사이트입니다.

보내는 사람의 IP가 Blacklisted IP인 경우 차단되게 되어 있습니다. 

(보통 스타벅스, 공공시설과 같은 경우 이 IP 차단에 걸리는 경우가 많습니다.)

 

해결책은 sendmail.mc의 설정 파일 중에 zenhaus.org 주석처리

dnl # FEATURE(`dnsbl', `zen.spamhaus.org', `"550 Mail from " $`'&{client_addr} " Rejected refused - see http://www.spamhaus.org/"')dnl

sendmail.mc 설정에 주석 처리 후,

m4명령어로 sendmail.cf를 만들어주고 Sendmail를 재시작하면 됩니다.

 

# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
# /etc/init.d/sendmail restart

CentOS 7이후 ~
# systemctl restart sendmail

 

 

SMTP Diag Tool  - SMTP Relay Troubleshooting

 

SMTP Diag Tool은 SMTP의 전송하는 통신 상태를 모니터링을 위한 프로그램입니다.

 

SMTP 테스트 확인 프로그램

SMTP Server: 서버 도메인 (예: smtp.google.com)

Port: SMTP포트 (예: 25, 587)

Username: 이메일 아이디 (예: test)

Password: 이메이 패스워드 (예: 12@34)

From: 보내는 사람 이메일 주소 (예: test@gmail.com)

To: 받는 사람 이메일 주소 (예: test2@daum.net)

 

Test SMTP: 메일 전송하기

 

이메일 전송하면 주고 받는 정보가 나옵니다.

해당 프로그램을 SMTP 서버에 접속하여서,

통신의 흐름을 로그로 확인되면서, 문제점을 찾는데 큰 도움을 줍니다.

 

설치 시, 필수 요구 사항은 ". net framework 4"가 설치되어 있어야 합니다.

https://adminkit.net/smtp_diag_tool.aspx

SMTP Diag Tool 사이트 화면

 

프로그램은 Install버전과 zip 버전이 있습니다.

 

SMTP Diag Tool version 1.0.0 (Apr 2012) zip 버전입니다.

SMTP_Diag_Tool.zip
0.70MB

 

 

 

SMTP 오류 리스트 

SMTP 문제점 들은 아래와 같이 다양하고, 아래의 문제 이외에도 무수히 많습니다.

 

 

SMTP Username과 Password 오류

Error: authentication failed

 

보내는 사람 이메일이 문제 (잘못된 From Email Address)

Sender address rejected

 

SMTP 인증 오류 - SMTP Relay server 관리자가 차단한 경우

421 4.7.1: Sender address rejected: Account disabled

 

보내는 사람의 Domain의 문제가 있을 경우 (예: DNS 설정에 MX / A 레코드가 없는 경우)

이 경우 상세한 정보를 https://mxtoolbox.com에서 확인이 가능합니다.

450 4.1.8: Sender Address Rejected: Domain Not Found

 

SMTP에서 보내려는 도메인을 whitelist에 추가가 필요한 경우.

553 5.7.1: Sender address rejected: not owned by user

 

자격 증명이 오류나 MX 레코드 설정 오류 시

554 5.7.1: Sender address rejected: Access denied

 

SMTP Relay서버에서 이메일 제목과 내용에 스팸 처리가 되는 문장 있는 경우

554 5.7.1 : Message cannot be accepted, spam rejection

554 5.7.1 : Message refused by Dictionary check

 

SMTP Relay 룰 오류

554 5.7.1 : Message cannot be accepted, rules rejection

 

스팸 이메일로 인지 될 때 리턴되는 메시지

오류 예제 >>
554 5.7.1 : The message from (<foo@example.com>) with the subject of (…) matches a profile the Internet community may consider spam. Please revise your message before resending.
554 5.7.1 : Email cannot be delivered. Reason: Email detected as Spam by spam filters.
554 5.7.1 : [MW01] Message content not accepted for policy reasons

 

** 블랙리스트 IP에서 메일을 보낼 때. (저의 케이스) - 본인의 IP가 블랙리스트 인지 체크해봅니다.

554 5.7.1: Service unavailable; Client host X.X.X.X blocked using zen.spamhaus.org

 

잘못된 이메일 또는 존재하지 않는 이메일로 보낸 경우

554 5.7.1: <example@testdomain.com>: Sender address rejected: testdomain.com is not allowed to send email to mydomain.com

 

 

추가로, 일반적으로 사용하는 SMTP 포트들

25 – Default SMTP PORT
465 – SSL Connection
587 – TLS Connection
2525 – An alternative port of 587

 

 

참고 사이트: How to Trobleshoot SMTP Relay?

 

How to Troubleshoot SMTP Relay ? - Mail250 - An AI driven Bulk Email Marketing Solution

Step by step Guide on how to Troubleshoot an SMTP Relay Server

mail250.com

 

반응형
도움이 되셨다면 하트모양의 "♡ 공감"을 눌러주시면 큰 격려가 됩니다.
(로그인하지 않으셔도 가능)