$$LDAPAuth External Auth Module$$

||include||charset.htm|| ||include||style.htm|| ||include||body.htm||
||define||x_ldap_host||ldap.host|| ||define||x_ldap_port||389|| ||define||x_ldap_scope||ldap_scope_onelevel|| ||define||x_ldap_objectclass||person|| ||define||x_ldap_search_name||mail||
||ifdef||x_unix_password|| ||define||ldap_pass||crypt|| ||endif|| ||ifdef||x_plain_password|| ||define||ldap_pass||clear|| ||endif|| ||ifdef||x_sha_hash|| ||define||ldap_pass||sha|| ||endif|| ||ifdef||x_ssha_hash|| ||define||ldap_pass||ssha|| ||endif|| ||ifdef||user_isdomadmin|| ||include||na_menu.htm|| ||endif|| ||ifnequal||x_generate_by_surgemail||true||

### $$Warning: The 'ldapauth.ini' file that has been detected was not written by SurgeMail.$$
$$If you save any changes on this page you can loose setting and values.$$

$$You can manaully edit the file 'ldapauth.ini' (in surgemail directory) and then updated surgemail.ini file to setup ldapauth as your authenation module.$$
$$In your surgemail.ini file their will be a line like this$$:
g_authent_process "/usr/local/surgemail/nwauth -path /usr/local/surgemail/"
$$change to$$:
g_authent_process "/usr/local/surgemail/ldapauth -path /usr/local/surgemail/"
||endif||

$$Configuration for ||module_name||, click "save" to complete the module configuration.$$

$$Click here for help on these settings.$$

### $$Compulsory fields$$
$$Setting$$ | $$Description$$
$$Host$$: |  | $$The IP address or domain of the host to connect to, i.e. the machine where the LDAP server is listening.$$
$$Port$$: |  | $$The TCPIP port to connect to the LDAP server on.$$
$$Manager DN$$: $$Password$$: |  | $$This is the LDAP manager distinguished name and password to bind with. Having these fields as empty will do an anonymous login.$$
$$Search Base$$: |  | $$The LDAP search base to use for all interactions with the LDAP server.$$
$$Search Scope$$: |  | $$This is the scope of the search from the Search Base.$$
$$ObjectClass$$: |  | $$This is the objectClass that you are using in your ldap server to store the user information in.$$
$$EMail Field$$: |  | $$This is the LDAP name field that the email address is stored.$$
$$EMail 2nd Field$$: | ($$optional$$) | $$This is the LDAP name field that the email address is stored.$$
$$Password Encoding$$: |  | $$What encoding method passwords are stored in the ldapserver.$$

### $$User Settings$$

$$Setting$$
Field Description
||info_fields||
$$Basic$$
fwd $$Forwarding rules for the user, configured via users "Forwarding" page$$
created $$Record of creation time, stored on creation time$$
$$Information$$
full_name $$Information about user$$
phone $$Information about user$$
smsto $$SMS phone number to send SMS nontifications to users "SMS" page$$
realuser $$Real account to which this account is aliased - allows aliases to be specified in authent database$$
$$Limits$$
send_limit $$Number of outgoing messages this user can send per 30 minutes. You must also define the global limits g_tarpit_max, and g_tarpit_max_remote. And you may want to set g_tarpit_drop "true"$$
quota $$Users disk quota, configured via the admininstrative interface$$
alias_quota $$Number of aliases this user can create$$
list_quota $$Quota of mailing lists the user can create$$
expire $$The number of days left to expire$$
max_in $$The max number of email allowed per day$$
$$Access$$
allow $$Services the user can access eg. SMTP,POP,IMAP.$$
disabled $$Used by email based account creation code (may also be used to disable existing accounts)$$
mailaccess $$Used in conjunction with g_access_group and g_user_access to specify access to features$$
mailstatus $$Status of the account, see$$ ($$account status$$)
user_access $$Per user features this user can access$$
admin_access $$Is this account have admin access$$
$$Feature Access$$
spf_block $$'true' if the user wants to block non spf compliant email$$
friends $$'true' if the user has a friends mode configured$$
enotify $$The email address to send email notifications to$$
$$Proxy$$
tohost $$The host which to connect to when using proxy mode (g_proxy)$$
ddpriv $$Private email 'private' suffix$$
ddfrom $$Private email 'from' suffix$$

### $$Advance Settings$$

$$Setting$$ $$Description$$
$$Ignore unknown fields$$ $$This will allow unknown fields to be ignored. Otherwise account will be refused if any fields are missing.$$
$$Backup Host$$: $$This is address of the backup ldapserver if the main host goes down.$$
$$No DN Display$$ $$This will stop LDAPAuth from sending the DN.$$
$$Login Anonymous$$ $$This will login to the LDAP server using an Anonymous login.$$
$$Extend Search$$: $$This is the an extention added to every search. ie. (AnyAttribute==AnyValue)$$
$$UID Field$$: $$This is the LDAP name field that the UID is stored.$$
$$MailMask Field$$: $$This is the LDAP field that the IP Mask is stored to verify users access.$$
$$Valid Users$$: $$This is a wildcard comma seperated list of valid accounts.$$
ie. lynden*,*@domain.com

### $$Uncommon Advance Settings$$

$$These settings should only be used by advance users. $$
$$Setting$$ $$Description$$
$$CertDB Path$$: $$Enable SSL$$
$$This will enable SSL LDAP.$$
$$This is the path of where the ssl certs are stored. ie. ~/.netscape/cert7.db$$
$$You will need an special LDAPAuth build.$$
$$Use the sort DN Method$$ $$This will change the DN on all filters to use the sortten version.$$
$$Deal with mutltiple users with the same name.$$ $$If user appends ldap search info to the username they are stripped and used in the search.$$

    E.g. user logs in as user = "uname,ou=orgunit,o=org"
         search = search + "ou=orgunit,o=org" user = "uname"

### $$Extra Settings$$

$$These settings should only be used by advance users. $$ $$Any setting which is not covered by the above will apear here. $$