Настройка SMTP-сервера, использование и рекомендации

Опубликовано: 2022-04-08

Вы когда-нибудь задумывались, как на самом деле работают электронные письма. Когда вы отправляете электронное письмо, и через несколько секунд оно оказывается в папке «Входящие» вашего получателя, технология, лежащая в основе того, как это происходит, — это простой протокол передачи почты (SMTP). Как электронные письма хранятся на сервере после получения с использованием сервера IMAP / POP3, это история для другого времени, сейчас мы рассмотрим SMTP, и к концу статьи мы надеемся, что у вас есть полное представление о протоколе STMP, SMTP-серверах. , Общие параметры и как гарантировать, что ваши электронные письма попадут в СПАМ.

Оглавление
Что такое SMTP?
Что такое SMTP-сервер?
Как работает SMTP?
Общий SMTP-порт и адрес
Общие имена SMTP-серверов
Массовые настройки провайдера SMTP-сервера
Использование SMTP-сервера с WordPress
Настройка собственного SMTP-сервера в Linux
Использование SMTP-сервера

Что такое SMTP?

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

Что такое SMTP-сервер?

Протокол SMTP должен быть доступен для приложения, это приложение, которое отвечает на запросы SMTP для тех, кто хочет отправить или ретранслировать электронную почту, называется SMTP Serve/SMTP Relay. Вы можете разбить его на два типа, как указано ниже, оба в основном одинаковы, за исключением незначительной разницы —

  • SMTP-сервер: это то же самое, что и SMTP-ретранслятор, но в основном используется, когда домен получателя совпадает с доменом сервера. Обычно они используются с бесплатными почтовыми службами, такими как gmail.com, yahoo.com.
  • Сервер ретрансляции SMTP: это также сервер, но этот термин используется, когда исходный и конечный домены электронной почты отличаются от доменов SMTP-сервера. Примером могут быть SendGrid или SendInBlue, которые предлагают их. Эти серверы в основном являются маршрутизаторами для почты.

Фальшивые SMTP-серверы. Эти серверы в основном используются разработчиками для тестирования. По сути, это универсальные серверы, которые позволяют пользователям видеть, как электронная почта будет выглядеть на стороне получателя, фактически не отправляя никакой электронной почты. Вы можете либо установить локальное приложение, такое как MailHog или MailCatcher, либо использовать предоставленное облако, например Mailtrap или наш локальный инструмент.

Как работает SMTP?

Ниже приведено общее руководство о том, как процесс отправки электронных писем работает с SMTP.

  • Пользователь, желающий отправить электронное письмо, скажем, с [email protected] на [email protected], использует свой почтовый клиент для составления электронного письма с темой и телом и нажимает «Отправить».
  • Как только пользователь нажмет «Отправить», клиент электронной почты подключится к настроенному SMTP-серверу, давайте предположим, что это smtp.source.com. Клиент и SMTP-сервер выполняют рукопожатие, и если требуется авторизация, клиент предоставит для этого учетные данные.
  • После рукопожатия почтовый клиент отправляет адрес получателя, который в нашем случае [email protected] , тему и тело.
  • Если бы наш пользователь отправлял кому-то в том же домене, то наш сервер просто перенаправлял бы его внутренне на локальный сервер-получатель.
  • Затем SMTP-сервер, используя DNS-запрос для записей MX, узнает IP-адрес получателя или адрес домена, на котором работает его SMTP-сервер.
  • Затем он подключается к SMTP-адресу получателя и пытается доставить электронное письмо.
  • Сервер электронной почты получателя проверяет, может ли он обработать пересылаемую ему электронную почту. И если все в порядке, он перенаправляет это на входящий сервер IMAP или POP3.

Общий SMTP-порт и адрес

В большинстве случаев SMTP-адрес будет префиксом mail или smtp перед доменом, к которому вы пытаетесь подключиться. Также они указаны в записях Mail Exchange (MX) в DNS, которые направляют клиента на почтовый сервер, который, как предполагается, управляет маршрутизацией сообщений электронной почты.

Чтобы найти адрес SMTP-сервера, вы можете использовать команду dig

Затем вы можете использовать команду dig, чтобы найти IP-адрес, если это необходимо.

С портом, к которому можно подключиться, все не так просто. Серверы и ретрансляторы обычно имеют набор различных портов, к которым вы можете подключиться, каждый из которых был создан сверхурочно для выполнения определенных требований.

SMTP-порт

Номер порта Описание Информация
25 Стандартный SMTP-порт В основном его следует использовать для ретрансляции электронной почты.
465 Устаревший порт SMTP Был для безопасного SMTP, использовал SSL для шифрования. Избегайте использования.
587 Современный безопасный SMTP-порт Большинство современных почтовых клиентов будут использовать это, оно использует шифрование TLS.
2525 Альтернативный нестандартный порт SMTP Это используется в качестве альтернативы 587, если он заблокирован.

В большинстве случаев вы будете использовать порт 587 для своих нужд.

Общие имена SMTP-серверов

Общие адреса SMTP-серверов начинаются с smtp. или почта. с доменным именем, у некоторых также может быть IP-адрес. Мы перечислили несколько распространенных из них с подробностями ниже —

наименование услуги SMTP-сервер Порт
Гугл почта smtp.gmail.com 587
Outlook.com smtp.live.com 587
Office365.com smtp.office365.com 587
Yahoo Mail smtp.mail.yahoo.com 465
Яху почта плюс плюс.smtp.mail.yahoo.com 465
Yahoo Великобритания smtp.mail.yahoo.co.uk 465
Yahoo Германия smtp.mail.yahoo.com 465
Yahoo Австралия/Новая Зеландия smtp.mail.yahoo.com.au 465
О2 smtp.o2.ie 25
O2.uk smtp.o2.co.uk 25
AOL.com smtp.aol.com 587
АТ&Т smtp.att.yahoo.com 465
НТЛ @ntlworld.com smtp.ntlworld.com 465
БТ-соединение pop3.btconnect.com 25
БТ открытый мир mail.btopenworld.com 25
БТ Интернет mail.btinternet.com 25
Апельсин smtp.orange.net 25
Orange.uk smtp.orange.co.uk 25
Ванаду Великобритания smtp.wanadoo.co.uk 25
Горячая почта smtp.live.com 465
O2 Online Германия mail.o2online.de 25
T-Online Германия securesmtp.t-online.de 587
1 и 1 (1 и 1) smtp.1and1.com 587
1&1 Германия smtp.1und1.de 587
Комкаст smtp.comcast.net 587
Веризон исходящий.verizon.net 465
Verizon (хостинг Yahoo) исходящий.yahoo.verizon.net 587
Зохо почта smtp.zoho.com 465
Mail.com smtp.mail.com 587
GMX.com smtp.gmx.com 465
[электронная почта защищена] USA.NET smtp.postoffice.net 465

Массовые настройки провайдера SMTP-сервера

Что произойдет, если вы хотите отправить несколько электронных писем, скажем, 10000 тыс. электронных писем, тогда вам понадобится что-то вроде массового SMTP-ретранслятора, они также предоставят вам API и другие функции, такие как отслеживание доставки, открытые ставки и т. д. Также помогут вам отправить Электронная почта довольно быстрая, так как SMTP как протокол немного медленный.

Если число не очень велико, вы можете использовать наш список поставщиков бесплатных SMTP-серверов, чтобы сделать выбор.

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

Продавец Бесплатно / Месяц Дневной лимит Платные планы Комментарии
SendInBlue 9000 300 От 25 долларов за 10 тысяч до 499 долларов за 1 миллион. Лучшее бесплатное
ТурбоSMTP 6000 200 от 14,95 за 50 тысяч до 979,95 за 2 миллиона. 6000 / месяц в течение 12 месяцев
Алибаба прямая почтовая рассылка 6000 200 0,00029 за 1000 писем
ПепиПост 3000 100 От 25 долларов за 150 тысяч до 445 долларов за 2 миллиона.
SendGrid 3000 100 От $14,95 за 50 тыс. писем до $749 за 150 тыс.
SparPost 3000 100 От 20 долларов за 50 тысяч до 525 долларов за 1 миллион
Эластичная электронная почта 3000 100 Стоимость как у Amazon SES Недорогой платный вариант
Амазонка СЭС 62000 .0001 для 1000 писем Один из самых дешевых, бесплатный при отправке с сервера AWS EC2
Gmail 15000 500 Gsuite — премиум-вариант Домен будет gmail.com, что может привести к блокировке аккаунта.

Использование SMTP-сервера с WordPress

WordPress поддерживает почти 40% сайтов в Интернете, по умолчанию он использует PHP Mail для отправки транзакционных электронных писем, которые, если они не настроены, используют sendmail. Плагин WordPress, который может использовать настройки SMTP или использовать SMTP API для того же.

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

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

Вы можете легко установить его изнутри WordPress или даже загрузить с веб-сайта WordPress. У него есть премиум-план, но большинству пользователей должно хватить бесплатного.

Настройка собственного SMTP-сервера в Linux

Быстрое сравнение MTA, мы выберем Postfix, так как будем работать с linux —

если ты... qmail Эксим Отправить почту Постфикс Примечания
неопытный
0 3 1 3 Exim и Postfix имеют хорошую документацию и наглядные примеры.
Беспокоитесь о безопасности
3 2 0 3 Postfix безопасен и современен; qmail безопасен, но очень старый и капризный; Exim безопасен по разным критериям (читайте выше).
Использование милеров Sendmail
0 1 3 2 Postfix может запускать milters; можно использовать эквивалентные маршрутизаторы/фильтр Exim script
Желание минимума хлопот
0 3 0 3 У Sendmail есть несколько простых интерфейсов, но чем глубже вы погружаетесь, тем хуже становится. Postfix и Exim более предсказуемы.
Ограниченный ресурс
3 2 1 2 Другие комментарии см. Встроенное приложение ниже.
В Windows
0 2 3 0 Sendmail имеет родной порт для Windows; Exim находится в дистрибутиве Cygwin
Нужна коммерческая поддержка
1 3 3 3 Для всех МТА есть компетентные компании; qmail по своей сути менее обслуживаем, будучи таким старым

Postfix — это агент передачи почты (MTA), который может действовать как SMTP-сервер или клиент для отправки или получения электронной почты. Его легко установить и настроить, и мы сами используем его для большинства наших нужд. Его также можно настроить для работы в качестве посредника для пересылки электронной почты через сторонние службы электронной почты. Мы рассмотрим только базовую настройку и отправим вам первое электронное письмо.

Самая простая установка состоит из установки постфикса, и все готово.

Такая базовая настройка будет работать технически, но ваши электронные письма могут попасть в СПАМ, чтобы удовлетворить это и обеспечить лучшую доставку электронной почты, у нас есть еще одно руководство, в котором мы добавляем другие требования, такие как DKIM или SPF, которые необходимы для того, чтобы ваши электронные письма через. Но все же, если нет очень веской причины, мы не рекомендуем запускать собственный почтовый сервер.

Этот процесс предполагает, что у вас есть новая установленная Ubuntu 20.04 и вы можете работать с командной строкой Linux, в противном случае мы рекомендуем использовать один из существующих провайдеров SMTP. Мы настроим постфикс на сервере Ubuntu 20.04 и отправим электронное письмо, используя его, в нашу собственную фиктивную службу для тестирования, чтобы увидеть, работает ли она.

Для начала мы выполним команду обновления кэша для диспетчера пакетов apt.

sudo apt update

Далее мы установим постфикс, используя следующую команду:

sudo apt install postfix

Установка откроет кучу подсказок, пожалуйста, выберите следующие варианты:

  • Общий тип конфигурации почты? : Для этого мы выберем Интернет-сайт, поскольку он соответствует потребностям нашей инфраструктуры.
  • Системное почтовое имя: это базовый домен, который будет использоваться для отправки электронной почты, если пользователь не указал домен отправителя. Поэтому, если вы отправляете электронное письмо, скажем, от user1, и домен не указан, оно будет добавлено к электронному письму. Поэтому, если указан example.com, электронная почта будет отправлена ​​с адреса [email protected] .

Это должно позаботиться о базовой конфигурации. Для полной настройки следуйте нашему руководству по настройке почтового сервера. Теперь порт 25 должен быть доступен, вы можете проверить, открыт ли он с помощью любой из команд –

Что мы ищем что-то вроде этого

master 2575 root 13u IPv4 30244 0t0 TCP *:25 (LISTEN)
master 2575 root 14u IPv6 30245 0t0 TCP *:25 (LISTEN)

Если вам даже нужно перенастроить установку, просто запустите команду —

Мы все настроили, наш SMTP-сервер должен быть запущен и работать. Затем мы можем отправить электронное письмо некоторым пользователям в Интернете или, может быть, перехватить все электронные письма для проверки.

Использование SMTP-сервера

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

Отправить почту с помощью telnet в Linux

Подключитесь к локальному SMTP-серверу, введя следующую команду:

Вы увидите что-то вроде этого -

Если вы не можете подключиться, убедитесь, что postfix запущен и порт 25 открыт.

Теперь давайте отправим электронное письмо, чтобы сказать [электронная почта защищена] (поймать все электронные письма).

Проверьте, получено ли электронное письмо в папке «Входящие» для [email protected] или, если вы использовали другого получателя, можете проверить его в своем почтовом ящике.

Отправить письмо из командной строки Linux

В Linux мы можем использовать команду sendmail для быстрой отправки электронной почты.

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