Короче говоря, мне нужно настроить SMTP-сервер в сети клиента, из которого я могу отправлять электронные письма. Этой штуке никогда не нужно будет получать электронные письма, и на самом деле требуется только одна учетная запись электронной почты для обслуживания клиентов.
Что я могу сделать? Придется ли мне, чтобы сетевая компания открыла порт в брандмауэре? Он встроен в Microsoft Server 2003?
Долгая история: клиент заплатил сетевой компании за перенос своего веб-сайта на дом. Теперь мне нужно выяснить, как отправлять электронные письма с их веб-сайта, даже если у них нет SMTP-сервера. По крайней мере, пока я его не установлю.
Их электронная почта сейчас размещается в Gmail (домен клиента через приложение Google для вашего домена). Я изменил свой код, чтобы подключиться как один из их пользователей «customercare@clientdomain.com» и отправить электронное письмо. Отлично проработал около 12 часов.
Внезапно ни одно из автоматических писем не отправляется, и Google отправляет электронные письма обратно, говоря, что это постоянный сбой и сообщение отклонено. Ссылка, на которую они меня направляют, http://mail.google.com/support/bin/answer.py?answer=69585 говорит мне, что наши электронные письма выглядят как спам. Это не так. Это электронные письма, которые мы отправляем нашим клиентам о статусе их заявок. Серьезно, они НЕ являются спамом.
У ongle все правильно: вы можете настроить Gmail в качестве smarthost для вашего виртуального сервера SMTP IIS следующим образом:
Это также работает с машиной XP с установленной службой SMTP IIS 5.1 (только что протестировал ее на моей машине).
Примечание: если вы еще этого не сделали, я бы порекомендовал создать пользователя электронной почты customercare@clientdomain.com в gmail и использовать его в качестве учетных данных SMTP для аутентификации с помощью gmail, потому что gmail проигнорирует то, что вы вставили в заголовок from:, и перепишет его как аутентифицированный пользователь (в любом случае по умолчанию, я не знаю, можете ли вы это изменить).
Что касается изменений брандмауэра, если в сетевой компании не включена фильтрация исходящего (исходящего) брандмауэра, вам не нужно открывать какие-либо порты, поскольку 587 обычно разрешен даже для жилых подключений.
Чтобы проверить этот почтовый ящик, я бы порекомендовал использовать POP или IMAP для этой учетной записи у сотрудников службы поддержки клиентов или просто настроить пересылку на другой адрес, который используется / проверяется.
Вы можете использовать IIS для внутренней настройки SMTP-сервера, который передает свою электронную почту интеллектуальному внешнему почтовому серверу, но это может не быть вашей реальной проблемой. Однако это даст вам центральную точку администрирования для отправки почты с вашего сервера (ов).
Чтобы помочь почтовому серверу узнать, что вы имеете право отправлять почту, вы можете создать SPF запись в вашей конфигурации DNS. Это позволяет почтовым серверам знать, что ваш адрес авторизован для отправки электронной почты от вашего имени.
Если вы не можете заставить его работать, вы также можете использовать поставщика, например AuthSMTP для отправки электронной почты из мест, внесенных в списки спама.
В дополнение к тому, что предложил ongle, вместо настройки smarthost (который может быть вам недоступен) добавьте удаленный домен с адресным пространством * .com и установите параметр, согласно которому входящая электронная почта может быть ретранслирована в этот удаленный домен. Таким образом, электронная почта, отправляемая через SMTP-сервер, может быть доставлена любому получателю с адресом электронной почты user@domain.com. Создайте удаленные домены для любых других gTLD, на которые вы будете отправлять электронную почту (.net, .edu и т. Д.).
В дополнение к тому, что уже было сказано, вам необходимо убедиться, что различные связанные элементы, такие как ваша запись SPF, настроены правильно. Я считаю, что Gmail довольно привередлив в таких вещах.