msmtp


Конфигурационный файл уровня пользователя:

$ touch ~/.msmtprc

#========================.mstprc==================================

defaults

tls on

tls_starttls on

tls_trust_file /etc/ssl/certs/ca-certificates.crt

logfile ~/mylogs/.msmtp.log

account <имя>

host smtp.gmail.com

port 587

protocol smtp

auth on

from <имя@адрес.домен>

user <имя@адрес.домен>

password <*******>

#=================================================================

Created Четверг 05 Март 2015

http://www.ibm.com/developerworks/ru/library/l-msmtp_edited/

http://ashep.org/2011/msmtp-lyogkij-smtp-klient/

http://www.4cubes.ru/blog/sysadmin/5.html

Конфигурирование msmtp

Конфигурирование msmtp может быть выполнено как на уровне отдельного пользователя, так и на уровне всей системы в целом. Во втором случае msmtp возьмёт на себя ту часть функциональности "настоящего" почтового сервера, скажем, Sendmail, которая занимается отправкой почты. Кстати говоря, этот режим работы msmtp так и обозначается: "sendmail mode".

Все режимы работы msmtp, команды и параметры конфигурации достаточно подробно описаны в документации. Там же приводятся примеры конфигурационных файлов для решения разнообразных задач.

В данной статье рассматривается конкретная пользовательская задача: передача сообщений электронной почты на SMTP-серверы Gmail. Эту задачу вполне можно решить на уровне пользователя, то есть файл конфигурации будет создан в домашнем каталоге: ~/.msmtprc.

Раздел defaults содержит значения параметров, устанавливаемых по умолчанию для применения ко всем последующим учётным записям.

Раздел каждой учётной записи начинается с директивы account, за которой следует наименование конкретной учётной записи (в листинге обозначено, как <имя>). Далее следуют определения целевого хоста почтового сервера (в данном примере – smtp.gmail.com) и номера порта (в данном примере – 587). Определение протокола не требует дополнительных разъяснений. В рассматриваемом случае требуется прохождение процедуры аутентификации для доступа к почтовому серверу, поэтому активизируется соответствующий параметр. Значения параметров from и user во многих случаях одинаковы, но иногда они могут и отличаться, поэтому при вводе реальных значений следует уделить им особое внимание.

Самое уязвимое место – пароль. Если компьютер используется только одним пользователем, то можно записать пароль открытым текстом, но в системах, в которых работают несколько пользователей (которые к тому же ещё и не вполне доверяют друг другу), так делать не рекомендуется. В последнем случае вместо директивы password лучше использовать директиву passwordeval, а сам пароль хранить в зашифрованном файле.

Разделов учётных записей, в конфигурационном файле может быть несколько. Это позволяет более гибко настраивать многочисленные учётные записи для различных целей и без затруднений управлять ими. Как раз в этом и заключается одно из главных достоинств msmtp. После того, как конфигурационный файл отредактирован и записан, необходимо задать для него правильные права доступа: чтение и запись только для владельца. chmod 600 ~/.msmtprc <<----не забывать, для fetchmailrc не более 0700

Если права доступа к файлу конфигурации заданы неверно, то могут возникать проблемы при отправке сообщений почтовым клиентом.

Организация взаимодействия msmtp с mutt

Теперь необходимо довести до сведения почтового клиента mutt информацию о том, что при отправке почты он должен обращаться к программе msmtp. Для этого потребуется внести некоторые изменения в соответствующий файл конфигурации. Строки, которые необходимо добавить (или откорректировать) в файл конфигурации ~/.muttrc:

---------------------------------------------------------

set realname='Имя Пользователя'

**set from=имя@адрес.домен**

set sendmail="/usr/bin/msmtp"

set envelope_from=yes

----------------------------------------------------------

для параметра sendmail в качестве значения указывается полный путь к программе msmtp. Следует отметить, что если место расположения msmtp отличается от указанного , то значение данного параметра нужно изменить соответствующим образом. После того, как все необходимые изменения в конфигурационные файлы внесены, связка mutt+msmtp полностью готова к работе.

Заключение

Применение упрощённого SMTP-клиента msmtp (в сочетании с почтовым клиентом mutt) позволяет очень быстро организовать отправку сообщений электронной почты на почтовый сервер. Однажды созданная конфигурация легко переносится с машины на машину – простым копированием конфигурационного файла .msmtprc. Простота, удобство и гибкость – основные достоинства msmtp. Кроме всего прочего предложенное объединение mutt и msmtp соответствует принципам так называемого Unix-way: каждая программа делает только свою работу и делает её хорошо.

#======================.msmtprc (еще пример)==========================

account <login>.dog.gmail.com

host smtp.gmail.com

port 587

from <login>@gmail.com

user <login>

auth on

tls on

tls_certcheck off

password <pass>

account <login>.dog.mail.ru

host smtp.mail.ru

port 587

from <login>@mail.ru

user <login>

auth on

password <pass>

account <login>.dog.yandex.ru

host smtp.yandex.ru

port 465

from <login>@yandex.ru

user <login>

host smtp.yandex.ru

auth on

tls on

tls_certcheck off

password <pass>

# аккаунт по умолчанию

account default : <login>.dog.gmail.com

# log файл

logfile ~/.msmtp.log

#================================================================