
Ca fait quand meme mal aux yeux ... darcs-hash:20081008103718-ddb99-ea012397f4285efd7ffeafdacb23399b104e3cc4.gz
83 lines
2.5 KiB
Python
83 lines
2.5 KiB
Python
# -*- mode: python; coding: utf-8 -*-
|
|
|
|
include("mode/space")
|
|
include("secrets")
|
|
include("ip")
|
|
|
|
header("""
|
|
Fichier de configuration pour libnss-ldap.
|
|
|
|
Pour des informations détaillées voir libnss-ldap.conf(5)
|
|
ainsi que /usr/share/libnss-ldap/ldap.conf
|
|
""")
|
|
|
|
info["perms"] = 0644
|
|
|
|
@# +---------------------------------------------------+
|
|
@# | Configuration de la communication avec le serveur |
|
|
@# +---------------------------------------------------+
|
|
|
|
if has("db-server"):
|
|
@# Socket unix du serveur
|
|
%uri "ldapi://%2fvar%2frun%2fslapd%2fldapi/"
|
|
else:
|
|
@# Addresse du serveur
|
|
%uri "ldap://%s/" % admipof("ldap")
|
|
|
|
@# The distinguished name of the search base.
|
|
%base "dc=crans,dc=org"
|
|
|
|
@# The distinguished name to bind to the server with.
|
|
@# Optional: default is to bind anonymously.
|
|
@# Please do not put double quotes around it as they
|
|
@# would be included literally.
|
|
%binddn secrets.ldap_readonly_auth_dn
|
|
|
|
@# The credentials to bind with.
|
|
@# Optional: default is no credential.
|
|
#%bindpw secrets.ldap_readonly_password
|
|
|
|
@# The distinguished name to bind to the server with
|
|
@# if the effective user ID is root. Password is
|
|
@# stored in /etc/libnss-ldap.secret (mode 600)
|
|
@# Use 'echo -n "mypassword" > /etc/libnss-ldap.secret' instead
|
|
@# of an editor to create the file.
|
|
%rootbinddn secrets.ldap_readonly_auth_dn
|
|
|
|
@# The LDAP version to use (defaults to 3
|
|
@# if supported by client library)
|
|
%ldap_version 3
|
|
|
|
@# Search timelimit
|
|
%timelimit 5
|
|
|
|
@# Bind/connect timelimit
|
|
%bind_timelimit 5
|
|
|
|
@# +------------------+
|
|
@# | Bases de données |
|
|
@# +------------------+
|
|
|
|
# On n'utilise ldap pour résoudre les bases de données
|
|
# passwd, group et shadow
|
|
droits = []
|
|
if has("users"):
|
|
# Sur le serveur des adhérents, on veut que tout
|
|
# les adhérents soit reconnus comme utilisateurs locaux
|
|
%nss_base_passwd "ou=data,dc=crans,dc=org?one"
|
|
else:
|
|
# Sur les autres serveurs on filtre pour que seuls
|
|
# les nounous et les apprentis le soit.
|
|
# Il est important de mettre ce filtrage au niveau de
|
|
# libnss-ldap et pam-ldap car ssh utilise pam pour les
|
|
# mots de passe mais pour l'authentification par clés
|
|
# il n'utilise que nss
|
|
droits.append("nss_base_passwd ou=data,dc=crans,dc=org?one?|(droits=Nounou)(droits=Apprenti)")
|
|
if has("imprimeurs"):
|
|
droits.append("(droits=Imprimeur)")
|
|
if has("bureau"):
|
|
droits.append("(droits=Bureau)")
|
|
print ''.join(droits)
|
|
|
|
%nss_base_shadow "ou=data,dc=crans,dc=org?one"
|
|
%nss_base_group "ou=Group,dc=crans,dc=org?one"
|