9

Я заглянул в Google и на страницы справочника по почте, но не могу понять, как их настроить. Все, что я хочу сделать, это настроить свой адрес электронной почты, чтобы я мог отправлять электронную почту через терминал. Как я могу это сделать?

4 ответа4

12

Традиционно почтовые программы Unix, включая mail , полагаются на MTA (Mail Transfer Agent) для выполнения фактической передачи.

Вы можете использовать полноразмерный MTA (postfix, exim4, opensmtpd), настроив его с помощью «smarthost» (relayhost), или облегченный исходящий MTA (msmtp, ssmtp, esmtp, nullmailer), который всегда использует его.


Для личного использования msmtp будет проще в настройке - он может только отправлять почту, но не получать, и разрешает настройку для конкретного пользователя.

Установите msmtp , затем добавьте свою учетную запись Gmail в ~/.msmtprc:

defaults
    tls on
    # the path below may need to be adjusted
    tls_trust_file /etc/ssl/certs/ca-certificates.crt

account gmail
    from youraddress@gmail.com
    host smtp.gmail.com
    port 587
    auth plain
    user youraddress@gmail.com

account default : gmail

Теперь скажите mail использовать msmtp , отредактировав ~/.mailrc:

set sendmail="/usr/bin/msmtp"

(Если это не работает, запустите ln -s /usr/bin/msmtp /usr/sbin/sendmail от имени пользователя root.)

Наконец, если вы хотите, чтобы mail/msmtp запомнил ваш пароль Gmail, он идет в ~/.netrc:

machine smtp.gmail.com
    login youraddress@gmail.com
    password "your password here"
3

Если ваш системный администратор уже не настроил почтовую систему, вы должны настроить Mail Transfer Agent. Это традиционно sendmail, современные системы используют postfix или exim4.

2

Во многих системах вы найдете команду mailx которую можно использовать для отправки электронной почты. Это может быть ссылка на почтовую команду, но она меняет поведение команды. Как уже отмечалось, это предполагает, что на вашем сервере настроен MTA (Mail Transfer Agent). Он может быть использован в интерактивном режиме с помощью команды вроде:

mailx -s "This is a message" user@example.com
This is a message
.

Или с помощью канала, чтобы отправить вывод команды:

cat myfile.txt | mailx -s "This is the file" user@example.com

Запуск его как mailx -h должен дать вам инструкции по использованию.

1

Если вы не связаны с командой mail , nail предлагает аналогичный интерфейс, но может отправлять почту с помощью SMTP.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .