Почтовый сервер · 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 mailx

CentOS:

yum update && yum install postfix mailx cyrus-sasl cyrus-sasl-plain

OpenSUSE:

zypper update && zypper install postfix mailx cyrus-sasl

Arch Linux:

pacman -Sy postfix mailutils

FreeBSD:

Скомпилируйте Postfix из коллекции портов, чтобы включить поддержку SASL:

portsnap fetch extract update
cd /usr/ports/mail/postfix
make config

В диалогах конфигурации выберите Поддержка SASL. Все другие параметры могут остаться прежними. Затем:

make install clean

Mailx можно установить из бинарного пакета:

pkg install mailx

2. Настройте аутентификацию 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_passwd

FreeBSD:

Файлы конфигурации 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_passwd

3. Настройте 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_passwd

FreeBSD:

postmap /usr/local/etc/postfix/sasl_passwd

5. Перезапустите Postfix

Перезапустите службу Postfix, чтобы применить ваши изменения.

Debian, Ubuntu, Fedora, CentOS, OpenSUSE, Arch Linux:

systemctl restart postfix.service

FreeBSD:

Чтобы запустить службу 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.log

Ubuntu, Fedora, CentOS, OpenSUSE, Arch Linux:

journalctl

FreeBSD:

less /var/log/maillog

Если вы получаете ошибки аутентификации от Gmail, проверьте, что Разрешить менее безопасные приложения включено в настройках вашей учетной записи Gmail, как указано в Шаге 6.

Убедитесь, что файл паролей sasl_passwd существует и что его содержимое отформатировано правильно, как указано в Шаге 2. Если вы внесли изменения в файл паролей, обязательно повторите Шаги 4 и 5, чтобы захешировать новый файл паролей и перезапустить Postfix.

Если вы видите какие-либо ошибки TLS, дважды проверьте конфигурацию в main.cf, как указано в Шаге 3. Если вы внесли какие-либо изменения в конфигурацию, перезапустите Postfix, как указано в Шаге 5.

Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.