web-dev-qa-db-ja.com

ssmtpがSudoで機能するのに、Sudoで機能しないのはなぜですか?

私はUbuntuの初心者です。 ssmtpを設定しました。

走れば

echo "mail test" | Sudo ssmtp -vvv [email protected] 

できます。 Sudoがなければそれはできません。それは与えます Authorization failed 535 Incorrect Authentication

では、Sudoはどのような違いがあるのでしょうか?

これを解決できれば、シェルスクリプトが機能しないという大きな問題が解決します。同じエラーが発生します。

testscript

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シェルスクリプト

#!/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

testscript.txt

To:[email protected]
From:xxxxxxxx.domainname.com

Subject:Mail Test
MIME-Version:1.0

Content-Type:text/plain

自動メールテスト

1
Chris W

ユーザーがssmtpを直接実行することは想定されていません。 mailmailxmuttなどの適切なメールユーザーエージェントを使用します。

echo Test | mailx -s Test [email protected]
2
fkraiem