Какова наилучшая настройка MTA для домашнего / портативного компьютера (* не * сервер)?

11

Что такое хорошая настройка MTA (например, Postfix или что-то еще) для домашнего компьютера за NAT или ноутбука, который не всегда подключен к сети?

Я прочитал много руководств по Postfix о том, как настроить его так или иначе, но они обычно ориентированы на компьютеры, которые являются серверами, т.е.

  • иметь статический IP
  • есть доменное имя
  • всегда подключены к одной сети

Мои требования, я думаю:

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

Если не Postfix, мне нужен MTA, который может ставить в очередь письма, если у него временно нет подключения к Интернету.

thomasrutter
источник
Я посмотрел в nullmailer, который выглядит довольно идеально, за исключением того, что а) в настройках по умолчанию пароль smtp доступен для чтения всем пользователям (виден всем локальным пользователям) и б) я не уверен в том, как он иногда обрабатывает сервер smtp недоступен или отказывается / подпрыгивает почта.
Томасруттер
С момента написания этого вопроса я стал намного ближе к Postfix и осознал, что он на самом деле довольно универсален - я могу сделать это довольно легко. Я также дважды подумал о том, чтобы разрешить локальным компьютерам пересылать почту кому-либо в Интернете через мой внешний SMTP-сервер. Теперь, если они хотят отправлять почту на произвольные адреса, они должны войти на внешний почтовый сервер. Мой локальный ретранслятор будет пересылать почту только на мои собственные домены.
Томасруттер

Ответы:

3

Я использовал Postfix на моем компьютере, и он работал очень хорошо. Единственный недостаток это то , что Postfix всегда работает несколько демонов ( master, qmgrи т.д.), и с Exim я мог бы уменьшить , что к sendmail -qкронтаб записи.


Для Postfix:

  • установлен relayhost
  • для SMTP TLS, smtp_tls_security_level=encrypt
  • для аутентификации SMTP-реле smtp_sasl_auth_enableиsmtp_sasl_password_maps
  • закомментировать smtpсервис вmaster.cf

Для Exim:

  • добавить маршрутизатор шлюза ( пример )
  • закомментировать dnslookupроутер
  • для SMTP TLS: добавьте новый транспорт, используя, smtpно с включенным TLS ( документы )
  • остановить демон exim (чтобы отключить прослушивание SMTP)
  • и добавьте sendmail -qв cron пользователя root (чтобы очищать очередь каждые X минут; обычно это делает демон)
user1686
источник
Мой голос должен был бы использовать Exim. Он может быть настроен для работы без демонов, и, самое большее, имеет одного демона, который активируется каждый период выполнения очереди. Он легко настраивается на использование смарт-хоста, который будет соответствовать вашим требованиям.
BillThor
2

Если у вас есть учетная запись Gmail, вы должны установить postfix и настроить его для использования вашей учетной записи Gmail в качестве ретранслятора.

Например, http://www.marksanborn.net/linux/send-mail-postfix-through-gmails-smtp-on-a-ubuntu-lts-server/

Основная проблема с настройкой postfix на роуминге (похоже, что вы на ноутбуке) заключается в том, что электронная почта, отправленная с доменов без записей MX или PTR, с большой вероятностью попадет в папку спама или даже не будет доставлена ​​на все.

Однако, передавая вашу электронную почту через учетную запись Gmail, вы значительно повышаете вероятность получения своей электронной почты.

Кстати, какова была ваша конечная цель? Похоже, вы получаете почту на локальную учетную запись Unix (может быть, из cron?) И хотите пересылать ее туда, где вы на самом деле ее читаете. Верный?

Марк Э. Хаазе
источник
У меня есть внешний почтовый сервер, который я хотел бы переслать, и я думал об использовании Postfix (или чего-то в этом роде) на ноутбуке, чтобы просто передавать любую исходящую почту на этот сервер. Но я не уверен, как настроить Postfix таким образом, и даже если Postfix - лучший выбор. Я хочу убедиться, что если исходящая почта генерируется локально, а не в сети, она ставится в очередь и ретранслируется позже. Возможно, я бы также хотел получить Postfix или что-то еще, чтобы как-то аутентифицироваться на моем внешнем почтовом сервере, так что ему будут доверять (без необходимости ослаблять настройку на удаленном почтовом сервере).
Томасруттер
Настройка postfix довольно проста в большинстве linux. Просто 'apt-get install postfix' (или каков ваш менеджер pkg), а затем отредактируйте /etc/postfix/main.cf и установите строку "relayhost = [host]: port". (Квадратные скобки требуются, если вы используете полное доменное имя.) Postfix также будет помещать в очередь сообщения электронной почты, когда он не сможет достичь узла ретрансляции, но вам может потребоваться настроить его определение «сбой» в зависимости от того, как часто вы не сможете достичь узла ретрансляции. postfix.org/QSHAPE_README.html#deferred_queue
Марк Э.
0

Большинство крупных MTA, таких как Postfix, Sendmail, Exim или qmail, излишни для ваших требований.

Попробуйте использовать минимальный MTA , как ssmtp, nbsmtpили nullmailerвместо этого. Их конфигурация очень проста, и они могут делать все, что вы упомянули.

Joschi
источник
Может ли кто-либо из них ставить почту в очередь, пока я не подключен к сети (скажем, соединение обрывается или это ноутбук, используемый в разных местах), и отправлять его, когда он снова подключается? Потому что мне действительно нужно, чтобы почта НЕ входила в черную дыру, если просто нет сетевого соединения.
Томасруттер
Я бы предложил esmtp , даже если он больше не поддерживается, потому что он работает без проблем. Он также поддерживает очередь, но я не использовал его.
przemoc
0

Вы смотрели на Лэмсона ? Мне проще настроить, чем постфикс и друзья ...

chickenkiller
источник