Como corrigir o erro "Error in processing. The server response was: Greylisted, please try again in

Exatamente, a solução pra esse erro bizarro. Quantas vezes você já viu esse erro?

Eu tive uma sexta-feira interessante. Foi o último dia com uma turma onde eu tive que substituir o instrutor. Eles tiveram alguns problemas com ele e eu fui o escolhido para a substituição. Tudo correu bem. Depois eu fui olhar o log de erros do meu blog (eu uso Elmah, a propósito) e vi um erro que nunca tinha visto antes:

System.Net.Mail.SmtpException
Error in processing. The server response was: Greylisted, please try again in 240 seconds

O tempo varia mas, depois de procurar no google por alguns instantes, achei a solução. Meu servidor tinha implementado algo chamado Greylisting que, de acordo com a Wikipedia, é uma maneira de defender os usuários de e-mail contra spam. Logo, e-mails não reconhecidos pelo sistema são automaticamente rejeitados por um tempo.

Como corrigir?

Tudo que precisei fazer foi criar uma conta de e-mail no meu servidor e adiciona-la no meu web.config da seguinte maneira:

<system.net>
	<mailSettings>
		<smtp>
			<network defaultCredentials="false" host="Mail@DomainName.com" port="25" userName="username@DomainName.com" password="ThisIsAPassword"/>
		</smtp>
	</mailSettings>
</system.net>

Obviamente você precisa colocar seu próprio host, username e password. :-)

E é isso.

Em tempo: A solução eu achei aqui here.

	<system.net>
		<mailSettings>
			<smtp>
				<network defaultCredentials="false" host="mail.davidsonsousa.net" port="25" userName="contact@davidsonsousa.net" password="D#sousa12"/>
			</smtp>
		</mailSettings>
	</system.net>