アクションメールの送信に失敗する

お世話になっております。

イベントが発生した際に、アクションにてメールを
送信するように設定していますが、アクションが失敗し、
メッセージアクションに以下のエラーが出力されます。

[出力されるメッセージ]
---------------
cannot connect to SMTP server [localhost]: bind() failed: [22] Invalid argument
---------------

sendmailは起動しており、iptables、SELinuxも無効化しています。
また、/var/log/maillogには何も出力されていません。

sendmailが起動していること、iptables, SELinuxを
無効化していること、/var/log/maillogにエラーが
出力されていないことは確認できています。

また、以下の操作にてターミナルから手動でメールが
送信できることも確認できています。

[実行した操作]
----------------
# mail root@localhost
 → rootユーザにメールは問題なく届きます
----------------

メディアタイプ、ユーザは以下の通り設定しています。

[メディアタイプ]
-----------------
説明 :Email
タイプ :メール
SMTPサーバ :localhost
SMTP helo :localhost
送信元メールアドレス:zabbix@localhost
-----------------

[メディアタイプ]
-----------------
アカウント名:Admin
名前 :Zabbix
名字 :Administrator
パスワード :設定していません
グループ  :Zabbix Administrators
メディア  :Email root@localhost 1-7,00:00-23:59; NIWAHD 有効
-----------------

度重なる質問で大変恐縮ではございますが、
どのように対処すれば、アクションメールを
送信できるようになりますでしょうか?

コメント表示オプション

お好みのコメント表示方法を選び「設定の保存」をクリックすると変更が反映されます。
ユーザー TNK の写真

ご参考までに、/etc/hostsにどのような記述をされているかを教え
て頂けませんか?
例えば、localhostに対する記述はどのようにされていますか?

ユーザー OKB の写真

TNK様

お世話になっております。

/etc/hostsは以下の通りとなっています。
[/etc/hosts]
----------------------
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.209.135 PC
192.168.209.116 PC2
192.168.209.53 Zabbix server
192.168.209.53 localhost
----------------------

また、/etc/nsswitch.confのhostsの部分は以下の通りです。
[/etc/nsswitch.conf]
----------------------
hosts: files dns
----------------------

以上、よろしくお願い致します。

ユーザー yanta1 の写真

localhost が IPv6 の方に接続しようとしているのではないでしょうか。
試しに、SMTPサーバー: 127.0.0.1 とするとどうでしょうか。

(追記)
192.168. の方に接続しているのかもしれません。
RedHat/CentOS系の sendmail はデフォルトでは 127.0.0.1:25 しか LISTEN していないので。

ユーザー OKB の写真

yanta1様

お世話になっております。

sendmailがよくわかっていので、間違ったことを
質問していたら申し訳ございません。

>試しに、SMTPサーバー: 127.0.0.1 とするとどうでしょうか。

/etc/sendmail.cfの#SMTP daemon optionのAddrを127.0.0.1に変更するということでよろしいでしょうか?

/etc配下にsendmail.cfがなかったため、/etc/mail/sendmail.cfを確認しましたところ、Addr=127.0.0.1になっておりました。

[sendmail.cfの記述]
---------------
# SMTP daemon options

O DaemonPortOptions=Port=smtp,Addr=127.0.0.1, Name=MTA
---------------

ユーザー yanta1 の写真

/etc/sendmail.cfの#SMTP daemon optionのAddrを127.0.0.1に変更するということでよろしいでしょうか?

いえ、Zabbixサーバー設定のメディアタイプの方です。

ユーザー OKB の写真

yanta1様

お世話になっております。

メディアタイプを以下の通り変更しましたが、
先ほどとは違ったエラーが出力され、アクションに失敗しました。

[メディアタイプの変更]
------------------------
(変更前)
 説明 :Email
 タイプ :メール
 SMTPサーバ :localhost
 SMTP helo :localhost
 送信元メールアドレス:zabbix@localhost

(変更後)
 説明 :Email
 タイプ :メール
 SMTPサーバ :127.0.0.1
 SMTP helo :localhost
 送信元メールアドレス:zabbix@localhost
------------------------

[変更後に出力されるエラー]
------------------------
wrong answer on MAIL FROM [553 5.5.4 <zabbix@localhost>... Real domain name required for sender address ]
------------------------

ユーザー yanta1 の写真

Zabbix からはかけ離れてしまいましたが。

sendmail が、mail from のドメイン名が不正とのことで拒否しています。
送信元メールアドレス: zabbix@localhost.localdomain
とか、正しいドメイン名にしてください。

ユーザー TNK の写真

他のプロダクトの障害事例でも、IPv6を有効にしている場合の問題
であったりするので、IPv6を利用されていないのであれば、IPv6を
無効にした方が良いかもしれません。

すでに、yanta1さんから回答を書いていただきましたが、

[変更後に出力されるエラー]
------------------------
wrong answer on MAIL FROM [553 5.5.4 <zabbix@localhost>... Real domain name required for sender address ]
------------------------

これなら、

 送信元メールアドレス  zabbix@localhost.localdomain

などメールアドレスのドメインの部分を「.」を含む形式に設定し
てみてください。

ご参考までに、CentOS 6.2(RHEL 6.2互換)上に、ZABBIX-JPが公開
しているZabbix 1.8.10のRPMをインストールして、以下の設定でメ
ールを送ることができています。

 MTA:
  CentOS 6.2標準のPostfix 2.6.6-2.2

 Zabbix上のメディアタイプ「Email」
  説明  Email
  タイプ メール
  SMTPサーバ  localhost.localdomain
  SMTP helo  localhost.localdomain
  送信元メールアドレス  zabbix@localhost.localdomain

 /etc/hostsの内容
<code>
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
</code>

ユーザー OKB の写真

TNK様、yanta1様

お世話になっております。

以下の通り、localhost.localdomainに変更した結果、
メールが送れるようになりました。

ありがとうございました。

 Zabbix上のメディアタイプ「Email」
  説明  Email
  タイプ メール
  SMTPサーバ  localhost.localdomain
  SMTP helo  localhost.localdomain
  送信元メールアドレス  zabbix@localhost.localdomain