zabbixで匿名認証

閲覧数: 68(0)

Zabbixのユーザー認証をLDAPへ移行する際、検索用のIDを用意するのが面倒な時、匿名認証を使いたくなります。公式ドキュメントには、Zabbixは匿名認証をサポートしていないと書かれているので、普通に設定しただけでは使えません。設定画面は以下の通りです。

全てのフィールドに有効な値が設定されていることがLDAP認証化の必須条件となっています。この設定で何が問題なのかと言えば、Bind DNとBind passwordです。ログインに使用されているIDが認証先のディレクトリに存在するかどうかを検索するための検索IDを入力するのですが、例えばセキュリティポリシーでパスワードを90日毎に変更することになっていると、その変更を90日毎に実施しなければ検索出来なくなってしまいます。せっかくディレクトリと連携してパスワード管理という面倒な作業から解放されようとしているのに90日毎にパスワードを変えるなんて馬鹿らしいですよね。そこでちょこっとソースをいじって、ログインしようとしているIDで検索をする仕様に変更します。

手を入れるのは、/usr/share/zabbix/include/classes/ldap/CLdap.phpです。既定値を設定できるようになっていますが、設定画面で入力した値で上書きされてしまうので、あらかじめ既定値を設定するのと、上書きするコードをコメントアウトします。必須設定は、host, bind_dn, base_dn, search_attributeです。27行目のコメントアウトを忘れないように。これを忘れると既定値を設定しても、設定画面の値で上書きされてしまいます。

class CLdap {

        public function __construct($arg = []) {
                $this->ds = false;
                $this->info = [];
                $this->cnf = [
                        'host' => 'ldap://192.168.38.128',
                        'port' => '389',
                        'bind_dn' => '%{user}@domain',
                        'bind_password' => '',
                        'base_dn' => 'dc=domain,dc=co,dc=jp',
                        'search_attribute' => 'sAMAccountName',
                        'userfilter' => '(%{attr}=%{user})',
                        'groupkey' => 'cn',
                        'mapping' => [
                                'alias' => 'uid',
                                'userid' => 'uidnumbera',
                                'passwd' => 'userpassword'
                        ],
                        'referrals' => 0,
                        'version' => 3,
                        'starttls' => null,
                        'deref' => null
                ];

                if (is_array($arg)) {
//                      $this->cnf = zbx_array_merge($this->cnf, $arg);
                }

Zabbix以外でも匿名認証を使うことが出来ます。慣れるととても便利です。LDAP認証化すると、adminが使えなくなるので、ローカルのグループを別に作って、そこへadminを入れて、ローカルグループの認証方式をシステムデフォルトではなく、zabbixデータベース内のユーザー情報へ変更しておきます。adminのログインにはLDAP認証ではなく、ローカル認証が使用されるようになります。

【最終更新日: 2019年6月16日】
カテゴリーIT閑話, 公開タグ
zabbix 4.0
blank
2019年6月21日

昨日の「ラズパイ」に続いて他のサーバーもZABBIXエージェントのバージョンアップを行います。AWS  続きを読む

RASPI3のメンテナンス
blank
2019年6月20日

実は最近「ラズベリーパイ」が大活躍していてなかなか定期メンテナンスするタイミングがなかったのだけれど  続きを読む

Zabbix 3.4
blank
2017年12月10日

Zabbix 3.4がリリースされてしばらく経ったので安定してRHEL6用も出て来たようなので、ここ  続きを読む

ZABBIX 3.0.13
blank
2017年11月9日

AWSとWebARENAの監視用としてZABBIXを使用しています。ZABBIXのコンポーネントは以  続きを読む

Re:EC2 t2.nanoの設定
blank
2017年9月30日

いろいろ悩んだ結果「AWS(EC2)」と「WebARENA」のS/W住み分けを次のように決めました。  続きを読む

究極のt2.nanoインスタンス設定
blank
2017年9月27日

EC2の中で最小インスタンスタイプである「t2.nano」はCPUが1コアでメモリは512MBです。  続きを読む

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください