Какой пакет установить для отправки писем с локального хоста Ubuntu?


14

Я установил Ubuntu на моем сервере. Я хочу, чтобы cronjobs отправлял мне электронные письма для вывода.

Как я могу отправлять электронные письма с терминала. какую вещь я должен установить и как я могу поставить SMTP или поп настройки в этой программе

Ответы:


9

Я считаю, что mailx - это то, что вы ищете.

sudo apt-get install bsd-mailx 

Это также установит постфикс как минимум и даст вам несколько вариантов настройки постфикса. Если в вашей локальной сети есть SMTP-сервер, выберите «спутниковая система», затем введите имя почтового домена и, наконец, IP-адрес вашего SMTP-сервера.

Использовать:

echo $MESSAGE_BODY | /bin/mail -s "$SUBJECT" "$RECIPIENT_ADDRESS"

Вы также можете использовать файл для тела:

/bin/mail -s "$SUBJECT" "$RECIPIENT_ADDRESS" < /tmp/message.txt

Там написано, что отсутствует файл postfix / main.cf, как мне скачать этот файл

Когда вы установили mailx, он должен был пройти через экраны установки postfix. Вас спросили, какой тип установки, а также имя почты и хост-ретранслятор? А когда выдает ошибку, когда запускаете / bin / mail или когда пытаетесь установить?
Недм

он ничего не спрашивал, как можно удалить его и сделать это снова

Если у вас есть postfix, настроенный как часть другой установки, похоже, он настроен неправильно. Попробуйте «sudo dpkg-переконфигурировать postfix», а затем «sudo /etc/init.d/postfix reload»
недм

Если postfix не установлен, то «sudo apt-get remove mailx», а затем «sudo apt-get install mailx», и он должен установить postfix с пакетом mailx.
Недм

6

ssmtpПакет популярен легко способ отправки электронной почты из коробки Ubuntu. Вот учебник, чтобы настроить его для использования Gmail.


И гораздо проще / быстрее начать работу, чем postfix.
Hometoast

ssmtp по-прежнему остается лучшим почтовым агентом для использования на веб-серверах, потому что единственная конфигурация - это способ подключения к SMTP-серверу. Это экономит так много времени по сравнению с настройкой постфикса, особенно если вы еще не пробовали это раньше. Однако это зависит от варианта использования, и mailx может быть проще в использовании, если вы отправляете электронную почту из командной строки :)
Steen Schütt

1
Ссылка не работает, в Ubuntu есть руководство по настройке ssmtp.
Nattgew

4

Если вы не хотите возиться с настройкой Postfix (что может быть очень неприятно), ознакомьтесь с пакетом heirloom-mailx (sudo apt-get install heirloom-mailx) .

Это альтернативная версия команды mail, которая позволяет вам указать внешний SMTP-сервер. Для простых скриптов cron это идеально.

Домашняя страница: http://heirloom.sourceforge.net/mailx.html

Страница руководства : http://heirloom.sourceforge.net/mailx/mailx.1.html



1

Я использую стандартную настройку в своем магазине и нахожу пакет mailutils идеальным для таких вещей, как автоматическая отправка электронных писем из cronjobs и т. Д. Очень просто настроить с помощью помощника по настройке ncurses.

sudo aptitude install mailutils 
sudo dpkg-reconfigure exim4-config

Опция internet site; mail is sent and received directly using SMTPработает лучше всего для меня (как я хочу отправить по большей части). Вы также можете установить свой корневой адрес пересылки через этот конфиг.

Затем вы можете отправлять электронные письма, используя командную строку (кто-то выше привел примеры), но я использую:

mail -s "AVScan completed on HOSTNAME" avnotifications@somedomain.com

Надеюсь это поможет.


1

Последняя установка, которую я сделал, была на Ubuntu 11.10 с командой:

sudo apt-get install postfix mailutils

А если вы хотите узнать больше о postfix, как это работает и как это проверить, попробуйте: PostfixBasicSetupHowto

Затем вы можете использовать mailкоманду в cronjob. См. Справочные страницы команды для вариантов и использования.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.