web-dev-qa-db-fra.com

Boîte aux lettres indisponible. La réponse du serveur était: 5.7.1 Impossible de relayer pour [email protected]

Je reçois le message "Boîte aux lettres indisponible. La réponse du serveur était: 5.7.1 Impossible de relayer [email protected]" lorsque j'essaie d'envoyer le courrier à l'aide d'ASP.NET. Le site est déployé sur un serveur IIS7, Windows 2008.

Le site Web fonctionnait correctement sous IIS6 et Windows 2003 Server. Je l'ai déployé sur IIS7, 2008, il a commencé à me donner cette erreur.

Quelqu'un en at-il déjà fait l'expérience?

83
Vinod T. Patil

Aahh l'a eu ... je l'ai eu travailler :)

Merci Christopher, ta suggestion est correcte.

Mais trouver "Serveur virtuel SMTP par défaut" était délicat;)

Même si vous utilisez IIS7 pour déployer votre site Web, vous devez ouvrir le Gestionnaire IIS6 pour configurer le serveur SMTP (pourquoi?).

J'ai configuré le serveur SMTP comme suit pour que tout fonctionne correctement:

  1. Ouvrez le Gestionnaire IIS6 à l’aide du Panneau de configuration -> Outils d’administration.
  2. Ouvrez les propriétés du serveur virtuel SMTP.
  3. Sous l'onglet Général, définissez l'adresse IP du serveur Web au lieu de "Tout non attribué".
  4. Dans l'onglet Accès, cliquez sur le bouton Relais, cela ouvrira la boîte de dialogue Restrictions de relais.
  5. Dans la liste des ordinateurs de relais, ajoutez l'adresse IP de bouclage i.e 127.0.0.1 et l'adresse IP du serveur Web afin qu'elles puissent transmettre/relayer des courriers électroniques via le serveur SMTP.
108
Vinod T. Patil

c’est là que réside la réponse ... Paramètres IIS

IIS -> Serveur virtuel SMTP par défaut -> Propriétés -> Accès -> Les restrictions de relais qui ajoutent ou excluent les adresses IP qui vous intéressent devraient résoudre le problème.

20
Christopher Klein

Je faisais face au même problème et suivais les étapes (très clairement énoncées) de la réponse de Vinod, mais cela créait une erreur différente:

Impossible de lire les données de la connexion de transport: net_io_connectionclosed

J'ai creusé un peu plus et fouillé et (bien que je ne sois pas sûr pourquoi cela a fonctionné) je l'ai résolu en:
- Retour à la console de gestion IIS6.0
- Ouvrir les propriétés du serveur virtuel SMTP
- Sous l'onglet Général, remplacez le paramètre "Adresse IP:" par "(Tout non attribué)".

Je ne sais pas pourquoi cela fonctionne, mais j'espère pouvoir aider une personne confrontée au même problème à l'avenir.

17
Mick Byrne

Comme une image vaut mille mots ..

Lorsque vous trouvez le gestionnaire IIS6 (j'ai constaté que la recherche de IIS peut renvoyer 2 résultats)], accédez aux propriétés du serveur SMTP, puis sur "Accès", puis appuyez sur le bouton de relais.

Ensuite, vous pouvez sélectionner tout ou ne permettre que certaines adresses IP comme 127.0.0.1.

SMTP Relay

15
Lee Englestone

Merci à Vinod pour la réponse bien présentée.

J'ai eu la même erreur que Mick Byrne quand j'ai suivi les étapes ci-dessus. En le retournant à All Unassigned, je l'ai trié, mais j'ai également dû modifier quelques autres choses:

  • Ajoutez l'utilisateur sous lequel mon site était exécuté aux utilisateurs de l'onglet Sécurité du serveur virtuel SMTP.
  • Changement de la valeur de l'attribut mailSettings> network> Host de mon web.config en IP spécifique du serveur (par exemple 192.168.100.120), par opposition à localhost (qui pointait à 127.0.0.1 dans le fichier hosts).

J'espère que cela épargnera quelques minutes à quelqu'un.

5
NikG

J'ai pu résoudre ce problème en modifiant les paramètres de messagerie dans la partie system.net de mon fichier.config:

<mailSettings>
    <smtp deliveryMethod="Network">
        <network Host="yourserver" defaultCredentials="true"/>
    </smtp>
</mailSettings>
4
patrickbadley

Si vous avez Exchange 2010 :

(Dans mon cas, le message d'erreur ne contenait pas "pour [email protected]")

Cela montre comment ajouter un connecteur de réception: http://exchangeserverpro.com/how-to-configure-a-relay-connector-for-exchange-server-2010/

Mais je devais aussi effectuer une étape trouvée ici: http://recover-email.blogspot.com.au/2013/12/how-to-solve-exchange-smtp-server-error.html =

  • Accédez à Exchange Management Shell et exécutez la commande.
  • Get-ReceiveConnector "JiraTest" | Add-ADPermission -User "NT AUTHORITY\ANONYMOUS LOGON" -ExtendedRights "ms-Exch-SMTP-Accept-Any-Recipient"

Pendant que j'y travaillais, j'ai exécuté ce qui suit sur la console PowerShell du serveur concerné jusqu'à ce que l'erreur disparaisse:

Send-MailMessage -From "[email protected]" -To "[email protected]" -Subject "Test Email" -Body "This is a test"
2
Todd

Voulu partager ce qui a causé l'erreur dans mon cas. Consacrez quelques heures à résoudre ce problème, alors espérons-le, cela vous aidera à économiser du temps.

Curieusement, l'erreur a été générée avec le Enable drop directory quota paramètre activé pour le domaine.

enter image description here

Je ne suis pas l'expert et je ne connais pas l'explication technique, mais décocher le paramètre mentionné a réglé le problème.

1
Morpheus