Назад | Перейти на главную страницу

Создайте почтовый ящик в qmail, затем пересылайте все входящие сообщения в Gmail

Мне нужно было разрешить PHP отправлять почту с моего веб-сервера пользователям моего веб-приложения. Итак, я установил qmail на моем сервере Debian:

sudo apt-get install qmail

Я также обновил файлы в /etc/qmail указав свое доменное имя, а затем я запускаю sudo qmailctl reload и sudo qmailctl restart:

/etc/qmail/defaultdomain # Contains 'mydomain.com'
/etc/qmail/defaulthost   # Contains 'mydomain.com'
/etc/qmail/me            # Contains 'mail.mydomain.com'
/etc/qmail/rcpthosts     # Contains 'mydomain.com'
/etc/qmail/locals        # Contains 'mydomain.com'

Электронные письма отправляются без проблем из моего PHP-скрипта на любой адрес электронной почты, используя стандартный mail Библиотека PHP.

Сейчас эта проблема в том, что если я отправлю почту со своего PHP, используя info@mydomain.com в качестве адреса отправителя, я хочу, чтобы клиент мог ответить на этот адрес! И, возможно, я хочу, чтобы все письма, отправленные на этот адрес, пересылались на мой личный адрес Gmail.

В данный момент qmail похоже, не принимает входящую почту из-за "неверное имя почтового ящика". Вот полный сеанс SMTP, который я установил со своим сервером:

me@MYPC:~$ nc mydomain.com 25

220 ip-XX-XX-XXX-XXX.xxx.xxx.xxx ESMTP
HELO me@MYPC.org
250 ip-XX-XX-XXX-XXX.xxx.xxx.xxx
MAIL FROM:<me@MYPC.org>
250 ok
RCPT TO:<info@mydomain.com>
250 ok
DATA 
554 sorry, invalid mailbox name(s). (#5.1.1)
QUIT

Я уверен, что мне не хватает чего-то, связанного с созданием почтового ящика или псевдонима, на самом деле я ничего не сделал для определения почтового ящика info@mydomain.com везде. Но я попытался поискать что-то в сети и на многочисленных qmail страницы руководства, бот я ничего не нашел.

У qmail есть два основных способа выяснить, как обрабатывать локальную часть адреса электронной почты. Во-первых, необходимо проверить, существует ли реальная учетная запись для этого имени, поэтому, если на вашем сервере есть пользователь с именем info, этот пользователь получит почту. Второй способ - поиск файла псевдонима. Это файл, который называется .qmail-localpart и когда сервер обрабатывает только один домен, этот файл должен находиться в /var/qmail/alias (или /etc/qmail/alias или /var/lib/qmail/alias).

Итак, что вам нужно сделать:

  • создайте файл с именем /etc/qmail/aliases/.qmail-info (или, возможно, /var/qmail/aliases/.qmail-info, в зависимости от ваших настроек)
  • этот файл должен содержать текст &your.address@gmail.com

Это должно быть все! Для получения дополнительной информации о qmail рекомендую Жизнь Дэйва Силла с qmail. Также есть список рассылки qmail, хотя я не уверен, насколько он активен - прошло несколько лет с тех пор, как я был системным администратором электронной почты, поэтому я покинул этот список.