Доказательство концепции По такому названию довольно сложно понять «кому это вообще нужноЭ», поэтому начнем с небольшого предисловия.
Ни для кого не секрет, что интернет-провайдеры очень агрессивно относятся к малому бизнесу.
Условия обслуживания для физических и юридических лиц примерно одинаковы, но цена варьируется довольно существенно.
Монопольная ситуация в некоторой степени была исправлена с появлением таких стандартов, как LTE и 4G, но условия обслуживания по-прежнему остаются весьма далекими от гуманных.
Итак, данная статья посвящена тем, кто по тем или иным причинам вынужден взаимодействовать с провайдером, который предоставляет внешний IP-адрес, но не позволяет редактировать соответствующие записи обратного DNS. Наверняка многие знают, что в качестве требования к почтовым серверам помимо DKIM-записей и прочих проверок существует также обязательное наличие обратной DNS-записи.
В противном случае письма либо не придут вообще, либо попадут в папку «Спам».
Далее мы рассмотрим приведенные выше факты.
Основная идея
Какие варианты остаются? Во-первых, это прозрачные SMTP-прокси-сервисы.Но в этом случае клиент будет получать письма со стороннего домена, что вполне естественно может вызвать недоверие клиента к вашему ресурсу.
Во-вторых, это волшебство.
Давайте подумаем о последнем.
Идея состоит в том, чтобы избавиться от вашего IP как от стартового реле.
В этом нам помогут услуги Gmail Hosted. Процедура настройки вашего домена для использования хостинга Gmail довольно проста и хорошо документирована.
Все подробности здесь: Google Apps для бизнеса .
Настроив свой домен для работы с сервисами Gmail Hosted и зарегистрировав соответствующий почтовый ящик для общения с клиентами (предположим, это [email protected]), вы очень хотите автоматически оповещать своих клиентов о событиях из кода вашего ресурса.
Но если в этой конфигурации мы попытаемся использовать учетную запись [email protected] в качестве ретранслятора, мы получим то же самое, что и оставили.
Нанимать сотрудника для входа в веб-интерфейс и отправки оповещений неразумно.
Много кода
В моем примере я использую ОС FreeBSD, поэтому «как есть» этот пример можно использовать только на ней.Есть отличный консольный браузер elinks, который умеет многое, но не JavaScript. Независимо от того, насколько документация уверяет вас в обратном, это не так; elinks интерпретирует JavaScript только как язык сценариев действий пользователя.
Но, так или иначе, это не должно нас останавливать, потому что.
Gmail по-прежнему совместим с браузерами, не поддерживающими интерпретатор JavaScript. Как это будет работать:
- Перехват встроенной в php функции mail()
- Вывод аргументов функции mail() во внешнюю среду исполнения
- Запуск elinks, авторизация в системе Gmail
- Перейдите на страницу создания письма, заполните соответствующие поля письма.
- Отправка формы и последующая отправка электронного письма
Нам понадобится:
- PHP в сочетании с любым HTTP-сервером
- Плагин APD для PHP (для перехвата базовой функции mail())
- Python с модулем pyexpect (для диалога с процессом elinks)
- Напрямую связывается с поддержкой сценариев на Lua.
- Пакет sudo используется для предоставления процессу elinks разрешения на создание сокетов, которые ему необходимы для запуска.
Взять быка за рога
Перехват встроенной в PHP функции mail(), вывод аргументов функции mail() во внешнюю среду исполнения
В любую постоянно включенную область страницы вашего проекта добавьте следующий код:Теги: #SMTP #Gmail #php #mail #pyexpect #elinks #1С-Битриксfunction my_mail($args) {
-
Обслуживание Компьютеров – Сделай Сам!
19 Oct, 24 -
Авогадро, Амедео
19 Oct, 24 -
Возвращение Блудного Сына
19 Oct, 24 -
Обращение К Пользователям Google Reader
19 Oct, 24 -
Вывод На Вебмани С Раннера
19 Oct, 24