Электронная почта не отправлена ​​с использованием командного сценария / сценария оболочки на Centos - PullRequest
0 голосов
/ 01 ноября 2018

Я пытаюсь отправить электронное письмо из моего centos с помощью shell cmd на мой адрес Gmail.

Вот конфигурация, которую я сделал:

/ и т.д. / постфикса / main.cf

myhostname = relay.example.com
relayhost = [smtp.gmail.com]:587
mailbox_size_limit = 0
recipient_delimiter = +
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/certs/ca-bundle.crt
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous 

/ и т.д. / постфикса / sasl_passwd

[smtp.gmail.com]:587 My_Address@gmail.com:My_Password

Я создал файл хеш-базы данных для Postfix:

postmap /etc/postfix/sasl_passwd
chown root:root /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db
chmod 0600 /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db

Я запускаю cmd после перезапуска Postfix:

echo "Body" | mail -s "Subject" My_Address@gmail.com

Я настроил gmail так, чтобы он мог принимать менее безопасные приложения.

Обратите внимание, что у меня нет проблем с сетью (как вы видите подключение ниже):

1-й тест подключения 2-й тест подключения

После запуска команды cmd ошибка не появляется, но сообщение не отправляется.

Вид журналов: tail -f / var / log / maillog

Nov  2 00:55:43 quickstart sendmail[5228]: wA1JwGn3031205: to=<My_Address@gmail.com>, ctladdr=<cloudera@quickstart.cloudera> (501/501), delay=11:56:47, xdelay=00:00:00, mailer=esmtp, pri=390482, relay=alt4.gmail-smtp-in.l.google.com., dsn=4.0.0, stat=Deferred: Connection timed out with alt4.gmail-smtp-in.l.google.com.
Nov  2 00:55:43 quickstart sendmail[5228]: wA1JchlC026214: to=<My_Address@gmail.com>, ctladdr=<cloudera@quickstart.cloudera> (501/501), delay=12:16:44, xdelay=00:00:00, mailer=esmtp, pri=480482, relay=alt4.gmail-smtp-in.l.google.com., dsn=4.0.0, stat=Deferred: Connection timed out with alt4.gmail-smtp-in.l.google.com.
Nov  2 00:55:43 quickstart sendmail[5228]: wA1JCSq5019689: to=<My_Address@gmail.com>, ctladdr=<cloudera@quickstart.cloudera> (501/501), delay=12:42:59, xdelay=00:00:00, mailer=esmtp, pri=480482, relay=alt4.gmail-smtp-in.l.google.com., dsn=4.0.0, stat=Deferred: Connection timed out with alt4.gmail-smtp-in.l.google.com.
Nov  2 01:17:17 quickstart postfix/postfix-script[8412]: fatal: the Postfix mail system is not running
Nov  2 01:17:17 quickstart postfix/postfix-script[8469]: warning: group or other writable: /etc/postfix/./main.cf
Nov  2 01:17:17 quickstart postfix/postfix-script[8483]: starting the Postfix mail system
Nov  2 01:17:17 quickstart postfix/master[8484]: fatal: bind 127.0.0.1 port 25: Address already in use
Nov  2 01:18:14 quickstart sendmail[8554]: wA28IEGk008554: from=cloudera, size=228, class=0, nrcpts=1, msgid=<201811020818.wA28IEGk008554@quickstart.cloudera>, relay=root@localhost
Nov  2 01:18:14 quickstart sendmail[8558]: wA28IEsc008558: from=<cloudera@quickstart.cloudera>, size=483, class=0, nrcpts=1, msgid=<201811020818.wA28IEGk008554@quickstart.cloudera>, proto=ESMTP, daemon=MTA, relay=localhost [127.0.0.1]
Nov  2 01:18:14 quickstart sendmail[8554]: wA28IEGk008554: to=My_Addressq@gmail.com, ctladdr=cloudera (501/501), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30228, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (wA28IEsc008558 Message accepted for delivery)

Не могли бы вы помочь, спасибо!

Ответы [ 2 ]

0 голосов
/ 21 ноября 2018

Я понял, что у вас нет проблем с сетью. В скрипте отправки почты необходимо внести небольшие изменения. Пожалуйста, следуйте приведенному ниже формату и дайте мне знать, если он работает

echo "Body" | mail -s "Subject" -m My_Address@gmail.com
0 голосов
/ 02 ноября 2018

Я решил это! Проблема в том, что я также установил Sendmail, который является другим почтовым сервером. Итак, автоматически Postfix был отключен, потому что не может быть запущено два из них одновременно.

Вот фатальная ошибка из журналов: tail -f / var / log / maillog

Nov  2 01:17:17 quickstart postfix/postfix-script[8412]: fatal: the Postfix mail system is not running

Я восстановил его, полностью удалив sendmail

[root@quickstart ~]# yum remove sendmail

Затем перезапуск Postfix

[root@quickstart ~]# service postfix restart
Shutting down postfix:                                     [  OK  ]
Starting postfix:                                          [  OK  ]
...