web-dev-qa-db-ja.com

ssmtpを含むメールをSESに送信中にlogwatchからエラーが発生しました

AWS(ubuntu)でサーバーを実行していますが、ログファイルをメールで送信できるようにするには送信メールが必要です。これを行うために、私はssmtpとAmazonのSES(Simple Email Service)を使用しています。

メールアドレスを確認しましたが、コマンドラインからテストを実行するとすべて正常に機能します。メールは期待どおりに送受信されます。

私が抱えている問題はlogwatchにあります。それが実行されると(cronからと私が直接)、次のエラーが表示されます:

sSMTP[6890]: 554 Transaction failed: User name is missing: 'root'.

logwatchを次のように設定しました。

MailFrom = [email protected]
MailTo = [email protected]

両方ともSESで確認された電子メール。

ssmpt.confは次のように設定されます:

[email protected]
mailhub=email-smtp.us-east-1.amazonaws.com:465
#rewriteDomain=mydoman.com   # Having these uncommented doesn't help
#hostname=mydomain.com
UseTLS=YES
AuthUser=XXXXX
AuthPass=XXXXX
AuthMethod=LOGIN
FromLineOverride=YES

revaliases

root:[email protected]:email-smtp.us-east-1.amazonaws.com:465
logs:[email protected]:email-smtp.us-east-1.amazonaws.com:465

ssmptは、テストとしてssmptを介して電子メールを送信するかどうかを検出します。

何が起こっているのか、なぜユーザー名が欠落していると思われるのかを誰かが知っていますか? ssmptを介して「root」として問題なくメールを送信できます。問題を引き起こしているのはlogwatchだけです。

ありがとう

2
Roger Gilbrat

OK、私はついにこれを理解しました。

インターネット上の多くの「サイト」が言っていることにもかかわらず、logwatch.confファイルを変更しないでください。

/usr/share/logwatch/default.conf/logwatch.conf

代わりに、このファイルを次の場所にコピーする必要があります。

/etc/logwatch/conf/logwatch.conf

そして、そこで変更を加えます。

これを行った後、すべてが機能します。うまくいけば、これは他の誰かの頭痛の日を救うでしょう。

振り返ってみると、/usr/shareの設定ファイルを変更するのは奇妙だと思いました。私は自分の内臓に耳を傾けるべきだった。

1
Roger Gilbrat