我是Ubuntu新手。我已经设置了ssmtp。
如果我跑
echo "mail test" | sudo ssmtp -vvv [email protected]
它能工作。没有 sudo 则不行。它给出Authorization failed 535 Incorrect Authentication
那么有什么区别呢sudo
?
如果我能解决这个问题,它将有助于解决更大的问题,即为什么我无法让 shell 脚本运行 - 它会出现同样的错误。
测试脚本
ssmtp.conf :-
[email protected]
mailhub=auth.smtp.vvvvvvv.co.uk
UseTLS=YES
FromLineOverride=YES
UseSTARTTLS=YES
[email protected]
AuthPass=pppppppp
rewriteDomain=domainname.com
AuthMethod=LOGIN
TLS_CA_File=/home/username/cert.pem
testscript shell脚本
#!/bin/sh
TODAY=$(date)
echo "Test script running $TODAY" >> /home/username/Documents/testfile.log
if ssmtp [email protected] < testscript.txt
then
echo "Test script Complete" >> /home/username/Documents/testfile.log
else
echo "Test script Failed" >> /home/username/Documents/testfile.log
echo "Test script ended" >> /home/username/Documents/testfile.log
测试脚本.txt
To:[email protected]
From:xxxxxxxx.domainname.com
Subject:Mail Test
MIME-Version:1.0
Content-Type:text/plain
自动电子邮件测试
答案1
用户不应该ssmtp
直接运行;使用适当的邮件用户代理,如mail
、mailx
或mutt
:
echo Test | mailx -s Test [email protected]