InspIRCd v4 is still early in development!
If you use this branch you may experience crashes, weird behaviour, and unannounced breaking changes.
You probably want to use InspIRCd v3 instead.
The "ldap" Module (v4)
This module depends on a third-party library (OpenLDAP) and must be manually enabled at compile time.
Once you have installed the dependency you can enable this module using the following command:
./configure --enable-extras ldap
Description
This module provides the ability for LDAP modules to query a LDAP directory.
Configuration
To load this module use the following <module>
tag:
<module name="ldap">
<database>
The <database>
tag defines a PostgreSQL database to connect to. This tag can be defined as many times as required.
Name | Type | Default Value | Description |
---|---|---|---|
module | Text | None | Required! This MUST be set to "ldap" to connect to an LDAP directory. |
id | Text | None | Required! The name that LDAP-using modules can refer to this <database> tag using. |
bindauth | Text | None | Required! The password for the Distinguished Name specified in the binddn field. |
binddn | Text | None | Required! The Distinguished Name to bind to for searching, |
searchscope | Text | subtree | The scope of the search for the LDAP entry. |
server | Text | None | Required The ldaps:// or ldap:// URL for your LDAP server. |
timeout | Duration | 5s | The time to wait before expiring an unresponsive LDAP connection. |
The searchscope field should be set to one of the following values:
Value | Description |
---|---|
base | Search only the LDAP object itself. |
onelevel | Search the LDAP object and its immediate children. |
subtree | Search the LDAP object and all descendants. |
Example Usage
<database module="ldap"
id="users"
bindauth="password"
binddn="cn=Manager,dc=inspircd,dc=org"
searchscope="subtree"
server="ldaps://localhost"
timeout="5s">