Як зробити cron електронною поштою свій акаунт @gmail


40

У мене є кілька завдань, які іноді видають помилки, і я хотів би отримати сповіщення в моєму "справжньому" обліковому записі електронної пошти, оскільки я не використовую поштову скриньку свого користувача у своєму ноутбуці Ubuntu, а cron (чи це може бути postfix) продовжує намагатися надіслати електронну пошту локальному кореневому акаунту.

Я знаю, що можу додати змінну MAILTO до crontab:

ricardo@ricardo-laptop:~$ sudo crontab -l
MAILTO=redacted@gmail.com
# m h  dom mon dow   command
*/5 * * * * /home/ricardo/mrtg/cfg/run.sh

Але, схоже, на це не звертають жодної уваги

Я також спробував додати свою електронну пошту до /etc/aliasesфайлу та запуститиnewaliases

ricardo@ricardo-laptop:~$ cat /etc/aliases
# See man 5 aliases for format
postmaster:    root
root:          redacted@gmail.com
ricardo:       redacted@gmail.com

все ж, коли Cron хоче надіслати електронний лист, він все ще надсилає його root@my.domain.com:

ricardo@ricardo-laptop:/var/log$ tail mail.log
Aug  3 16:25:01 ricardo-laptop postfix/pickup[2002]: D985B310: uid=0 from=<root>
Aug  3 16:25:01 ricardo-laptop postfix/cleanup[4117]: D985B310: message-id=<20100803192501.D985B310@ricardo-laptop>
Aug  3 16:25:01 ricardo-laptop postfix/qmgr[2003]: D985B310: from=<root@144-68-247-190.fibertel.com.ar>, size=762, nrcpt=1 (queue active)
Aug  3 16:25:03 ricardo-laptop postfix/smtp[4120]: D985B310: to=<root@144-68-247-190.fibertel.com.ar>, orig_to=<root>, relay=smtp.gmail.com[74.125.157.109]:25, delay=1.5, delays=0.38/0.02/0.9/0.18, dsn=5.7.0, status=bounced (host smtp.gmail.com[74.125.157.109] said: 530 5.7.0 Must issue a STARTTLS command first. d1sm12275173anc.19 (in reply to MAIL FROM command))

Будь-які пропозиції? Я працюю на Ubuntu 10.04, з усім сучасним

Відповіді:


20

Здається, ви налаштували smtp.gmail.com як свій розумний хост для поштового сервера. Вам потрібно видалити конфігурацію smarthost або відредагувати її так, щоб ваш сервер взагалі міг відправляти пошту у зовнішній світ.

Конфігурація, яку ви маєте для переадресації пошти, здається, працює, але не працює, оскільки smtp.gmail.com відхиляє пошту.

Оновлення : для подальшої довідки проблема полягала в тому, /etc/mailnameщо вказано ім’я, яке не було у mydestinationsсписку постфіксу. Це призвело до того, що всі листи вважалися іноземними, а пошта обійшла стороною /etc/aliasesобробку.


Я зараз ігнорую помилку TLS і концентруюся в тому, що останній рядок у mail.log говорить: postfix / smtp [4120]: D985B310: to = <root@144-68-247-190.fibertel.com .ar> тому cron все ще намагається надіслати електронний лист моєму кореневому обліковому запису замість мого акаунта gmail, я побоювався, що залишити відповідь Gmail на запитання буде заплутаним, але я не хотів занадто сильно його змінювати, щоб не втратити цінне інформація. Я зараз спробую виправити помилку TLS, але я впевнений, що це не має нічого спільного з неправильною проблемою призначення
Рікардо Рейєс

Чи можете ви включити ваш main.cf для постфіксу. Я підозрюю, що ваш екземпляр Postfix вважає, що пошта для початку не є локальною, а лише локальна пошта впливає на файл псевдонімів
Ressu

Ось мій postfix.cfg: cl1p.net/postfix Я спробував видалити параметр smarthost , але це змінило лише повідомлення про помилку Gmail, оскільки мій ip не вирішується правильно. Майте на увазі, що це не сервер, це лише мій особистий ноутбук, і лише мені потрібно надсилати електронні листи - це повідомлення про хрон, на мій власний обліковий запис gmail. Спасибі.
Рікардо Рейєс

1
Хм .. чи має ваше / etc / mailname ваше ім'я хоста? чомусь постфікс вважає, що він називається 144-68-247-190.fibertel.com.ar замість ricardo-ноутбука. Також, що говорить hostnameкоманда?
Рессу

Postfix потрібно налаштовувати як повний поштовий сервер, а не як супутник gmail. Інакше виникне проблема автентифікації, оскільки відправник не є користувачем для gmail.
txwikinger

1

Рішення, витягнуте з питання

(завдяки Ressu )

Проблема була з файлом /etc/mailname

Цей файл був створений установщиком Ubuntu і містив неправильне ім’я сервера. Після того, як я змінив його на Postfix "ricardo-laptop", зрозумів, що електронні листи призначені для місцевої доставки, і почав переслідувати псевдоніми


0

думав, що я доповнив би людей, які виявляють це як я. Проста альтернатива, якщо ви хочете, щоб уся ваша пошта з вашого кореневого облікового запису - запустити цю команду:

sudo nano ~ / .наперед

Потім ви можете ввести один електронний лист або розділити декілька комами. Це перенаправить усі ваші кореневі електронні листи (якщо ви користуєтесь коренем) на адресу електронної пошти у цьому файлі.

Після додавання електронних листів натисніть Ctrl + X, а потім Y, щоб зберегти зміни.


це ставить файл у будинку мого користувача, але не root?
ендоліт

@endolith: Правильно. Ви можете sudo nan ~root/.forwardзамість цього.
Flimm

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