OTRSで「通知」をメールで受け取る際にハマった時の備忘録
OTRSの構築までは、よく出来たマニュアルもあり簡単になりました
インストールマニュアル
そして、簡単なデモシナリオを作成して「なんとなくうまく動いてる」までも簡単です。
が、通知メールにハマりました
環境
CentOS7
OTRS5
ハマった点
通知メールが届かない
設定
OTRS-管理-メール設定-メールアカウント
OTRSには、メールアカウントを登録する箇所が複数有ります。このメールアカウントが何を指すのか?理解する必要があります。
このメールアカウント設定は 「IMAPやPOPからメールを取得する」アカウントで、複数設定できます。この設定からはアカウントの登録やメール取得のテストを行うことが出来ます(手動)
アカウント設定等間違っている場合は取得できないので、分かりやすいです
OTRS-管理-メール設定-メールアドレス
この設定が、何のためのメールアドレス設定なのか当初解らず。この設定では単にメールアドレスを登録するだけです。ここで設定されたメールアドレスは「キュー」に対する「発信元アドレス」として設定することが出来ます。それだけの設定でした。OTRSでは「キュー」によって応答する返信元アドレスなどを変えることが出来るようです。
しかし、これがハマった原因です
OTRS-管理-システム管理-システム設定-Framework-Core-
AdminMai
管理者からの通知に使われるアドレス(らしい)。下のNotificationSendMail と何が違うのかよく解らない
NotificationSenderMail
「通知」に使われる際のメールアドレス
OTRS-管理-システム管理-システム設定-Framework-Core:Sendmail
今回は Office365 Outlookのアドレスを登録してみました。
SendmailMode
SMTPTLS
SendmailModule::Host
smtp-mail.outlook.com
SendmailModule::Port
587
SendmailModule::AuthUser
SendmailModule::AuthPassword
パスワード
Sendmailに関するアカウント情報はOutlook smtpの情報を入れてください
通知メールが飛ばない原因
上記設定を行い、通知(キューにチケットが入ったら通知 など)を行っても、一向にメールが飛ばず。
CentOsの メールログを見ると確かにエラーとなっているが原因は不明。しかし、特定のキューに限っては「飛んでる!」
この原因は Outlook等 smtpの仕様によるものでした
OTRSは sendmailに設定したアカウント情報でメールを発信します。outlookの場合 認証が必要ですので hogehoge@outlook.com のアカウントとパスワードを使います。
しかし、先ほどの OTRS-管理-メール設定-メールアカウント で、hogehoge@outlook.comとは別のメアドを登録しておき、キューに設定しておくと smtp-mail.outlook.com から「送信元アドレスと認証アカウントが違うので、ダメです」と拒絶されます。
結果
outlookやgmail など、smtp 認証が厳しい場合、OTRSの「メールアカウント」は 「sendmail設定に使った認証アドレス(アカウント)以外、正しく送れない」
キュー単位で発信元アドレスを変更できる仕様のOTRSですが、送信元チェックの緩いMTAを作るなどしない限り この設定が徒となり通知メールが飛ばないと言うことになります
NotificationSenderMail も同様に、sendmailで設定したアカウントメールでないとエラーとなりますね