<html>
  <head>
    <style type="text/css">
      <!--
        body { margin-bottom: 1px; font-variant: normal; margin-left: 4px; margin-top: 4px; line-height: normal; margin-right: 4px }
        p { margin-bottom: 0; margin-top: 0 }
      -->
    </style>
    
  </head>
  <body>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">Hi&#44; All:</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">I&#39;m starting to jump into the Asterisk world and try to figure out a VoIP solution for my company. &nbsp;I stumbled across the VoiceRD company/project&#44; which is supposed to integrate Asterisk into Novell eDirectory &#40;via LDAP&#41;. &nbsp;Unfortunately the project is in its very early stages&#44; and it just doesn&#39;t work that well. &nbsp;I&#39;m sure that will change as time goes on&#44; but I&#39;m not feeling real patient right now :-&#41;.</font>    </p>
<br>      
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">I&#39;m using Asterisk &#40;1.2.12&#41; with the LDAP Realtime driver &#40;res_config_ldap.so&#41;&#44; and I&#39;m experiencing a few problems that I could really use some help solving.</font>    </p>
<br>      
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">First of all&#44; I&#39;d like to configure Asterisk to talk to my LDAP servers securely. &nbsp;This is especially critical if I&#39;m going to have to bind as something other than an anonymous bind &#40;not just for my sake&#44; but the eDirectory servers require confidentiality by default - and I don&#39;t want to change that&#41;. &nbsp;When I try to set the port to 636 in the res_ldap.conf file&#44; I get bind errors &#40;&quot;Can&#39;t contact server...&quot;&#41;. &nbsp;I imagine this is an issue with certificates and trust&#44; but I&#39;m not exactly sure where I need to put my CA certificate in order to make the ldap module happy. &nbsp;I have my global ldap.conf file &#40;/etc/openldap/ldap.conf&#41; set up to not require certificate checking&#44; but this doesn&#39;t seem to make a difference with the res_config_ldap module. &nbsp;Anyone have any tips to help me figure out what&#39;s going on here&#63;</font>    </p>
<br>      
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">My second issue &#40;that I&#39;ve identified so far&#44; anyway&#41; is with the actual searches that LDAP does. &nbsp;I can get around the problem above my removing the username and password so that Asterisk binds anonymously on the insecure port &#40;389&#41;. &nbsp;I set up the parts of the LDAP tree that Asterisk needs access to so that Anonymous binds can see all attributes &#40;I know this isn&#39;t safe in a production environment&#44; and that&#39;s not how I plan to do it in production&#44; it was simply a temporary measure to see if I could actually get anything out of the LDAP tree&#41;. &nbsp;The module binds successfully and does some searches of the tree. &nbsp;Unfortunately&#44; I can&#39;t tell my looking at any of the log files for asterisk whether or not it actually pulls any data out of the tree. &nbsp;The log files don&#39;t seem to list results for LDAP lookups &#40;I&#39;ve got full debugging turned on&#44; so everyth!
 ing should be getting logged&#41;&#44; so it&#39;s hard to tell what the LDAP server returned. &nbsp;I&#39;ve tried to use tcpdump to see this data&#44; but tcpdump doesn&#39;t grab the full packet&#44; it truncates it at a certain point&#44; so I can&#39;t see the data. &nbsp;Also&#44; Asterisk seems to only query the .conf file entries from extconfig.conf and not the other entries &#40;sipusers&#44; extensions&#44; etc.&#41;.</font>    </p>
<br>      
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">Here&#39;s my extconfig.conf file &#40;I did patch Asterisk to recognize the quotation marks for this file&#41;:</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">&#91;settings&#93;</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">&#59;voicemail &#61;&gt; ldap&#44;&quot;o&#61;SEAKR&quot;&#44;voicemail</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">voicemail &#61;&gt; ldap&#44;&quot;ou&#61;People&#44;o&#61;SEAKR&quot;&#44;voicemail</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">&#59;realtime_ext &#61;&gt; ldap&#44;&quot;o&#61;SEAKR&quot;&#44;extensions</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">realtime_ext &#61;&gt; ldap&#44;&quot;ou&#61;Extensions&#44;ou&#61;VoIP&#44;ou&#61;Servers&#44;o&#61;SEAKR&quot;&#44;extensions</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">voicemail.conf &#61;&gt; ldap&#44;&quot;ou&#61;Conf&#44;ou&#61;VoIP&#44;ou&#61;Servers&#44;o&#61;SEAKR&quot;&#44;config</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">&#59;voicemail.conf &#61;&gt; ldap&#44;&quot;o&#61;SEAKR&quot;&#44;config</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">meetme.conf &#61;&gt; ldap&#44;&quot;ou&#61;Conf&#44;ou&#61;VoIP&#44;ou&#61;Servers&#44;o&#61;SEAKR&quot;&#44;config</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">&#59;meetme.conf &#61;&gt; ldap&#44;&quot;o&#61;SEAKR&quot;&#44;config</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">sip.conf &#61;&gt; ldap&#44;&quot;ou&#61;Conf&#44;ou&#61;VoIP&#44;ou&#61;Servers&#44;o&#61;SEAKR&quot;&#44;config</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">&#59;sip.conf &#61;&gt; ldap&#44;&quot;o&#61;SEAKR&quot;&#44;config</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">extensions.conf &#61;&gt; ldap&#44;&quot;ou&#61;Conf&#44;ou&#61;VoIP&#44;ou&#61;Servers&#44;o&#61;SEAKR&quot;&#44;config</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">&#59;extensions.conf &#61;&gt; ldap&#44;o&#61;SEAKR&#44;config</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">sipusers &#61;&gt; ldap&#44;&quot;ou&#61;People&#44;o&#61;SEAKR&quot;&#44;sip</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">sippeers &#61;&gt; ldap&#44;&quot;ou&#61;People&#44;o&#61;SEAKR&quot;&#44;sip</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">&#59;sipfriends &#61;&gt; ldap&#44;o&#61;SEAKR&#44;sip</font>    </p>
<br>      
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">and here&#39;s the first part of the res_ldap.conf file &#40;the rest of it identifies the attributes for each of the configuration &quot;tables&quot;&#41;:</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">&#91;_general&#93;</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">dbhost&#61;my.ldap.host &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#59; LDAP host&#40;s&#41;</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">dbport&#61;636</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">dbbasedn&#61;o&#61;SEAKR &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#59; Base DN</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">dbpass&#61;SUPERSECRETWORD &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&#59; Bind password</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">dbuser&#61;cn&#61;MYADMIN&#44;ou&#61;People&#44;o&#61;SEAKR &#59; Bind DN</font>    </p>
<br>      
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">Please let me know if you need any further information. &nbsp;I have updated my LDAP schema with the schema for the LDAP realtime driver &#40;so that is has all the oxy attributes plus a few VoiceRD attributes from the VoiceRD vendor&#41;. &nbsp;I&#39;ve verified that I can do both anonymous binds and authenticated binds from the server command line &#40;using ldapsearch&#41; and that the anonymous binds return the attributes from the server that Asterisk needs to see.</font>    </p>
<br>      
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="2" face="Dialog">Thanks&#44;</font>    </p>
  <br>Nick&nbsp;Couchman<BR>Systems&nbsp;Integrator<BR>SEAKR&nbsp;Engineering,&nbsp;Inc.<BR>6221&nbsp;South&nbsp;Racine&nbsp;Circle<BR>Centennial,&nbsp;CO&nbsp;80111<BR>Main:&nbsp;(303)&nbsp;790-8499<BR>Fax:&nbsp;(303)&nbsp;790-8720<BR>Web:&nbsp;<a href="http://www.seakr.com">http://www.seakr.com</a><BR><BR><br><br></body>
</html>