Мой сервер - Ubuntu 12.04.3. Задания Cron работают нормально. Я могу отправлять электронные письма через командную строку, используя mail
, ssmtp
или sendmail
. Я установил правильный адрес электронной почты поверх crontab -e
MAILTO=myemail@gmail.com
* * * * * echo blaaah
, но в mail.log я получаю
sSMTP[4267]: 550 5.7.1 Client does not have permissions to send as this sender
, что странно, так как я могу отправить электронная почта через командную строку. Есть идеи?
У меня была похожая проблема. Ответ для меня был на самом деле довольно простым.
Пользователь / среда, в которой выполняется cron, не смогли найти двоичный файл ssmtp. Просто добавив полный путь к нему, вы добились успеха.
# m h dom mon dow command
0 9 * * * /usr/sbin/ssmtp a@hotmail.com < /home/a/a-msg.txt
Может быть, это поможет: http://community.webfaction.com/questions/11800/how-do-i-set-the-sender-address-for-mail-sent-from-my-cron- jobs
Остальные выходные данные отладки или точные обстоятельства могут помочь. "crontab -e" редактирует crontab текущего пользователя. Вы уверены, что этот пользователь настроен для отправки почты?