Purpose

The purpose of this document is to help in configuring Windows active directory service for authenticating the versa director. This will cover a basic level of troubleshooting on versa director

As a result, this document provides a checklist of common procedures to try before you begin to troubleshoot a connection and call Versa Technical Support. This document will mainly illustrate and focus on the checks needs to perform on Versa Devices.

Prerequisite: Active Directory installation is already completed on the Windows server. The forset has been added. This should look something similar to below where raj.lab is my domain.

 

 

1. Create OU on Active Directory

The first step is to add an OU under the forest. So here we are going to add three OU. First is Tenant which will have all the tenants that we have configured on the director. The second is Roles which contains all the roles including custom roles and the third is users. Kindly note that all those names case sensitive and must match exactly with the director configuration.

Go to Active Directory users and computers and right-click on the forest then add new OU and name them appropriately

Here in the screen capture, we can see all three OU Tenants, Roles, and User are created

2. Creating groups inside OU

Now we need to create groups inside the respective OU. Here for example under the Tenant OU we will create groups which are the names of tenants we have on the director to provide authentication service to the tenant user. Kindly note that all these names case sensitive and must match exactly with the director configuration.

 

 

Similarly, we will add the roles under OU Roles I am only configuring our predefined roles however we can have custom roles defined in a similar fashion.

ProviderDataCenterAdmin

ProviderDataCenterSystemAdmin

ProviderDataCenterOperator

TenantSuperAdmin

TenantSecurityAdmin

TenantDashboardOperator

TenantOperator

 

 

3. Defining users

Now at this point we will have to define or users First we will define a user just for Bind data which will not have a role defined. This will used for establish a authentication channel  between Director and AD server.

Right click on the user and select new user.

Give it a name of your choice and select a password and click next and finish.

Come to the Power shell and execute Get-aduser <name of user>. In my case it john, it will show you the details.

 


4.Configuring Auth connector in Director

From here just login to the versa Director and go to Administrator >>> Connector >>> Authentication and click on + sign.

At this window fill all the details and select this as default connector. In my case

Bind DN: CN=john,OU=User,OU=p1-org,DC=raj,DC=lab

   Note: DistinguishedName value is Bind DN value

Base DN:  DC=raj,DC=lab           

 

 

Keys

Values

Example

Name 

<user defined>

C1

IP address/ FQDN

 Active director username or password

10.192.155.98

BIND DN

Distinguish name ( BIND DN)

CN=raj,OU=Users,OU=p1-org,DC=raj,DC=lab

BIND Credentials

Password for BIND DN user

password

Base DN

 Extracted from Distinguished name

,DC=versa,DC=com

Default Connector

If check default connector box

System user and tenant user will be able to login

Assumption (connector is associated with tenant org as Shown above

 

If we uncheck default connector

Only tenant user will be able to login

Assumption (connector is associated with tenant org t1 in my case.

 

 

This finishes step number three of creating users for bind data. Now from here onwards we can create other users who will be used for login.


5.Creating users for login

In this section, I will create two types of users. First is ProviderDataCenterSystemAdmin user which is considered to be a system user and it will have system-wide access. Secondly, we will create a Tenant user and it will a role of TenantSuperAdmin which will access to that specific tenant related objects.

5.1 Adding ProviderDataCenterSystemAdmin user

I will add a user call raj here. For that go to the AD server right click on the user  >> New >> User. Fill in the details as shown below and click on next. On the next step set your password click next and finish. User raj should be able to login to the director now.

5.2 Creating Tenant users

As shown above same way add another user. Here I have added a user called t1-user1.

The additional step is to right-click on the user t1-user1 and click on properties. Here you have to click on Member Of. Add role and tenant to the user. In my case, I am adding a role as TenantSuperAdmin and my tenant on the director is t1 so I am adding that as well. Kindly note that this t1 tenant I have created at step number two.

 

Now come to the director and make sure that the connector we have configured should be called in the respective tenant organization.

User t1-user1 is now ready to login to the director. Kindly note that we have to specify tenant org name as well so the format would be <username>@<tenant org name>


6. Troubleshooting

Review the logs in /var/log/vnms/ncs/vnms-external-auth.log file

In the below screen shot I have captured the logs where a ProviderDataCenterSystemAdmin user is able to login successfully to show the correct sequence of events.

In below screen shot I have captured the logs tenant user login successfully to show the correct sequence of events.

Below logs will be seen if the director not able to reach the AD server

Here are failure scenarios.

 

We have provided a script in Versa Director  to test the users /opt/versa/vnms/scripts/externalauth/

sudo ./ad_client.py --address 10.192.155.98 --ad-username "CN=raj,OU=User,OU=p1-org,DC=raj,DC=lab" --ad-password versa123 --base-dn "dc=raj,dc=lab" --username raj --password versa123

sudo ./ad_client.py --address 10.192.155.98 --ad-username "CN=t1-user1,OU=User,OU=p1-org,DC=raj,DC=lab" --ad-password "versa123" --username "t1-user1" --password "versa123" --base-dn "dc=raj,dc=lab"

7. Please collect below logs

/var/log/vnms/ncs/vnms-external-auth.log

vd1> show configuration nms provider auth-connectors | display set

From AD sever run cmd ” get-aduser  <username>”


8. Contact Support

Capture Logs all above outputs and contact Versa Support.
NOTE: Log the putty/terminal session to capture all outputs when performing requested steps, will be helpful when engaging Support.