ZabbixのWeb管理画面へのログインをLDAPと連携する

記事タイトルとURLをコピーする
こんにちはAWSチームの柳瀬です。 前回、珍しくOSSの監視ツールであるZabbixの事を取り上げましたが、今回もZabbixに関係する事です。 ZabbixはWebの管理画面から監視データを参照、設定する事が可能でありユーザーを作成して必要な権限を付与する事も出来ます。 この管理画面へのログインはデフォルトでZabbixデータベースを使用した認証となっておりますが、今回はこれをLDAP認証に変更する場合の手順を記載します。 既にZabbix内に存在するユーザー認証はそのまま活かしつつ、LDAP認証に対応していきたいと思います。

検証環境

  • Amazon Linux
  • Zabbix 2.0.4
  • LDAPサーバのTCP389番ポートにアクセス許可をしておいて下さい

パッケージインストール Zabbixサーバが動作する環境にphp-ldapがインストールされていない場合は事前にインストールして下さい。

$ sudo yum install php-ldap
既存ユーザーグループをZabbixデータベースを使用した認証に固定します Zabbix管理画面で以下のように展開します。 管理>ユーザー 以下のように、各ユーザーを選択してフロントエンドアへのアクセスを『Zabbixデータベース内のユーザー認証』に変更して保存します。 既存ユーザーでフロントエンドへのアクセスを許可しているユーザーは全て変更して下さい。 LDAP接続ユーザーが所属するユーザーグループを作成します

Zabbix管理画面で以下のように展開します。管理>ユーザー LDAP認証をさせるユーザーはこちらのグループに所属させることとします。(適宜運用ポリシーに合わせて変更して下さい。) 画面右上のプルダウンでユーザーグループを選択して、ユーザーグループを作成します。 任意のユーザー名(Ldap-Authenticationなど)を指定してフロントエンドのアクセスをシステムデフォルトにして保存します。 ※Zabbixの権限割り当てをグループ単位で行っている場合は適宜権限の追加を行なって下さい。 LDAP接続テスト用のユーザーを作成します Zabbix管理画面で以下のように展開します。管理>ユーザー LDAP認証を有効にする際に、接続テストをするユーザーを作成します。 画面右上のプルダウンでユーザーを選択して、ユーザーを作成していきます。 LDAP認証のユーザー名と同じ名前でエイリアスを指定して、グループを先ほど作成したLdap-Authenticationを指定して保存します。 パスワードは一時的に乱数を設定していただいて構いません。 ※Zabbixの権限割り当てをユーザー単位で行なっている場合は適宜権限の追加を行なって下さい。 デフォルトの認証方式をLDAP形式に変更します Zabbix管理画面で以下のように展開します。管理>認証 デフォルトの認証方式をLDAPに変更し、以下の情報を入力します。

LDAPホスト:接続先を指定して下さい
ポート:389
BaseDN:ou=Serverworks,dc=example,dc=local
検索の属性:sAMAccountName
Bind DN:administrator@example.local
Bind password:your_administrator_password

ログイン:先ほど作成したユーザー名を指定
パスワード:LDAP認証のパスワードを指定

入力が完了したらテストを実行し、成功した事を確認したら保存します。 ログインユーザーを追加したい場合は、LDAPに登録されているユーザーをテストユーザー作成時と同じ手順で追加すればOKです。 Zabbix側でもユーザーを追加する必要がありますが、Zabbixへのログイン権限を持つメンバーが退職した場合にLDAPユーザーを削除するだけでZabbixへのログイン権限権限も削除する事が出来るので、アカウント運用という面では少し便利かなと思いました。

参考リンク