Як я можу налаштувати агент пересилання пошти?


17

Я маю намір використовувати muttдля надсилання автоматизованих електронних листів через cronабо atз вкладеннями на свою адресу gmail, коли конкретні події трапляються на моєму сервері Ubuntu. Наразі muttне можу надсилати електронну пошту на зовнішні адреси електронної пошти, я вважаю, що це тому, що мені потрібно налаштувати агент передачі пошти. Як мені взяти участь у виборі підходящої MTA і як її встановити, щоб виконати те, що мені потрібно?


1
Вам не потрібно мати мут, щоб мати cron або надсилати пошту на ваш gmail-рахунок. Будь-якого правильно налаштованого MTA має бути достатньо для цього.
JanC

Мені потрібно мати можливість додавати вкладені файли до вихідної пошти, тому я вважав, що мені знадобиться мут.
conorgriffin

1
Це важливе питання. Багато хто з нас налаштовує Linux-сервери та потребує певного способу розсилки подій та звітів. У багатьох (у більшості!) Випадків повноцінний поштовий сервер є надмірним. Я дізнався, що нещодавно встановив Postfix для такого завдання. Я мав би створити такий інструмент, як один із цих, і я буду в майбутньому.
Дон Фолкнер

Відповіді:


20

При виборі MTA для встановлення необхідно зробити кілька варіантів; Перший з них - чи хочете ви MTA лише для надсилання або вам потрібен повноцінний поштовий сервер.

Цей пост Unix.SE надає вичерпний перелік доступних MTA, що надсилаються лише для надсилання; всі вони вже упаковані для Ubuntu 10.10. Є кілька речей, які ви можете врахувати, вибираючи MTA лише для надсилання:

  1. чи може він чекати електронну пошту для подальшої доставки у разі відмови: IIRC, лише це nullmailerможна зробити.

  2. чи замінить він агента системної доставки пошти (шукайте рядок Provides: mail-transport-agentу висновку apt-cache show package). Якщо це так, то вся пошта, що надходить із системи (включаючи звіти з завдань на крон, статистику популярності тощо), буде оброблятися встановленим MTA: якщо ви не налаштували правильні псевдоніми для кореневих та інших користувачів, електронною поштою може надійти за неправильною адресою (як правило, деякий sysadmin у вашого провайдера). Наразі пакети nullmailer, esmtp-run(але ні esmtp) ssmtpналежать до цієї категорії.

  3. Всі MTA, що надсилаються лише для надсилання, просто пересилають вашу електронну пошту на інший сервер (званий "хост ретрансляції" або "smarthost"; зазвичай це SMTP-сервер вашого провайдера) і потім дозволять йому обробляти всі деталі реальної доставки поштою в Інтернеті. Вам потрібно з’ясувати, чи є якісь особливі вимоги до підключення до сервера провайдера (наприклад, якась аутентифікація або TLS) та вибрати MTA, який підтримує необхідні функції (наприклад, ssmtpне підтримує будь-якого типу аутентифікації або SSL / TLS).

Повноцінними поштовими серверами є exim , postfix та sendmail . Сценарій встановлення після встановлення для Debian / Ubuntu зробить чудову роботу по створенню робочої конфігурації для деяких загальних налаштувань (доставка пошти лише до локальної системи; відправка електронної пошти через "smarthost" - тобто поштовий сервер, на якому ви переходите всі ваші електронні листи, як правило, SMTP-хости вашого провайдера; Інтернет-сайт із повним вхідним та вихідним зв’язком). IMHO, postfix є найпростішим для запуску та налаштування, але, оскільки він настільки здатний, його посібник з налаштування набагато довший, ніж будь-який з MTA, що надсилається лише для надсилання.

Крім того, реальний ризик під час налаштування поштового сервера полягає в тому, що, якщо ви помилитесь у локальній конфігурації, ви закінчуєтесь доставкою пошти в неправильне місце (читати: загублено) або -через- із системою відкритого реле які можуть використовувати спамери (і, повірте, вони можуть знайти відкрите реле, перш ніж ви зрозумієте, що ваш сервер є одним).

Моя порада буде тоді почати з MTA, що надсилається лише для відправки, а потім перейти на повний поштовий сервер, лише якщо ви бачите в цьому необхідність (що не в тому випадку, якщо ви просто хочете відправляти електронні листи на вашу адресу GMail).


Гаразд, так скажемо, що я встановлюю адресу електронної пошти на зразок myserver@gmail.com і включаю smtp у акаунті gmail. Я міг налаштувати клієнтську програму на сервері для надсилання пошти за допомогою цього облікового запису Gmail через SMTP і, таким чином, уникнути складності повноцінного налаштування поштового сервера?
conorgriffin

@Griffo: Так, саме це робить MTA "лише для надсилання"; просто скористайтеся msmtp(як це запропоновано у відповіді ixtmixilix) або виберіть його зі списку за URL-адресою, яку я розмістив вище.
Ріккардо Муррі

+1 для nullmailer ... Я використовую його на своїх серверах, і це дуже зручно. Дуже легкий, відносно простий в налаштуванні. І як тільки це працює, вам просто більше не потрібно буде це турбувати :)
Маленька Ява

Також mda (поштовий агент DragonFly) може встановити черги на електронні листи для подальшої доставки.
Tomasz Zieliński

Це dma, не mda (поштовий агент DragonFly).
Андреас Дж.

6

Я б рекомендував msmtp. Налаштування інших поштових систем, таких як sendmail, безумовно, досить складно. Після msmtpналаштування ви можете використовувати його mutt, і ви також можете замаскувати його sendmailтак, щоб програми не знали різниці між двома MTA. Повна інформація доступна на веб-сайті.


3

Посилання нижче надають усі варіанти MTA, які ви можете вибрати, відповідно до вашої версії Ubuntu:

http://packages.ubuntu.com/precise/mail-transport-agent (за 12.04)
http://packages.ubuntu.com/trusty/mail-transport-agent (за 14.04)

Особисто я виявив, що ssmtpналаштувати та запустити дуже просто, лише 2 команди виконають:

$ sudo aptitude install mailutils ssmtp
$ sudo dpkg-reconfigure ssmtp

1
Згідно з вікі ArchLinux, ssmtp більше не підтримується, і вони рекомендують msmtp .
sebastian-c
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.