사서함을 사용할 수 없습니다. 서버 응답 : 5.7.1 abc@xyz.com에 대해 릴레이 할 수 없음 [닫힘]


84

ASP.NET을 사용하여 메일을 보내려고 할 때 " 메일 함을 사용할 수 없습니다. 서버 응답은 5.7.1 abc@xyz.com에 대해 릴레이 할 수 없습니다 " 였습니다 . 이 사이트는 IIS7, Windows 2008 서버에 배포됩니다.

웹 사이트는 IIS6 및 Windows 2003 Server에서 제대로 작동했습니다 . IIS7, 2008에 배포했는데이 오류가 발생하기 시작했습니다.

전에 경험 한 사람이 있습니까?



Stack Overflow는 프로그래밍 및 개발 질문을위한 사이트입니다. Stack Exchange 네트워크 의 다른 사이트를 사용 합니다 .
jww

답변:


115

Aahh 됐어 ... 나는 됐어 :)

고마워 크리스토퍼, 당신의 제안이 맞습니다.

그러나 "기본 SMTP 가상 서버"를 찾는 것은 까다로 웠습니다.)

IIS7을 사용하여 웹 사이트를 배포하더라도 SMTP 서버를 구성하려면 IIS6 관리자를 열어야합니다 (이유는 무엇입니까?).

작업을 수행하기 위해 다음과 같이 SMTP 서버를 구성했습니다.

  1. 제어판-> 관리 도구를 사용하여 IIS6 관리자를 엽니 다.
  2. SMTP 가상 서버 속성을 엽니 다.
  3. 일반 탭에서 "All Unassigned"대신 웹 서버의 IP 주소를 설정합니다.
  4. 액세스 탭에서 릴레이 버튼을 클릭하면 릴레이 제한 대화 상자가 열립니다.
  5. 릴레이 컴퓨터 목록에서 루프백 IP 주소 (예 : 127.0.0.1 및 웹 서버의 IP 주소)를 추가하여 SMTP 서버를 통해 이메일을 전달 / 릴레이 할 수 있도록합니다.

3
이 사용 있도록 IIS 7.X, 그 자신의 SMTP 서버 구성 요소가 없기 때문에이 요구가 IIS 6에서 관리 할 수있는 이유는 IIS 6입니다
MemeDeveloper

5
내 web.config에서 "localhost"라는 이름으로 내 smtp 서버를 참조했습니다. 3 단계를 따랐 으면이 솔루션이 실패했습니다. 3 단계를 생략하면 작동했습니다. 감사합니다 :)
Paul Suart 2013

1
이는 IIS8 및 서버 2012에도 적용됩니다
Isaac Bolinger

Office 365의 계정을 통해 이메일을 보내기 위해 릴레이를 사용하고 있습니다. 웹 서버의 SMTP 서버를 사용하지 않는 경우에도 IIS 6에 smtp 서버를 설치해야합니까? 이것은 IIS 10을 실행하는 Windows Server 2016에 있습니다. 누구든지이 문제에 대한 제안이나 해결책이 있습니까? 미리 감사드립니다!
Nathan

대단히 감사합니다! 내 문제를 해결했습니다.
Nanou Ponette 18.11.30

20

여기에 답이 있습니다 ... IIS 설정

IIS-> 기본 SMTP 가상 서버-> 속성-> 액세스-> 릴레이 제한은 관심있는 IP를 추가하거나 제외하기 만하면 문제가 해결됩니다.


2
"기본 SMTP 가상 서버"는 어디에 있습니까? IIS7을 사용하고 있습니다. IIS6에는 "SMTP 가상 서버"가 있지만 IIS &에는 그렇지 않습니까?
Vinod T. Patil

18

나는 똑같은 문제에 직면했고 Vinod의 대답에서 (매우 명확하게 설명 된) 단계를 따랐지만 이것은 다른 오류를 일으켰습니다.

전송 연결에서 데이터를 읽을 수 없습니다 : net_io_connectionclosed

나는 조금 더 파고 파고 들었고 (왜 이것이 효과가 있는지 모르겠지만) 다음과 같이 해결했습니다.
-IIS6.0 관리 콘솔로 돌아 가기
-SMTP 가상 서버 속성 열기
-일반 탭에서 'IP 주소 : '설정을 다시'(모든 할당되지 않음) '으로 설정

이것이 왜 효과가 있는지 확실하지 않지만 앞으로 같은 문제에 직면 한 사람을 도울 수 있기를 바랍니다.


15

사진은 천 마디의 가치가 있습니다 ..

IIS6 관리자를 찾으면 (IIS를 검색하면 2 개의 결과가 반환 될 수 있음을 발견했습니다) SMTP 서버 속성으로 이동 한 다음 '액세스'로 이동 한 다음 릴레이 버튼을 누릅니다.

그런 다음 모두 선택하거나 127.0.0.1과 같은 특정 IP 만 허용 할 수 있습니다.

SMTP 릴레이


5

잘 제시된 답변에 대해 Vinod에게 감사드립니다.

위의 단계를 따랐을 때 Mick Byrne과 같은 오류가 발생했습니다. All Unassigned로 되 돌리면 정렬되었지만 몇 가지 다른 사항도 조정해야했습니다.

  • SMTP 가상 서버의 보안 탭에있는 사용자에 내 사이트가 실행되고 있던 사용자를 추가합니다.
  • 내 web.config의 mailSettings> 네트워크> 호스트 속성 값을 localhost (hosts 파일에서 127.0.0.1을 가리킴)가 아닌 특정 서버 IP (예 : 192.168.100.120)로 변경했습니다.

이것이 누군가를 엉망으로 만드는 데 몇 분을 절약하기를 바랍니다.


4

내 web.config의 system.net 부분에서 메일 설정을 변경하여이 문제를 해결할 수있었습니다.

<mailSettings>
    <smtp deliveryMethod="Network">
        <network host="yourserver" defaultCredentials="true"/>
    </smtp>
</mailSettings>

2

Exchange 2010 이있는 경우 :

(제 경우에는 오류 메시지에 "for abc@xyz.com"이 포함되지 않았습니다.)

다음은 수신 커넥터를 추가하는 방법을 보여줍니다. http://exchangeserverpro.com/how-to-configure-a-relay-connector-for-exchange-server-2010/

하지만 여기에있는 단계도 수행해야했습니다. http://recover-email.blogspot.com.au/2013/12/how-to-solve-exchange-smtp-server-error.html

  • Exchange 관리 셸로 이동하여 명령을 실행합니다.
  • Get-ReceiveConnector "JiraTest"| Add-ADPermission -User "NT AUTHORITY \ ANONYMOUS LOGON"-ExtendedRights "ms-Exch-SMTP-Accept-Any-Recipient"

이 작업을 수행하는 동안 오류가 사라질 때까지 영향을받는 서버의 PowerShell 콘솔에서 다음을 실행했습니다.

Send-MailMessage -From "myemail@server.com.au" -To "myemail@server.com.au" -Subject "Test Email" -Body "This is a test"

1

제 경우에 오류의 원인을 공유하고 싶었습니다. 이것을 알아내는 데 몇 시간을 보내십시오. 누군가 시간을 절약하는 데 도움이되기를 바랍니다.

이상하게도 Enable drop directory quota도메인에 대한 설정이 활성화 되어 오류가 발생했습니다 .

여기에 이미지 설명 입력

나는 전문가가 아니며 기술적 인 설명을 모르지만 언급 된 설정을 해제하면 문제가 정렬됩니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.