SMTP를 통해 로컬로 실행되는 Exim 인스턴스와 통신하기위한 Exim 구성?


0

나는 사용하고있다. 가기 Exim의 로컬로 실행되는 인스턴스에 SMTP 프로토콜을 사용하여 전자 메일을 보내려합니다.

나는 같은 Centos 7 컴퓨터에서 제공되는 많은 도메인을 보유하고 있습니다. 해당 도메인은 모두 이메일을 수신하도록 구성됩니다. 얀 데스 . 나는 한계에 부딪 치고 싶지 않다. 얀 데스 나는 많은 양의 이메일을 보낼 것이기 때문에.

Gmail 제안 됨

로컬 메일 서버 사용 - 로컬 메일 서버가있는 경우이를 사용하여 수신자에게 직접 메일을 보내 제한 전송을 피하십시오. 메시지가 스팸으로 표시되지 않게하려면이 로컬 서버를 SPF 레코드에 추가해야합니다.

나는 exim -t 골란 코드와 함께 Gomail 패키지의 WriteTo () BCC 헤더가 포함 된 이메일은 exim에 전달되지 않았습니다.

그래서 나는 SMTP 프로토콜을 on으로 사용하도록 권고 받았다. 스택 오버플로 Gomail은 SMTP에서 완벽하게 작동합니다.

나는 그것을 달성하기 위해 다음 코드를 사용했다.

m := gomail.NewMessage()

m.SetHeader("From", "me@example.com")
m.SetHeader("To", "you@example.com")

m.SetAddressHeader("Bcc", "youbcc@example.com", "Bcc Email")

m.SetHeader("Bcc", "anotherbcc@example.com", "yetbcc@example.com")

m.SetHeader("Reply-To", "me@example.com")
m.SetHeader("Subject", "Subject is to gomail to be discussed")
body := `Why is bcc not getting populated`
m.SetBody("text/html", body)

d := gomail.NewDialer("127.0.0.1", 587, "", "")
d.TLSConfig = &tls.Config{InsecureSkipVerify: true}

if err := d.DialAndSend(m); err != nil {
    panic(err)
}

다음과 같은 오류가 발생했습니다.

공황 : gomail : 이메일을 보낼 수 없음 1 : 550 me@example.com에 대한 확인 실패   라우팅 할 수없는 주소   보낸 사람 확인에 실패했습니다.

Exim Logs Says :

H = localhost [127.0.0.1] me@example.com에 대한 보낸 사람 확인 실패 : 라우팅 할 수없는 주소

H = localhost [127.0.0.1] X = TLSv1.2 : ECDHE-RSA-AES128-GCM-SHA256 : 128 CV = 아니요 F = me@example.com은 RCPT를 거절했습니다 you@example.com : 보낸 사람 확인에 실패했습니다.

It means Exim failed to verify your From address for some reason. What exactly reason depends on how Exim is configured.

여기에 말했다.

그래서 내 질문에 어떻게 코드를 수정합니까 / Exim 구성 ( VestaCP에 의해 구성됨 )

추신. 실제 코드에서 실제 이메일을 사용하고 있습니다!


1
너 희롱 했니? 이 질문들 ? 말하다, 이 하나 두 가지 가능성에 대한 힌트 : 발신자의 도메인에 대한 MX 레코드 및 발신자 확인을 사용 중지합니다. . 내말은, 당신 자신의 연구를합니까? 당분간, 나는 당신을 위해 그것을하는 것처럼 보이지만, 자유로운 시간은 제한되어 있습니다.
— kostix
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.