Регулярные выражения php. Регулярные выражения (шаблоны). Комплексная проверка пароля

Это простой протокол передачи почты. С английского языка переводится, как Simple Mail Transfer Protocol . Исходя из названия, можно сделать вывод, что SMTP сервер отвечает за отправку почтовых рассылок. Его задача, как правило, состоит из двух основных функций:

  • проверка правильности настроек и выдача разрешения компьютеру, который пытается отправить электронное сообщение;
  • отправка исходящего сообщения на указанный адрес и подтверждение успешной отправки сообщения. Если доставка невозможна, сервер возвращает отправителю ответ с ошибкой отправки

Отправляя email сообщения, SMTP-сервер отправителя устанавливает связь с тем сервером, который будет получать это сообщение. Такое "общение" происходит путем отправки и получения команд, формируя SMTP-сессию с неограниченным количеством SMTP-операций. Обязательными командами для каждой операции являются три:

  • определение обратного адреса (MAILFROM)
  • определение получателя email сообщения (RCPT TO)
  • отправка текста сообщения (DATA)

Определение адреса отправителя, получателя и наличие содержимого письма – это обязательные условия, без которых письмо не будет отправлено, даже по обычной, знакомой нам "бумажной" почте. Что уже говорить про электронную.


Вкратце о пользе SMTP сервера

  • Как уже упоминалось, основным предназначением SMTP сервера является отправка и контроль исходящей почты. Качественный SMTP сервер способен быстро отправлять большой объем email сообщений , уклоняясь от ограничений провайдера.
  • В случае если вы используете внешний SMTP сервер, то безопасность email сообщений и процент их доставки в папку "входящие" значительноповышается.
    Где же найти этот внешний SMTP сервер? Детальнее об этом вопросе .
  • Электронная почта может проходить несколько SMTP серверов, прежде чем попадет в почтовый ящик получателя. Так как существует риск спам-атак, провайдеры зачастую пресекают отправку электронной почты без использования SMTP сервера. Поэтому пользователи порой имеют проблемы с рассылками писем.
    Решением может выступить установка/интеграция отдельного внешнего SMTP сервера, который к тому же будет фильтровать сообщения исходящей почты на спам и вирусы .
  • Повышение безопасности рассылок достигается так же и авторизацией пользователя , который использует SMTP сервер: задав индивидуальный логин и пароль для подключения к серверу.
  • И, что важно, интеграция SMTP сервера происходит без установки дополнительного программного обеспечения или других особых требований. Вы просто прописываете основные параметры SMTP сервера в настройках вашего почтового клиента, и можете приступать к массовым email рассылкам.

Если вы планируете заниматься легальным email маркетингом, задумайтесь об использовании внешнего SMTP-сервера для безопасности и скорости рассылки своих массовых email кампаний.

SMTP реализуется в современных сетях стандарта TCP/IP. Впервые информация об использовании протокола появилась еще в 1982 г. Несмотря на то, что сервер SMTP может быть использован и для получения сообщений, на сегодняшний день большинство почтовых клиентов используют его только для отправки, предпочитая другие технологии (например, POP или IMAP) для приема информации. Протокол является одним из наиболее популярных и используется подавляющим числом почтовых программ и серверов.

Функция SMTP заключается в проверке правильности указания настроек и параметров для отправки письма. По данному протоколу проходит верификация настроек компьютера пользователя, пытающегося отправить сообщения, а затем производится доставка, если все настройки были выполнены правильно. После этого работа SMTP не заканчивается и сервер дожидается сообщения об успешной доставке данных. Если сообщение по каким-то причинам не может быть доставлено, отправляется соответствующее сообщение отправителю.

Настройка SMTP

Настройка SMTP заключается в установке нужного программного обеспечения и определения адреса сервера, используемого для отправки. Для отправки со стороны пользователя требуется установить программу-клиент, которая умеет передавать письма и связываться с сервером SMTP по протоколу TCP/IP. После этого программа запускается и настраивается на работу с сервисом отправки и получения почты путем указания нужных настроек. Затем пользователь пытается отправить сообщение. Если настройка осуществлена верно, письмо будет доставлено адресату.

Большинство современных сервисов электронной почты уже имеют настроенные серверы для отправки сообщений. Если вы не пользуетесь сторонним программным обеспечением для отправки писем, вы сможете отправить письмо без произведения дополнительных настроек на сайте сервиса, где у вас зарегистрирован аккаунт.

Современные администраторы SMTP-серверов требуют от пользователей прохождения аутентификации перед тем, как они смогут отправить свое сообщение. Пользователю необходимо сначала указать свой логин и пароль на сервере, а лишь затем перейти к отправке. Данная защита используется для блокирования возможности рассылки спама, использующего простые SMTP-протоколы. Ранее же для идентификации в протоколе SMTP использовался уникальный IP-адрес отправителя.

Одним из основных элементов является конфигурация SMTP-сервера. Рассмотрим, что это такое и как произвести нужные настройки для различных ситуаций.

Что такое SMTP?

Сокращение SMTP происходит от английского словосочетания , что в переводе означает «простой протокол отправки почты». В основном область его применения ограничивается сетями на основе TCP/IP и пользовательским уровнем.

В любой мейл-программе, часто называемой почтовым клиентом, имеются специальные настройки, позволяющие сконфигурировать параметры протокола. Именно его посредством все электронные письма отправляются на почтовый сервер, где ожидают ретрансляции. Изначально SMTP-сервер использует TCP-порт под номером 25. Однако с развитием сервисов электронной почты настройки могут существенно изменяться.

Нужна ли настройка сервера при отправке письма с почтового сервиса?

Как правило, любой почтовый сервис в интернете, предлагающий пользователям услуги по отправке и получению электронной корреспонденции, уже оснащен заранее настроенным SMTP-сервером. То есть пользователю производить ничего не нужно.

Сами же сервисы для входа в собственный почтовый ящик требуют от пользователя только ввода логина и пароля, указанных при регистрации, и настраивать, например, SMTP-сервер Mail.Ru не требуется всего лишь по той причине, что в самом сервисе все это было сделано изначально (без этого служба просто не работала бы). Но что делать, если пользователь интернет-ресурсами по какой-то причине не пользуется, а предпочитает стандартные клиенты вроде майкрософтовских Outlook Express и Outlook или сторонние программные продукты, имея при этом зарегистрированный ящик именно в интернет-сервисе?

Настраиваем сервер SMTP (Mail.Ru - почтовый сервис, где зарегистрирован ящик)

Посмотрим на стандартные параметры, которые следует применить к данному сервису. Вне зависимости от используемого почтового клиента абсолютно все настройки будут идентичными.

Итак, для того чтобы правильно сконфигурировать SMTP-сервер Mail.Ru, следует задать следующие параметры:

  • сервер исходящей корреспонденции - smtp.mail.ru;
  • имя юзера - полное название зарегистрированного в сервисе адреса электронной почты;
  • пароль - текущее кодовое сочетание литер, цифр и символов, используемое для входа в ящик;
  • порт при выборе протокола шифрования SSL/TLS - 465.

После вступления в силу этих настроек почту можно будет принимать непосредственно в используемой пользовательской программе. Как видим, порт SMTP-сервера отличается от стандартного (25), но это связано уже с протоколами TCP/IP.

Настраиваем сервер SMTP на Yandex

Не менее популярным является и сервис Yandex.Ru. SMTP-сервер для него настраивается полностью аналогичным образом.

Однако для сервера исходящих сообщений применяется адрес smtp.yandex.ru, для порта указывается значение 465, но в настройках защиты устанавливается исключительно TLS.

Устанавливаем SMTP-сервер для рассылки

Теперь перейдем к более сложным ситуациям, когда пользователю по каким-либо причинам (например, для раскрутки собственного бизнеса или сайта) нужно осуществлять массовую рассылку. Заниматься этим вручную с использованием онлайн-сервисов или почтовых клиентов нет смысла хотя бы по той причине, что это занимает слишком много времени и сил. Поэтому можно поступить двояким способом - купить уже готовый настроенный SMTP-сервер или настроить его самому.

В первом случае, если приобретается «белый» сервер, это потребует весомых затрат, а также соблюдения всех условий разработчика или продавца. Можно, конечно, приобрести «серый» сервер, однако здесь нет гарантии, что он не будет внесен в спам-базы поисковых систем. Чревато это только тем, что тот же Yandex при поступлении писем с указанных источников будет просто фильтровать их и отправлять в раздел спама, а Mail.Ru и Google помечают корреспонденцию соответствующим индексом «спамности». Настройка же SMTP-сервера вручную выглядит и более надежной, и более экономной в плане финансовых затрат.

Для начала нужно приобрести сервер VPS с операционной системой Centos версии не ниже шестой. Сразу обратите внимание, есть ли возможность ввода записи PTR, которая позволит точно идентифицировать каноническое имя домена принимающим сервером.

Далее нужно установить панель Vesta. В качестве примера используем утилиту PuTTY, которую нужно скачать, установить и запустить. В настройках сразу прописываем IP-адрес сервера, далее жмем кнопку Open и прописываем логин root и пароль, предоставленный при покупке VPS-сервера.

Теперь последовательно вводим следующие команды:

curl -O http://vestacp.com/pub/vst-install.sh

bash vst-install.sh

Если возникает ошибка, решаем ее при помощи сочетания:

bash vst-install-rhel.sh —force

После этого вводим действительный адрес электронного ящика и название хоста. Через 5-10 минут панель установится.

https://IP сервера:8083

Возникает окно, где нужно ввести имя пользователя root и предоставленный пароль.

На следующем этапе регистрируем домен и переходим в панель параметров DNS, где меняем местами и A.

Ждем, пока произойдет обновление DNS-зон, и переходим на вкладку WEB в панели Vesta, где добавляем зарегистрированный домен.

После этого регистрируем аккаунты SMTP в разделе Mail. Для проверки в том же разделе используем вкладку Open Webmail. В появившемся окне EXIM-сервера вводим параметры созданного SMTP и отправляем пробное письмо. Если все нормально, можно себя поздравить.

Обратите внимание, что в некоторых случаях для массовой рассылки может потребоваться наличие цифровой подписи (не путать с записью PTR, которая отвечает только за подлинность домена или хоста). При ее отсутствии некоторые принимающие службы могут отнестись к рассылке недоверительно, а сама входящая корреспонденция будет помечена как сомнительная. Так что об этом нужно позаботиться заранее.

Вместо послесловия

Остается добавить, что настройка SMTP-сервера для почтовых клиентов не так уж сложна, как это могло показаться вначале. Но вот для массовых рассылок над настройкой придется, что называется, попотеть. И использовать можно не только тот вариант, который был представлен выше. Некоторые разработчики уже сегодня предлагают автоматизированные системы создания и настройки таких серверов за весьма умеренную плату (а то и вообще бесплатно).

Кликните «Настройки» на панели инструментов, или выберите пункт меню «Настройки»/ «Общие настройки» , и измените параметры настройки непосредственно используемой программы. При этом должно открыться новое окно. Все настройки сгруппированы в пять основных категорий:


Настройки отправки сообщений

Здесь можно изменить основные параметры настройки программы ePochta Mailer.

Поле Описание
Тайм-аут отправки Определяет, как долго ePochta Mailer должен ждать ответа сервера. Рекомендуемое время — 60 секунд.
Число повторов Устанавливает, сколько раз ePochta Mailer должен пытаться установить подключение к серверу. Когда не удается установить связь с нужным сервером с первого раза, программа повторяет попытку соединения. Рекомендуемое значение — 3 попытки.
Интервал повтора Пауза между попытками отослать e-mail , когда не удается установить связь с нужным сервером.
Значение HELO HELO адрес — это адрес вашего компьютера в сети Интернет. Программа определяет его автоматически. Значение HELO должно совпадать с тем, что определяется тут www.epochta.ru/ip .
Поле «КОМУ» Способ, с помощью которого ePochta Mailer создает имя пользователя (т. е. заполнение поля TO «Кому»).
Если отмечено «Автогенерация» , ePochta Mailer создаст имя на основе электронного адреса. Например, если электронный адрес bill@hotmail.com, имя пользователя, которое создаст программа, будет «Bill» .
Если отмечен параметр «Загрузить из списка» , ePochta Mailer загрузит информацию об имени пользователя из второй колонки базы «Списка получателей».
Кодовая страница Вам понадобится изменить данное значение на utf-8, если вы употребляете в письме английский язык.
Ограничения на домен Сколько слать писем на все домены из списка за определенное время. Требуется для очень больших списков чтобы не попасть в спам листы. На некоторых почтовых серверах задается ограничение — максимально возможное количество сообщений, принимаемых в течение часа с одного IP-адреса. К примеру, aol.com может принять с одного IP-адреса только 100 писем в час. Настройка позволяет указать сколько можно послать сообщений за промежуток времени. При отправке сообщений ведется статистика по доменам, сколько было отправлено сообщений за интервал времени (для однопоточной рассылки). Для многопоточной рассылки статистика заполняется перед отправкой письма. Если писем на домен больше, чем разрешено настройками, то письмо ставится в очередь ожидания


Настройка SMTP

Вы можете задать определенный тип отправки сообщения. ePochta Mailer поддерживает следующие типы отправки сообщений:

Напрямую

В данном режиме ePochta Mailer доставляет все сообщения непосредственно в ящики получателей. Данный способ является самым быстрым, но необходимо помнить, что некоторые интернет-провайдеры запрещают прямой доступ (т. е. SMTP порт #25 закрыт).


— количество подключений для одного SMTP сервера.

  • «Ждать секунд/минут после писем» — установка паузы в процессе рассыли путем введения времени перерыва после заданого количества отправленных писем.
  • «Лимит сообщений/час» — установка количества отправленных сообщений за час рассылки.

Напрямую. При ошибке через SMTP

ePochta Mailer пытается осуществить прямую отправку сообщения; но, если возникнут серьезные ошибки, программа осуществит отправку сообщения через указанный SMTP сервер. Установить нужный SMTP сервер можно в дополнительной нижней вкладке «Список релеев (SMTP)». Для того, чтобы изменить параметры уже указанного в списке SMTP-аккаунта, следует дважды кликнуть по нему левой кнопкой мыши или кликнуть по кнопке «+» в правом верхнем углу окна списка SMTP-аккаунтов.

«Лимит скорости» — устанавливается возможное количество отправленных сообщений за час. При увеличении значения лимита возрастает скорость отправки. Значение прямо пропорционально зависит от количества выбранных SMTP серверов.

«Потоков» — устанавливается количество потоков (соединений) для каждого SMTP сервера, количество потоков зависит от количества выбранных SMTP и суммируется автоматически.

«Многопоточная рассылка» — для каждого релея пользователем задается количество соединений (потоков). При старте, если не стоит галочка на «Использовать ротацию SMTP», суммарное количество потоков рассылки = сумме потоков всех активных SMTP.

«Использовать ротацию SMTP» — задает количество сообщений, которое высылает релей во время активности
этап 1 . Все релеи (SMTP) останавливаются.
этап 2. Из списка релеев выбирается следующий релей.
этап 3. Релей шлет количество сообщений (заданное в настройках ротации), с учетом ограничений, заданных в окне «SMTP-сервер»
этап 4. Как только активный релей высылает порцию сообщений (которое равно числу сообщений за ротацию), выполняется переход на следующий релей. Поочередно выполняются этапы 1-4.

Например, если выставлены настройки:
smtp.example.com — 4 потока,
smtp.examplesite.com — 5 потоков,
Стоит галочка на «Использовать ротацию смтп» 2 сообщ/сервер.
То рассылка будет производится в 2 потока.


Напрямую. SMTP по запросу

ePochta Mailer осуществляет прямую отсылку всех сообщений, за исключением отмеченных в списке в дополнительной нижней вкладке "Список доменов". При помощи этого списка, вы можете указать маски сообщений, которые необходимо отправить с помощью SMTP. Например, при вводе @aol.com и @wanadoo.fr все сообщения на данные адреса будут отправлены с помощью другого выбранного SMTP сервера.

«SMTP только для» — ввод списка доменов (например, gmail.com) для доставки сообщений через внешний SMTP. Для всех адресов с другими доменами будет использоваться отправка «Напрямую».


Только через внешний SMTP

Все сообщения отправляются с помощью указанного внешнего SMTP сервера. Возможно использование нескольких SMTP серверов, в этом случае ePochta Mailer будет использовать разные сервера для доставки сообщения (по очереди).

Для того, чтобы изменить параметры уже указанного в списке SMTP-аккаунта, следует дважды кликнуть по нему левой кнопкой мыши или кликнуть по кнопке «+» в правом верхнем углу окна списка SMTP-аккаунтов.

Многие SMTP серверы требуют аутентификации. ePochta Mailer поддерживает ESMTP (самая распространенная), CRAM MD5, DIGEST MD5 (с безопасной передачей пароля), а также POP3 аутентификацию (морально устаревшую). В случае, когда требуется аутентификация, введите имя пользователя и пароль (а также имя POP3 сервера для POP аутентификации).

Нужно ознакомиться с он-лайн документацией вашего провайдера или связаться с провайдером SMTP сервера и, узнав у них все настройки, ввести их в соответствующие поля:

«SMTP-сервер» — адрес cервера и порт

«Логин» и «Пароль» — поля заполняются, если требуется авторизация пользователя. В поле «Логин» можно использовать е-mail адрес.

«POP сервер» — заполняется, если в авторизации выбрано «POP before SMTP (устаревш.)». Ввод имени и порта протокола, если отправка будет происходить на сервера устаревших почтовых клиентов.

«Е-mail адрес отправителя» — электронный адрес почты, с которого можно вести рассылку через данный сервер — часто это тот же адрес, что и логин.

«Подключений к серверу (потоков)» — количество подключений для одного SMTP сервера (можно указать 1 поток, но некоторые серверы поддерживают и многопоточное соединения).

  • Ждать секунд/минут после писем — установка паузы в процессе рассыли путем введения времени перерыва после заданого количества отправленных писем.
  • Лимит сообщений/час — скорость рассылки: установка количества отправленных сообщений за час рассылки.

Настройка DNS

DNS определяет IP-адреса, то есть преобразовывает символьные имена в IP-адреса.

Также, DNS определяет серверы, на которые необходимо отправить сообщения. Обычно ePochta Mailer автоматически определяет DNS серверы. В случае, если вы хотите использовать другой DNS сервер, или же ePochta Mailer не смог определить его автоматически, выберите «Использовать особые значения» и укажите какие.


Настройка Proxy

Использовать прокси

ePochta Mailer может осуществлять отправку сообщений с помощью socks/ proxy-серверов. Программа поддерживает следующие типы proxy-серверов:

  • Socks 4
  • Socks 4A
  • Socks 5

Для ввода необходимого proxy-сервера, нажмите "+" в верхнем правом углу. Появится диалоговое окно редактирования:

Выберите тип proxy-сервера из списка и введите адрес и порт выбранного сервера. Если для данного сервера необходима аутентификация, введите имя пользователя и пароль. В ином случае, оставьте данные поля незаполненными. Возможно использование более одного сервера, в этом случае ePochta Mailer будет для каждого нового адреса для рассылки использовать разные proxy- сервера.

Ротация прокси

Это настройка подразумевает под собой поступательную рассылку сообщений через несколько SMTP серверов.

Число сообщений за ротацию «[_] сооб./прокси» — количество отправленных сообщений через один SMTP сервер. Как только установленная порция сообщений через активный SMTP сервер отправленна, выбирается следующий SMTP сервер для отправки очередной порции сообщений.

Таймаут (мс) [_] — время ожидания между запросами через proxy-сервер.

Повторить через (с) [_] — время ожидания перед повторным запросом через proxy-сервер.

Напрямую, если мертвы — отправка сообщений напрямую, если ни один proxy-сервер не отвечает.

Число попыток [_] — количество попыток отправки запросов через один proxy-сервер.

Программа предоставляет возможность проверить состоние всех proxy-серверов и удалить все мертвые еще до начала рассылки. Для этого используйте кнопку («Проверить все»). В процессе проверки появляется табличка с прогрессом проверки и кнопкой отмены.

В результате проверки предоставляется отчет, который дает возможность удалить все мертвые proxy-серверы из списка.

Заголовки

В этот раздел при потребности можно вводить дополнительные заголовки (необязательные и не стандартизированные).

Прочее

«Вести журнал работы» — создание log’ов для исходящих подключений (create logs for outgoing connections). Рекомендуется, чтобы данная опция была включена, т. к. в случае возникновения проблемы с отправкой сообщений, мы попросим вас выслать данные log’и для установки и устранения причины неисправности.

«Создавать отчёт о доставке» — после расылки будет создан HTML файл, в который будет включена сводная информация о сделанной рассылке. Эти отчёты далее всегда доступны в меню «Сервис» / «Открыть отчёты».

«Воспроизвести звук по окончании отправки» — после отправки сообщения ePochta Mailer будет воспроизводить заданный звуковой файл.

«Особый путь к сриптам для отслеживания» — не рекомендуется ничего сюда вводить, кроме случаев, если Вы используете собственные скрипты для мониторинга состояния рассылок ().

«Автоматически определять наличие обновлений» — автоматическая проверка программой наличия обновлений с запросом обновить программу на более новую версию.

«Не показывать панель «Посоветуйте друзьям» — если опция не активна, то данная панель будет представлена в окне программы. Возможность «посоветовать друзьям» осуществляется путем опубликования информации в Facebook, Twitter или других социальных сетях и интернт-мессенджерах.

Настройки отправки почты через SMTP

Встречаются случаи, когда сайтостроители сталкиваются с проблемой работы электронной почты сайта на CMS Joomla. Например, при отправки письма через форму обратной связи могут появляться ошибки следующего типа: "Could not instantiate mail function" или "Не удалось вызвать функцию mail" . Также возможен вариант отправления письма без появления ошибок, однако в результате оно все равно не доходит до адресата.

Почему же происходят данные проблемы с почтой? Чтобы ответить на данный вопрос необходимо в панели управления пройти по следующему пути: "Система" - "Общие настройки" - вкладка "Сервер" - раздел "Настройка почты".

В CMS Joomla предусмотрено три механизма отправки писем: PHP Mail, Sendmail и SMTP. По умолчанию используется PHP Mail с которым зачастую и происходят проблемы, которые, в основном, связаны с настройками используемого хостинга.

Исходя из вышеизложенного делаем вывод: либо обращаемся за помощью к хостинг провайдеру, либо используем способ отправки писем Sendmail или SMTP. Остановимся на использовании SMTP.

Настройки отправки почты при помощи SMTP

SMTP (англ. Simple Mail Transfer Protocol) - сетевой протокол, используемый для передачи электронной почты. Для использования SMTP необходимо корректно выставить настройки определенного почтового сервера, который будет использоваться.

Чтобы увидеть настройки SMTP, необходимо в "Способе отправки" выбрать "SMTP". Рассмотрим каждую настройку популярных почтовых серверов: Yandex, Mail, Gmail, Rambler и Yahoo.

Настройки SMTP для Yandex

  1. E-mail сайта: почтовый ящик на yandex.ru, например: [email protected]
  2. Защита SMTP: SSL
  3. Порт SMTP-сервера: 465
  4. Имя пользователя SMTP: логин ящика на yandex.ru, например: khasanov (без @yandex.ru)
  5. SMTP-сервер: smtp.yandex.ru

Настройки SMTP для Mail

  1. E-mail сайта: почтовый ящик на mail.ru, например: [email protected]
  2. Отправитель письма: запись, которая будет отображаться у адресата в поле "Отправитель"
  3. Отключить рассылку: вкл/откл. функции массовой рассылки писем
  4. Авторизация на SMTP-сервере: Да
  5. Защита SMTP: SSL
  6. Порт SMTP-сервера: 465
  7. Имя пользователя SMTP: почтовый ящик на mail.ru, например: [email protected]
  8. Пароль для SMTP: пароль от почтового ящика
  9. SMTP-сервер: smtp.mail.ru

Настройки SMTP для Gmail

  1. E-mail сайта: почтовый ящик на gmail.com, например: [email protected]
  2. Отправитель письма: запись, которая будет отображаться у адресата в поле "Отправитель"
  3. Отключить рассылку: вкл/откл. функции массовой рассылки писем
  4. Авторизация на SMTP-сервере: Да
  5. Защита SMTP: SSL
  6. Порт SMTP-сервера: 465
  7. Имя пользователя SMTP: почтовый ящик на gmail.com, например: [email protected]
  8. Пароль для SMTP: пароль от почтового ящика
  9. SMTP-сервер: smtp.gmail.com

Настройки SMTP для Rambler

  1. E-mail сайта: почтовый ящик на rambler.ru, например: [email protected]
  2. Отправитель письма: запись, которая будет отображаться у адресата в поле "Отправитель"