User Tools

Site Tools


ldap_integration

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
ldap_integration [2009/08/14 09:54] aorthldap_integration [2009/08/18 09:57] alan
Line 1: Line 1:
 ===== LDAP Integration ===== ===== LDAP Integration =====
  
-ILRI uses an Active Directory server for user authentication, which is primarily used for Exchange e-mail services.  Currently users have an Active Directory username and password for their Windows-centric single sign on and e-mail, and then they have a separate account for use with the HPC.  There exists functionality in Linux to look at Active Directory for user authentication.+ILRI uses an Active Directory server for user authentication, which is primarily used for Exchange e-mail services.  Active Directory is Microsoft's version of LDAP with a little special sauce.  Currently users have an Active Directory username and password for their Windows-centric single sign on and e-mail, and then they have a separate account for use with the HPC.  There exists functionality in Linux to look at Active Directory for user authentication.
  
-This was working once, using a //slightly// customized PAM module.  In order to use the module several steps are needed.  Download the module source and compile it as shown below:+<note warning>ILRI's Active Directory servers are configure to [[http://support.microsoft.com/kb/326690|disallow anonymous binds]] (you have to authenticate in order to query), so we need to use a semi-privileged account in order to run queries.  Robert Okal has given me an account to perform queries.</note> 
 + 
 +The Active Directory server must not only be a domain controller, but must be running the [[http://technet.microsoft.com/en-us/library/cc978012.aspx|global catalog service]] (port 3268) in order for our LDAP queries to work properly.  ILRI Kenya's Active Directory servers are: 
 +  * 172.26.0.218 <- running a global catalog server (port 3268) 
 +  * 172.26.0.219 
 +  * 172.26.0.220 <- running a global catalog server (port 3268) 
 + 
 +This was working once, using a //slightly// customized PAM module.  In order to use the module several steps are needed.  Download the module source and edit the code to point to the correct server, then compile it as shown below:
   * Compile the code:  ''gcc -fPIC  -c pam_cgiar_ldap.c''   * Compile the code:  ''gcc -fPIC  -c pam_cgiar_ldap.c''
-  * Link the code:  ''ld -x --shared -o pam_cgiar_ldap.so pam_cgiar_ldap.o –lldap''+  * Link the code:  ''ld -x --shared -o pam_cgiar_ldap.so –lldap pam_cgiar_ldap.o''
  
 **pam_cgiar_ldap.c**: **pam_cgiar_ldap.c**:
Line 48: Line 55:
   ldap_set_option( NULL, LDAP_OPT_PROTOCOL_VERSION, &version);   ldap_set_option( NULL, LDAP_OPT_PROTOCOL_VERSION, &version);
   ldap_set_option( NULL, LDAP_OPT_NETWORK_TIMEOUT, &timeOut);   ldap_set_option( NULL, LDAP_OPT_NETWORK_TIMEOUT, &timeOut);
-  ld = ldap_init("172.26.12.11" , 389 );+  ld = ldap_init("172.26.0.218" , 389 );
   if (ld==NULL) printf("\nproblems connecting\n");   if (ld==NULL) printf("\nproblems connecting\n");
   int rc;   int rc;
ldap_integration.txt · Last modified: 2012/02/06 08:43 by aorth