postfixメールキュー数の監視でのUID/GID設定について
いつもお世話になっています。
アオヤギと申します。
現在、postfixメールキュー数の監視設定中です。
下記の教材を基に実施してるのですがうまくいかないです。
ご教授お願いします。
・参考教材
Zabbix総合監視[実践入門]ver2.2対応の書籍を参考に設定しています。
第12章 アプリケーションの詳細監視
12.2 Postfixメールサーバの監視
12.2.2 キューの数が増えすぎたら自動的にholdキューに退避し、
システム管理者にチャットメッセージによる障害通知をおこなう
・やりたい事
メールサーバのメールキュー数が閾値を超えた場合にzabbixサーバに障害アラートを通知したい。
・基本情報
zabbixサーバ、メールサーバ:REHL7.2
zabbixのバージョン:2.2
※zabbix-agentインストール済み
zabbixサーバ上でSNMP監視確認済み
・設定
教材内の下記を実施。
・ユーザパラメータとsudoの設定
リスト12.2-1 zabbixユーザがPostfixのキューディレクトリを参照できるように設定
・visudoで実施
--------------------------------------------
# Defaults requiretty
zabbix localhost=(root) NOPASSWD: /usr/bin/find /var/spool/postfix/active /var/spool/postfix/incoming -type f
--------------------------------------------
・zabbix_agentd.conf
UserParameter=postfix.queue,/usr/bin/sudo /usr/bin/find /var/spool/postfix/active /var/spool/postfix/incoming -type f|wc -l
・アイテム「キュー数」のみ設定
表12.2-2 Postfixのメールは移動状況のアイテム設定
・トリガー設定
表12.2-3メールのキューのトリガー設定
※テストとして一時的に条件式を1000⇒0に変更し、
アラート通知できるように設定
※sudo /usr/bin/find /var/spool/postfix/active /var/spool/postfix/incoming -type f|wc -l
実施すると数値1以上取得可能です。
・アクション設定
表12.2-4メールのキューのアクション設定
下記を設定
アクション、アクションの実行条件、アクションの実行条件
・リモートコマンドの許可とsudoの設定
リモートコマンドは使用しないが
「EnableRemoteCommands = 1」を設定
・問題点
設定後に、アラート検知が動作せず。
「/var/log/secure」上に下記メッセージが出力される。
・メッセージ
Jun 6 11:41:07 ホスト名 sudo: pam_unix(sudo:auth): auth could not identify password for [zabbix]
Jun 6 11:41:07 ホスト名 sudo: pam_succeed_if(sudo:auth): requirement "uid >= 1000" not met by user "zabbix"
Jun 6 11:41:17 ホスト名 sudo: pam_unix(sudo:auth): conversation failed
・RHEL上のgroup
zabbix:x:993:
・RHEL上のpasswd
zabbix:x:995:993:Zabbix Monitoring System:/var/lib/zabbix:/sbin/nologin
出力メッセージを確認するとUIDが1000以上でないといけないと思われるのですが、
単純にzabbixのUIDを1000以上で編集した場合、
zabbix-agentは起動するのでしょうか
初歩的なzabbix(ソフトウェア)とlinuxの質問で申し訳ございませんが
回答頂ける助かります。
wakaba - 投稿数: 228
広瀬です。
/etc/sudersへの編集に問題があります。対象サーバで、「uname -n」で帰ってくるホスト名を確認しましょう。
localhostが帰ってくるなら話は別ですが、たぶんそれ以外でしょう。
--------------------------------------------
# Defaults requiretty
zabbix localhost=(root) NOPASSWD: /usr/bin/find /var/spool/postfix/active /var/spool/postfix/incoming -type f
--------------------------------------------
↑この部分のホスト名が正しく無い
OS初期のlocalhost(/etc/sysconfig/networkに記述したホスト名)のままなら、これでうまく行きますが、
そうで無ければ、NOPASSWD指定してもパスワードを求められます。
「uname -n」で返答された値をvisudoで編集する、localhostと入れ替えて確認しなおしてください
daisuke - 投稿数: 2
広瀬さま
早急なご回答ありがとうございました。
ご指摘通り実施しましたら、うまくできました!!
本当にありがとうございました。