Custom LDAP Monitor Does Not Work

https://www.poppelgaard.com/netscaler-case-study-custom-ldap-monitor-does-not-work

Problem Definition

A customer tried to configure custom LDAP monitor, but the monitor failed after it was bound to a load balancing service.

Troubleshooting Steps

The Technical Support Engineers used the nsumon-debug.pl script from the /nsconfig/monitors directory:

root@NS# cd /nsconfig/monitors
root@NS# ls -ltr
total 68
-r-xr-xr-x 1 root wheel 8784 Dec 21 06:08 nswi.pl
-r-xr-xr-x 1 root wheel 2517 Dec 21 06:08 nsumon-debug.pl
-r-xr-xr-x 1 root wheel 3184 Dec 21 06:08 nssnmp.pl
-r-xr-xr-x 1 root wheel 1453 Dec 21 06:08 nssmtp.pl
-r-xr-xr-x 1 root wheel 2509 Dec 21 06:08 nsrdp.pl
-r-xr-xr-x 1 root wheel 2392 Dec 21 06:08 nspop3.pl
-r-xr-xr-x 1 root wheel 3742 Dec 21 06:08 nsntlm-lwp.pl
-r-xr-xr-x 1 root wheel 2769 Dec 21 06:08 nsnntp.pl
-r-xr-xr-x 1 root wheel 2979 Dec 21 06:08 nsmysql.pl
-r-xr-xr-x 1 root wheel 3113 Dec 21 06:08 nsftp.pl
-r-xr-xr-x 1 root wheel 14010 Dec 21 06:08 nsall.pl
drwxr-xr-x 3 root wheel 512 Feb 1 07:18 perl_mod
-r-xr-xr-x 1 root wheel 3793 Feb 29 19:54 nsldaps.pl
-r-xr-xr-x 1 root wheel 3860 Mar 1 01:45 nsldap.pl

With the nsumon-debug.pl script, the engineers set the argument provided in the LDAP Monitor Base DN, Bind DN, and password along with the LDAP IP address and port number.

root@NS7039# nsumon-debug.pl nsldap.pl 10.217.130.120 389 3 “base=cn=users,dc=company,dc=com;bdn=cn=admin,cn=users,dc=company,dc=com;password=xxxxx”
nsldap.pl syntax OK
0

root@NS# nsumon-debug.pl nsldaps.pl 10.217.130.120 636 3 “base=cn=users,dc=company,dc=com;bdn=cn=admin,cn=users,dc=company,dc=com;password=xxxxx”
nsldaps.pl syntax OK
0

The engineers used the following syntax when the LDAP argument had a filter or object:

root@NS7039# nsumon-debug.pl nsldap.pl 10.217.130.120 389 3 “base=cn=users,dc=company,dc=com;bdn=cn=admin,cn=users,dc=company,dc=com;password=xxxxx; filter=objectclass=*;attribute=objectclass”
nsldap.pl syntax OK
0

root@NS# nsumon-debug.pl nsldaps.pl 10.217.130.120 636 3 “base=cn=users,dc=company,dc=com;bdn=cn=admin,cn=users,dc=company,dc=com;password=xxxxx; filter=objectclass=*;attribute=objectclass”
nsldaps.pl syntax OK
0

The listed nsumon-debug.pl scripts were successful. If there were any failures, then the exit reason for nsumon-debug.pl output appears as follows:

root@NS93ncVPX# nsumon-debug.pl nsldaps.pl 10.217.130.120 636 3 ” base=cn=users,dc=company,dc=com;bdn=cn=admin,cn=users,dc=company,dc=com;password=xxxxx”
nsldaps.pl syntax OK
1,Failed to bind to server – Connection reset by peer

root@NS93ncVPX# nsumon-debug.pl nsldap.pl 10.217.130.120 389 3 ” base=cn=users,dc=company,dc=com;bdn=cn=admin,cn=users,dc=company,dc=com;password=xxxxx”
nsldap.pl syntax OK
1,Failed to bind to server – Connection reset by peer

The other error messages or exit reasons could include invalid argument, or broken pipe.

The engineers also verified if LDAP was configured for client authentication that is they verified the LDAP policy.

The engineers also verified if LDAP required any client certificate to connect.

By default, the nsldap.pl script uses only dase, bdn, and password as argument and does not use any certificate to connect to the LDAP. The nsldap.pl script uses the parameter provided as an argument. If the LDAP is expecting a certificate, then certificate must be passed as an argument to the script. Currently, the script does not support a custom argument.

Resolution

To resolve this issue the engineers created a USER monitor instead of LDAP monitor, as shown in the following screen shots:

The engineers bound the user monitor to the load balancing Service.

Custom LDAP Monitor Does Not Work的更多相关文章

  1. How to Create a Perl Based Custom Monitor on NetScaler

    How to Create a Perl Based Custom Monitor on NetScaler https://support.citrix.com/article/CTX227727 ...

  2. Liferay7 BPM门户开发之24: Liferay7应用程序安全

    整理中...... Resources, Roles, and PermissionsPortal Access Control List (PACL) Custom SSO Providers Au ...

  3. centos7 安装ldap

    ldap首先我们要知道这个ldap的概念, LDAP是轻量目录访问协议(Lightweight Directory Access Protocol)的缩写 目录是一个为查询.浏览和搜索而优化的专业分布 ...

  4. Centos 7 vsftpd ldap 配置

    #ldap 安裝配置 环境Centos7#安装 yum install -y openldap openldap-clients openldap-servers migrationtools pam ...

  5. 11g新特性:Health Monitor Checks

    一.什么是Health Monitor ChecksHealth Monitor Checks能够发现文件损坏,物理.逻辑块损坏,undo.redo损坏,数据字典损坏等等.Health Monitor ...

  6. Configure LDAP Server(centos7 openldap)

    1.安装openldap -server: [root@dlp ~]# yum -y install openldap-servers openldap-clients [root@dlp ~]# c ...

  7. centos 6.5 配置LDAP服务器+客户端!

    各种度娘!各种歌哥!网上教程参差不齐,历时1天,终于完成,不敢独享,遂,总结分享之,有问题可以留言,知无不言...开始吧 Note: 本次配置的服务器环境是<redhat enterprise ...

  8. Linux LDAP Server--->Clients配置

    Linux Ldap Configuration LDAP Server Base Software & SysTem Info SysTem Info 系统版本:centos 6.4 LDA ...

  9. Open Sourcing Kafka Monitor

    https://engineering.linkedin.com/blog/2016/05/open-sourcing-kafka-monitor     https://github.com/lin ...

随机推荐

  1. react中实现原生enter/回车事件及antdesign组件实现方式

    先直接上核心代码: this.goToHomePage换成自己逻辑 自己写的时候直接把this.goToHmoPage()换成自己的逻辑就行了,还有注意一点的是: 需要传个空函数,不然会报错 在com ...

  2. ionic 命令cordova

    安装android platform : ionic platform add android 安装一维码cordova插件 :cordova plugin add https://github.co ...

  3. rsync + git发布项目

    前言: 更新项目的时候需要将更改的文件一一上传,这样比较麻烦,用版本控制器git +rsync 搭建一个发布服务器,以后发布文件非常方便 首先说下,我这边的更新流程,本地写完之后,git push 到 ...

  4. JAVA / MySql 编程——第七章 JDBC

    1.JDBC:JDBA是Java数据库连接(Java DataBase Connectivity)技术的简称,提供连接各种常用数据库的能力:         ●Java是通过JDBC技术实现对各种数据 ...

  5. PL/sql中如何声明变量,常量,控制语句及for,loop,while和顺序控制的使用

    pl/sql 什么是PL/SQL PL/SQL是结合oracle过程语言和机构化查询运行(SQL) 的一种扩展语言.使用PL/SQL可以编写具有很多高级功能的程序,有以下优点 PL/SOL可以采用过程 ...

  6. XStream 工具类 [ XmlUtil ]

    pom.xml <dependency> <groupId>com.thoughtworks.xstream</groupId> <artifactId> ...

  7. PHP关闭notice级别的错误提示

    1.在php.ini文件中改动error_reporting改为: error_reporting=E_ALL & ~E_NOTICE 2.如果你不能操作php.ini文件,你可以使用如下方法 ...

  8. 从0开始学习 Git

    1. 什么是Git? Git 是 Linux 发明者 Linus 开发的一款新时代的版本控制系统,那什么是版本控制系统呢?怎么理解?网上一大堆详细的介绍,但是大多枯燥乏味,对于新手也很难理解,这里我只 ...

  9. 笔记-python-coroutine

    笔记-python-coroutine 1.      协程 1.1.    协程的概念 协程,又称微线程,纤程.英文名Coroutine.协程是一种用户态的轻量级线程. 线程是系统级别的,它们是由操 ...

  10. 笔记-python-元类metaclass

    笔记-python-元类metaclass 1.      元类 1.1.    类也是对象 class Person(object): pass 上面的代码会在内存中创建一个类,它也是对象, 可以将 ...