Zabbix は ldap:hostname/... チェックへのアクセスをサポートしていますか? HTTP チェックを使用して次の項目をチェックする項目を設定しようとしました:
ldap://{HOST.IP}/principalName=username,cn=Users,SECAUTHORITY=DEFAULT?dn??(&(secAcctValid=TRUE)(secPwdValid=TRUE))
しかし、エラーが返されますheader is empty
。これは、URL の前に http が追加されているか、ldap:// が無視されている可能性があることを示唆しています。Web チェックを使用して同じ機能を実現できます (返されることを期待している必要な文字列で動作します)。これは私のニーズに合っていると思いますが、現在使用している他の LDAP チェックの出力を表示できると便利です。または、代わりに標準の curl リクエストを設定することは可能ですか? system.run[command] オプションを確認しましたが、URL 内のカンマをエスケープする方法がわかりません。
手動 curl コマンド (使用時に異なるユーザー名を使用)
curl -s --user user:pass ldap://IP-ADDRESS/principalName=username,cn=Users,SECAUTHORITY=DEFAULT
curl からの出力は次のようになります (一部の値は削除されています) `DN: principalName=username,cn=Users,secAuthority=Default objectclass: objectclass: objectclass: objectclass:
secLoginType: Default:LDAP
principalName:
secUUID:
secDomainId:
secDN:
secHasPolicy: true
secAuthority: Default:
secPwdFailCountTime: 20160426150110.0Z
secPwdLastChanged: 20180924201506.0Z
secPwdValid: TRUE
secAcctValid: TRUE`
答え1
述べたようにhttps://superuser.com/users/2914/wazooxHTTP チェックは HTTP プロトコル用です。URL では機能しませんldap://
。
curl
実行したように LDAP クエリをチェックし、さらに評価するために値を Zabbix サーバーに返すUserParameter アイテムを設定することをお勧めします。
UserParameter ドキュメント:https://www.zabbix.com/documentation/5.0/manual/config/items/ユーザーパラメータ