Почтовый сервер · 5 min read · Sep 25, 2025
Настройка Postfix для использования Gmail в качестве почтового реле

Если у вас есть учетная запись Gmail, вы можете настроить ваш MTA для пересылки исходящей почты через Gmail. Это дает вам преимущества надежности и мощной инфраструктуры Gmail и предоставляет простой способ отправки электронной почты из командной строки.
В этом руководстве мы будем использовать Postfix в качестве нашего MTA. Postfix — это бесплатный, с открытым исходным кодом, активно поддерживаемый и высокозащищенный почтовый агент передачи.
На каждом этапе мы рассмотрим инструкции, специфичные для следующих операционных систем:
- Debian 9
- Ubuntu 18.04 LTS
- CentOS 7
- OpenSUSE Leap 15.0
- Arch Linux 2019.03.01
- FreeBSD 12.0
Мы также установим mailutils / mailx, чтобы мы могли отправить тестовое письмо. При необходимости мы установим дополнительные библиотеки SASL.
Все команды, начинающиеся с #, требуют прав root.
1. Установите необходимое программное обеспечение
Debian, Ubuntu:
apt-get update && apt-get install postfix mailutilsКогда вас спросят о “Общем типе конфигурации почты”, выберите Internet Site.
Когда вас спросят о “Имени почты”, выберите имя хоста, которое будет использоваться в заголовках почты как источник ваших электронных писем. Предпочтительно использовать полностью квалифицированное доменное имя, но использование простого имени хоста вашей машины также допустимо. Независимо от того, что вы введете здесь, ваш адрес возврата будет отображаться получателям как ваш адрес Gmail.
Вам может быть предложено установить “Получателя почты root и почтмейстера”. Введите root или другого пользователя, который должен получать уведомления почтовой подсистемы.
Для любых других запросов вы можете выбрать значения по умолчанию.
Fedora:
dnf update && dnf install postfix mailxCentOS:
yum update && yum install postfix mailx cyrus-sasl cyrus-sasl-plainOpenSUSE:
zypper update && zypper install postfix mailx cyrus-saslArch Linux:
pacman -Sy postfix mailutilsFreeBSD:
Скомпилируйте Postfix из коллекции портов, чтобы включить поддержку SASL:
portsnap fetch extract updatecd /usr/ports/mail/postfixmake configВ диалогах конфигурации выберите Поддержка SASL. Все другие параметры могут остаться прежними. Затем:
make install cleanMailx можно установить из бинарного пакета:
pkg install mailx2. Настройте аутентификацию Gmail
Создайте или измените файл паролей, который будет использоваться Postfix для установления аутентификации с Gmail. В информации для аутентификации ниже замените username на ваше имя пользователя Gmail и password на ваш пароль Gmail. Если вы используете собственное доменное имя Gmail Apps, вы можете заменить gmail.com на ваше доменное имя Google Apps.
Файл паролей будет находиться в каталоге конфигурации Postfix. Файл можно назвать как угодно, но рекомендуется использовать имя файла sasl_passwd.
Debian, Ubuntu, Fedora, CentOS, OpenSUSE, Arch Linux:
Файлы конфигурации Postfix находятся в каталоге /etc/postfix. Создайте или отредактируйте файл паролей:
nano /etc/postfix/sasl_passwdДобавьте строку:
[smtp.gmail.com]:587 [email protected]:passwordСохраните и закройте файл. Ваш пароль Gmail хранится в открытом виде, поэтому сделайте файл доступным только для root:
chmod 600 /etc/postfix/sasl_passwdFreeBSD:
Файлы конфигурации Postfix находятся в каталоге /usr/local/etc/postfix. Создайте или отредактируйте файл паролей:
nano /usr/local/etc/postfix/sasl_passwdДобавьте строку:
[smtp.gmail.com]:587 [email protected]:passwordСохраните и закройте файл. Сделайте его доступным только для root:
chmod 600 /usr/local/etc/postfix/sasl_passwd3. Настройте Postfix
Существует шесть параметров, которые необходимо установить в файле конфигурации Postfix main.cf. Параметры:
relayhost, который указывает почтовый реле-хост и номер порта. Имя хоста будет заключено в квадратные скобки, чтобы указать, что MX-поиск не требуется.
smtp_use_tls, который включает (или отключает) безопасность транспортного уровня.
smtp_sasl_auth_enable, который включает (или отключает) аутентификацию SASL.
smtp_sasl_security_options, который в следующей конфигурации будет установлен как пустой, чтобы гарантировать, что не используются несовместимые с Gmail параметры безопасности.
smtp_sasl_password_maps, который указывает файл паролей для использования. Этот файл будет скомпилирован и захеширован с помощью postmap на следующем шаге.
smtp_tls_CAfile, который указывает список центров сертификации для использования при проверке идентичности сервера.
Debian, Ubuntu, Arch Linux:
Отредактируйте основной файл конфигурации Postfix:
nano /etc/postfix/main.cfДобавьте или измените следующие значения:
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crtСохраните и закройте файл.
Fedora, CentOS:
Отредактируйте основной файл конфигурации Postfix:
nano /etc/postfix/main.cfДобавьте или измените следующие значения:
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/certs/ca-bundle.crtСохраните и закройте файл.
OpenSUSE:
Отредактируйте основной файл конфигурации Postfix:
nano /etc/postfix/main.cfДобавьте или измените следующие значения:
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/ca-bundle.pemСохраните и закройте файл.
OpenSUSE также требует, чтобы файл конфигурации основного процесса Postfix master.cf был изменен. Откройте его для редактирования:
nano /etc/postfix/master.cfНайдите строку, которая читается:
#tlsmgr unix - - n 1000? 1 tlsmgУберите комментарий, чтобы она читалась:
tlsmgr unix - - n 1000? 1 tlsmgСохраните и закройте файл.
FreeBSD:
Отредактируйте основной файл конфигурации Postfix:
nano /usr/local/etc/postfix/main.cfДобавьте или измените следующие значения:
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/usr/local/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/mail/certs/cacert.pemСохраните и закройте файл.
4. Обработайте файл паролей
Используйте postmap, чтобы скомпилировать и захешировать содержимое sasl_passwd. Результаты будут сохранены в вашем каталоге конфигурации Postfix в файле sasl_passwd.db.
Debian, Ubuntu, Fedora, CentOS, OpenSUSE, Arch Linux:
postmap /etc/postfix/sasl_passwdFreeBSD:
postmap /usr/local/etc/postfix/sasl_passwd5. Перезапустите Postfix
Перезапустите службу Postfix, чтобы применить ваши изменения.
Debian, Ubuntu, Fedora, CentOS, OpenSUSE, Arch Linux:
systemctl restart postfix.serviceFreeBSD:
Чтобы запустить службу Postfix только для этой сессии:
service postfix onestartЧтобы автоматически запускать Postfix при инициализации системы, откройте /etc/rc.conf для редактирования:
nano /etc/rc.confДобавьте строку:
postfix_enable=YESСохраните и закройте файл. Затем вы можете выполнить:
service postfix startЧтобы запустить Postfix.
6. Включите “Менее безопасные приложения” в Gmail
По умолчанию только самые безопасные входы, такие как вход в Gmail через веб, разрешены для вашей учетной записи Gmail. Чтобы разрешить запросы на реле, войдите в свою учетную запись Gmail и включите Разрешить менее безопасные приложения.
Для получения дополнительной информации ознакомьтесь с документом поддержки Google “Разрешение менее безопасным приложениям получать доступ к вашей учетной записи.”
7. Отправьте тестовое письмо
Проверьте вашу новую конфигурацию, отправив электронное письмо с помощью команды mail. Выполните:
mail -s "Тестовая тема" [email protected]Вам будет представлен пустой рядок (или поле CC:, которое вы можете пропустить, нажав Enter). Введите текст вашего сообщения, нажав Enter для новых строк. Когда вы закончите составлять электронное письмо, введите CTRL-D, чтобы отправить его. Чтобы отменить письмо, дважды нажмите CTRL-C.
Чтобы отправить заранее составленное письмо, используйте команду:
mail -s "Тема здесь" [email protected] < textfileГде textfile — это имя файла, содержащего текст для отправки.
Устранение неполадок
Если это не работает, проверьте журналы на наличие ошибок Postfix:
Debian:
less /var/log/mail.logUbuntu, Fedora, CentOS, OpenSUSE, Arch Linux:
journalctlFreeBSD:
less /var/log/maillogЕсли вы получаете ошибки аутентификации от Gmail, проверьте, что Разрешить менее безопасные приложения включено в настройках вашей учетной записи Gmail, как указано в Шаге 6.
Убедитесь, что файл паролей sasl_passwd существует и что его содержимое отформатировано правильно, как указано в Шаге 2. Если вы внесли изменения в файл паролей, обязательно повторите Шаги 4 и 5, чтобы захешировать новый файл паролей и перезапустить Postfix.
Если вы видите какие-либо ошибки TLS, дважды проверьте конфигурацию в main.cf, как указано в Шаге 3. Если вы внесли какие-либо изменения в конфигурацию, перезапустите Postfix, как указано в Шаге 5.
Get new posts in your inbox
No spam. Unsubscribe anytime.