이름 확인 후 sendmail 메시지가 전송되지 않는 문제 수정

이름 확인 후 sendmail 메시지가 전송되지 않는 문제 수정

내 서버에서 sendmail은 간단한 메시지를 보내는 데 60초가 걸립니다. 구글링을 해보니 DNS 문제라는 것을 알게 되었습니다. 다음 로그가 있습니다.

Sep 13 08:00:01 myserver sm-msp-queue[1493]: 내 자격이 없는 호스트 이름(myserver)을 알 수 없습니다. Sleep 재시도
Sep 13 08:01:01 myserver sm-msp-queue[1493]: 내 자격을 부여할 수 없습니다. 도메인 이름(myserver) - 짧은 이름 사용

해결책은 /etc/hosts를 편집하고 끝에 점이 있는 이름을 추가하는 것입니다.

127.0.0.1 로컬호스트 로컬호스트.
127.0.0.1 내 서버 내 서버.

이제 sendmail은 매우 빠르게 실행되지만 메일은 더 이상 전송되지 않습니다. 내 Gmail 계정으로 "안녕하세요" 메시지를 보냈습니다.

에코 "안녕하세요" | 메일 보내기 -v"[이메일 보호됨]"

원격 서버에서 메시지를 거부할 수도 있다는 말을 들은 적이 있는데, 호스트 파일이 변경되기 전에 메시지가 전달되기 때문에 이해가 되지 않습니다. 메일 서버를 호스팅하고 싶지 않습니다. 나 자신에게 메시지를 보내면 됩니다. 위 명령줄의 출력은 다음과 같습니다.

220 myserver. ESMTP Sendmail 8.14.4/8.14.4/Debian-4.1ubuntu1; Fri, 18 Sep 2015 13:50:45 -0300; (No UCE/UBE) logging access from: localhost(OK)-localhost [127.0.0.1]
>>> EHLO myserver.
250-myserver. Hello localhost [127.0.0.1], pleased to meet you
...
250 2.0.0 Verbose mode
>>> MAIL From:<www-data@myserver> SIZE=3 AUTH=www-data@myserver
250 2.1.0 <www-data@myserver>... Sender ok
>>> RCPT To:<[email protected]>
>>> DATA
553 5.1.8 <[email protected]>... Domain of sender address www-data@myserver does not exist
503 5.0.0 Need RCPT (recipient)
>>> RSET
250 2.0.0 Reset state
>>> RSET
250 2.0.0 Reset state
www-data@myserver... Using cached ESMTP connection to [127.0.0.1] via relay...
>>> MAIL From:<> SIZE=1027
250 2.1.0 <>... Sender ok
>>> RCPT To:<www-data@myserver>
>>> DATA
250 2.1.5 <www-data@myserver>... Recipient ok
354 Enter mail, end with "." on a line by itself
>>> .
050 <www-data@myserver>... Connecting to local...
050 <www-data@myserver>... Sent
250 2.0.0 t8IGojKw022539 Message accepted for delivery
www-data@myserver... Sent (t8IGojKw022539 Message accepted for delivery)
Closing connection to [127.0.0.1]
>>> QUIT
221 2.0.0 myserver. closing connection

실제 보낸 사람 주소를 지정하면 메시지가 배달됩니다.

echo "안녕하세요" 메일 보내기 -vf"[이메일 보호됨]" "[이메일 보호됨]"

하지만 지금은 아니고 자신의 이름을 확인할 수 없는 상황에서 메시지를 전달하는 이유는 무엇입니까?

답변1

좋아요 그런 일이 일어나면 싫어요. 게시한 후에야 해결책을 찾았습니다. @thrig 말이 맞아요. 완전한 이름이어야 합니다. "hosts" 파일을 다음과 같이 변경했습니다.

127.0.0.1 localhostlocalhost.local
127.0.0.1 myserver myserver.local

지금은 잘 작동합니다. 다들 감사 해요.

관련 정보