SOGodap

command module
v0.0.0-...-5b09907 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 12, 2020 License: Apache-2.0 Imports: 17 Imported by: 0

README

SOGo LDAP Server: SOGodap

SOGodap is an open source LDAP server used to access vCard entries from address books on an Inverse SOGo groupware installation. Currently MySQL (and by implication MariaDB) is the only database supported.

Our Git repository is located at https://github.com/SigmaCS/SOGodap where you can inspect the code and download releases.

Unless otherwise noted, the SOGodap source files are distributed under the Apache License Version 2.0 found in the LICENSE file.

Installation

Download the latest binary for your Linux platform from our releases or clone the repository and build it with go install github.com/SigmaCS/SOGodap.

Once you have the binary image, install it as follows:

cp SOGodap /usr/local/bin/  
chmod +x /usr/local/bin/SOGodap

A sample systemd service module to start the server is included in the Scripts directory, which can be installed by copying it to /etc/systemd/system/sogodap.service in most Linux distributions.

Once the service file has been installed enable and start the service with:

systemctl enable sogodap.service
systemctl start sogodap.service
Configuration

The configuration of SOGodap is controlled by a GNUstep Property List file, similar to the sogo.conf used by SOGo. By default this is found in /etc/sogo/sogodap.conf but may be overridden by the command -conf command-line parameter.

A sample configuration file is provided as sogodap.conf in the source code.

The following parameters (case sensitive) are available in the configuration file:

Parameter Usage
AuthPass The password that must be specified in a simple bind operation by the client to connect to query the LDAP server.
AuthUser The username that must be specified in a simple bind operation by the client to connect to query the LDAP server.
Filter_x May be specified multiple times where x is an LDAP attribute name specified in the search query and the value is a MySQL REGEXP pattern used to locate it in the vCard data. The string _val_ will be replaced in the regular expression by the search value received from the client.
ListenAddress Defaults to 127.0.0.1 and specifies the IP address upon which the LDAP server will listen for requests.
ListenPort Defaults to 10389 and specifies the port upon which the LDAP server will listen for requests. Note than ports less than 1024 require additional privileges on most Linux systems.
MaxResults Defaults to 100 and specifies the maximum number of contacts that will be returned by each query. May be set to 0 for unlimited results assuming the client can support this.
SogoConf Defaults to /etc/sogo/sogo.conf and specifies the location of the SOGo configuration file used to obtain the database credentials.
SortAttributes Default to 1 specifying that the result set will be sorted by the first requested attribute. Use a larger integer to specify additional attributes to sort by (at the expense of CPU time) or 0 to disable sorting completely.
SubtreeLookup May specify one or more additional SOGo usernames separated by commas. If the LDAP search has the subtree flag set this will also search the address books of the specified users for matching contacts. These will be appended to the result set. This can be useful for shared corporate directories.
Usage

SOGodap does not currently implement any over-the-wire encryption or multiple user credentials. A simple, plain text bind may be used for authentication with the LDAP server. For this reason it is recommended to restrict the service to internal usage and where possible isolate it on its own VLAN.

To query the address book of user@example.net (-b "uid=user@example.net"), plus any configured shared address books (-s sub), for surnames beginning Smith and return their name, company and telephone number, run the following:

ldapsearch -x -D lookup -w "<secret>" -h localhost -p 10389 -b "uid=user@example.net" -s sub "(sn=Smith*)" cn o telephonenumber
Contributing

Please feel free to clone the repository, make changes and then raise a pull request if you feel this may benefit the wider community. We welcome and will review all such contributions.

File bug reports or feature requests via the issue tracker.

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL