"501 구문적으로 잘못된 HELO 인수"를 어떻게 수정합니까?

StackOverflow https://stackoverflow.com/questions/86907

  •  01-07-2019
  •  | 
  •  

문제

송신 호스트와 중계 호스트 모두에서 exim을 사용하고 있는데 송신 호스트는 다음을 제공하는 것 같습니다.

HELO foo_bar.example.com

응답:

501 Syntactically invalid HELO argument(s)
도움이 되었습니까?

해결책

호스트 이름의 밑줄에 문제가 있을 수 있습니까?http://www.exim.org/lurker/message/20041124.113314.c44c83b2.en.html

다른 팁

어쨌든 일부 사람들이 밑줄을 사용하고 있음에도 불구하고 인터넷 호스트 이름에서는 밑줄이 실제로 유효하지 않습니다.정상적인 DNS 서버에서는 이에 대한 기록을 허용해서는 안 됩니다.

시스템의 호스트 이름을 유효하게 변경하십시오. 이 방법으로 문제가 해결되기를 바랍니다.

이 문제를 해결하기 위해 많은 시간을 소비한 후, 제 경우에는 아무 것도 없이 문제가 발생하여 결국 해결책을 찾았습니다.제 경우에는 Suse OS에 배포된 시스템만 갑자기 이메일 전송을 중단했지만 Ubuntu에서 실행 중인 시스템은 그렇지 않았습니다.제안된 모든 항목을 소진하고 제거한 후 가능성 이 문제를 해결하고 해당 컴퓨터의 OS를 변경하는 것을 고려하더라도 이메일 보내기 서비스가 호스트 컴퓨터의 호스트 이름에 적합하다는 것을 알았습니다.Ubuntu 시스템에서 /etc/hosts 파일에는 다음 줄만 있습니다.

127.0.0.1 localhost

이메일 전송을 중단한 Suse 시스템도 마찬가지였습니다.Suse 시스템에서 /etc/hosts를 편집한 후

127.0.0.1 localhost proplad

여기서 proplad는 시스템의 호스트 이름이므로 오류가 사라졌습니다.일부 보안 정책(아마도 smtp 서비스의 경우)은 API를 통해 전달된 호스트 이름 정보를 사용하는 것 같습니다. 이는 Ubuntu 시스템의 경우 무시되었지만 Suse 시스템의 경우에는 무시되었습니다.이것이 인터넷을 통한 엄청난 시간의 조사를 피하면서 다른 사람들에게 도움이 되기를 바랍니다.

Diago의 답변은 제가 알아내려고 노력했던 문제를 해결하는 데 도움이 되었습니다.

Suse OS도 갑자기 작동을 멈췄습니다.여기와 Google에서 찾은 모든 제안을 시도했습니다.아무것도 작동하지 않았습니다.etc/hosts에 도메인을 추가해 보았으나 도움이 되지 않았습니다.

호스트 이름 명령을 사용하여 서버의 호스트 이름을 얻었습니다.Digao가 제안한 것처럼 해당 호스트 이름을 etc/hosts 파일에 추가했습니다.

127.0.0.1 localhost susetest

변경 사항을 저장한 다음 postfix stop, postfix start를 실행했습니다.그리고 지금은 매력처럼 작동합니다.

에 대한 주장 HELO 호스트 이름 또는 IP 주소여야 합니다.foo_bar.example.com은 IP 주소도 아니고 호스트 이름도 아닙니다(호스트 이름에 밑줄은 사용할 수 없습니다). 따라서 오류 메시지는 정확하며 수정할 사항이 없습니다.

큐메일을 사용하여 나는 이 문제를 발견했습니다.나는 이것이 이전에 완료되지 않은 설치 때문이라는 것을 깨달았습니다.

1) 이메일을 보낼 때 큐메일은 "HELO ..."로 다른 SMTP 서버에 자신을 알린 다음 파일에 있는 내용을 다음 위치에 추가합니다. /var/qmail/control/me

(때로는 파일이 다음 위치에 있습니다. /var/qmail/control/helohost)

2) 이 파일에는 유효한 DNS 항목이 포함된 호스트 이름이 있어야 합니다.

내 것은 그렇지 않았어 (none) 그래서 메일이 전송되지 않았습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top