Cyrus SASL-2.1.27

#### Beyond Linux® From Scratch - Version 2019-02-27

### Chapter 4. Security

- Prev

  cryptsetup-2.0.6

- Next

  GnuPG-2.2.13

- Up
- Home

# Cyrus SASL-2.1.27

## Introduction to Cyrus SASL

The Cyrus SASL package contains a Simple Authentication and Security Layer, a method for adding authentication support to connection-based protocols. To use SASL, a protocol includes a command for identifying and authenticating a user to a server and for optionally negotiating protection of subsequent protocol interactions. If its use is negotiated, a security layer is inserted between the protocol and the connection.

This package is known to build and work properly using an LFS-8.4 platform.

### Package Information

- Download (HTTP): https://github.com/cyrusimap/cyrus-sasl/releases/download/cyrus-sasl-2.1.27/cyrus-sasl-2.1.27.tar.gz

- Download MD5 sum: a33820c66e0622222c5aefafa1581083

- Download size: 3.9 MB

- Estimated disk space required: 26 MB

- Estimated build time: 0.1 SBU

### Cyrus SASL Dependencies

#### Recommended

Berkeley DB-5.3.28

#### Optional

Linux-PAM-1.3.0, MIT Kerberos V5-1.17, MariaDB-10.3.13 or MySQL, OpenJDK-11.0.2, OpenLDAP-2.4.47, PostgreSQL-11.2, SQLite-3.27.1, krb4 and Dmalloc

User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/cyrus-sasl

## Installation of Cyrus SASL

### Note

This package does not support parallel build.

Install Cyrus SASL by running the following commands:

    ./configure --prefix=/usr        \
                --sysconfdir=/etc    \
                --enable-auth-sasldb \
                --with-dbpath=/var/lib/sasl/sasldb2 \
                --with-saslauthd=/var/run/saslauthd &&
    make -j1

This package does not come with a test suite. If you are planning on using the GSSAPI authentication mechanism, test it after installing the package using the sample server and client programs which were built in the preceding step. Instructions for performing the tests can be found at http://www.linuxfromscratch.org/hints/downloads/files/cyrus-sasl.txt.

Now, as the `root` user:

    make install &&
    install -v -dm755                          /usr/share/doc/cyrus-sasl-2.1.27/html &&
    install -v -m644  saslauthd/LDAP_SASLAUTHD /usr/share/doc/cyrus-sasl-2.1.27      &&
    install -v -m644  doc/html/*.html          /usr/share/doc/cyrus-sasl-2.1.27/html &&
    install -v -dm700 /var/lib/sasl

## Command Explanations

`--with-dbpath=/var/lib/sasl/sasldb2`: This switch forces the sasldb database to be created in `/var/lib/sasl` instead of `/etc`.

`--with-saslauthd=/var/run/saslauthd`: This switch forces saslauthd to use the FHS compliant directory `/var/run/saslauthd` for variable run-time data.

`--enable-auth-sasldb`: This switch enables SASLDB authentication backend.

`--with-dblib=gdbm`: This switch forces GDBM to be used instead of Berkeley DB.

`--with-ldap`: This switch enables the OpenLDAP support.

`--enable-ldapdb`: This switch enables the LDAPDB authentication backend. There is a circular dependency with this parameter. See http://wiki.linuxfromscratch.org/blfs/wiki/cyrus-sasl for a solution to this problem.

`--enable-java`: This switch enables compiling of the Java support libraries.

`--enable-login`: This option enables unsupported LOGIN authentication.

`--enable-ntlm`: This option enables unsupported NTLM authentication.

install -v -m644 ...: These commands install documentation which is not installed by the make install command.

install -v -m700 -d /var/lib/sasl: This directory must exist when starting saslauthd or using the sasldb plugin. If you're not going to be running the daemon or using the plugins, you may omit the creation of this directory.

## Configuring Cyrus SASL

### Config Files

`/etc/saslauthd.conf` (for saslauthd LDAP configuration) and `/etc/sasl2/Appname.conf` (where "Appname" is the application defined name of the application)

### Configuration Information

See file:///usr/share/doc/cyrus-sasl-2.1.27/sysadmin.html for information on what to include in the application configuration files.

See file:///usr/share/doc/cyrus-sasl-2.1.27/LDAP_SASLAUTHD for configuring saslauthd with OpenLDAP.

See file:///usr/share/doc/cyrus-sasl-2.1.27/gssapi.html for configuring saslauthd with Kerberos.

### Init Script

If you need to run the saslauthd daemon at system startup, install the `/etc/rc.d/init.d/saslauthd` init script included in the blfs-bootscripts-20180105 package using the following command:

    make install-saslauthd

### Note

You'll need to modify `/etc/sysconfig/saslauthd` and modify the `AUTHMECH` parameter with your desired authentication mechanism.

## Contents

Installed Programs: pluginviewer, saslauthd, sasldblistusers2, saslpasswd2 and testsaslauthd
Installed Library: libsasl2.so
Installed Directories: /usr/include/sasl, /usr/lib/sasl2, /usr/share/doc/cyrus-sasl-2.1.27 and /var/lib/sasl

### Short Descriptions

pluginviewer | is used to list loadable SASL plugins and their properties.
saslauthd | is the SASL authentication server.
sasldblistusers2 | is used to list the users in the SASL password database `sasldb2`.
saslpasswd2 | is used to set and delete a user's SASL password and mechanism specific secrets in the SASL password database `sasldb2`.
testsaslauthd | is a test utility for the SASL authentication server.
`libsasl2.so` | is a general purpose authentication library for server and client applications.

Last updated on 2019-02-16 03:24:48 -0600

- Prev

  cryptsetup-2.0.6

- Next

  GnuPG-2.2.13

- Up
- Home