FUNIX

Mettez un manchot dans votre PC


Encourager FUNIX

La consultation du site est totalement libre et gratuite, sans publicités. Les dons sont néanmoins appréciés pour payer l'hébergement et encourager son auteur


OpenLDAP
[ Présentation | Installation | Configuration ( Configuration d'un serveur  , Configuration serveur et client  , Tests de fonctionnement ) | utilisation ( Créer un nouvel utlisateur , Rajouter un groupe, Supprimer un utilisateur , Changer son mot de passe ) | Suggestion de mise en place ]

Dernière modification 3 février 2017

Authentification des utilisateurs avec LDAP


(ce document est téléchargeable au format pdf dans la section download)

Présentation

L'authentification des utilisateurs sur le système se fait par défaut au moyen des fichiers /etc/passwd (définition des utilisateurs), /etc/group (identification des groupes d'utilisateurs) et éventuellement /etc/shadow si vous utilisez les "shadow password". C'est satisfaisant quand l'on dispose d'une machine isolée, par contre avec un parc d'une centaine de machines, il est peut concevable d'avoir à modifier ces fichiers sur tous les postes pour rajouter un utilisateur. L'idée est de centraliser l'authentification, NIS fait cela très bien ainsi que LDAP, c'est ce que l'on va voir dans cette page.
Préalablement vous devez avoir installé et configuré un serveur LDAP tel que décrit dans la page qui va bien.

Dans la suite des opérations, on appelera serveur, la machine qui centralise la définition de tous les utilisateurs et groupes, le client fait appel au serveur pour l'authentification des utilisateurs.

Installation

On récupèrera sur le site www.padl.com, le tarball  MigrationTools.tgz on le décompresse en tapant

tar xvfz MigrationTools.tgz

Cela donne le répertoire MigrationTools-47

Maintenant à l'adresse http://arthurdejong.org/nss-pam-ldapd/ on récupèrera nss-pam-ldap qui comme c'est marqué sur le site fournit un module Name Service Switch (NSS) qui accéder aux informations de compte et tous autres informations qu'on trouve dans les fichiers du système (hosts, alias, netgroup, etc...). Il fournit également un module PAM (Pluggable Authentification Module) pour un serveur LDAP. On décompresse l'archive en tapant :

nss-pam-ldapd-0.9.7.tar.gz

cela donne le répertoire nss-pam-ldapd-0.9.7 dans lequel on tape

./configure

Avant d'aller plus loin, installer le package pam-devel on tape ensuite

make

Puis en tant que root

make install

puis on crée les liens suivants

ln -s /lib/security/pam_ldap.so /lib64/security
ln -s /lib/security/pam_ldap.so /usr/lib64/security/
ln -s /lib/libnss_ldap.so.2 /lib64

Le daemon nslcd (Name Service LDAP Connection Daemon) fournit dans le package nss-pam-ldapd permet de gérer les connexions vers serveur LDAP via PAM. Pour qu'il soit actif au démarrage on va créer un fichier nslcd.service dans le répertoire /usr/lib/systemd/system voilà ce qu'il contient

[Unit]
Description=Naming services LDAP client daemon
After=syslog.target network.target

[Service]
Type=forking
PIDFile=/run/nslcd/nslcd.pid
ExecStart=/usr/sbin/nslcd

[Install]
WantedBy=multi-user.target

on crée maintenant un utilisateur et un groupe système nslcd

groupadd nslcd
useradd -g nslcd -c "system user for nss-pam-ldapd" -s /bin/false -d / nslcd

pour le rendre actif à chaque démarrage on tapera donc

systemctl enable nslcd.service

voilà le résultat

Created symlink from /etc/systemd/system/multi-user.target.wants/nslcd.service to /usr/lib/systemd/system/nslcd.service.

on tachera de le lancer après avoir configurer le fichier /etc/nslcd.conf (voir plus bas)

Configuration

Configuration d'un serveur

On modifiera le fichier /usr/local/etc/openldap/slapd.conf pour rajouter les règles d'accès d'usage:

# Basic ACL
access to attrs=userPassword
        by self write
        by anonymous auth
        by dn="cn=Manager,dc=kervao,dc=fr" write
        by * none

access to *
        by dn="cn=Manager,dc=kervao,dc=fr" write
        by * read

Relancer le serveur LDAP

systemctl restart slapd.service

A présent dans le répertoire MigrationTools-47, on va modifier le fichier migrate_common.ph, on doit y indiquer son nom de domaine, comme ceci :

# Default DNS domain
$DEFAULT_MAIL_DOMAIN = "kervao.fr";

# Default base
$DEFAULT_BASE = "dc=kervao,dc=fr";

Eventuellement vous pouvez modifier la ligne suivante spécifiant le serveur de mail bien que ce ne soit pas absolument nécessaire.

$DEFAULT_MAIL_HOST = "mail.padl.com";

A présent il faut rentrer les utilisateurs et groupes du système dans la base de données LDAP. Commençons d'abord par créer des fichiers temporaires au format ldif. On tape maintenant en tant que root (pour pouvoir lire /etc/shadow)

ETC_SHADOW=/etc/shadow
export ETC_SHADOW

./migrate_passwd.pl /etc/passwd /tmp/passwd.ldif
./migrate_group.pl /etc/group /tmp/group.ldif

Editez les deux fichiers ldif pour ne laisser que les utilisateurs, enlever tous les utilisateurs et groupes système (root, lp, sys, apache, ...). Voici le contenu de mon group.ldif avec mon groupe utilisateur hoarau

dn: cn=hoarau,ou=Group,dc=kervao,dc=fr
objectClass: posixGroup
objectClass: top
cn: hoarau
userPassword: {crypt}*
gidNumber: 5000
memberUid: olivier
memberUid: veronique

Voici maintenant le contenu de mon passwd.ldif avec mes deux utilisateurs

dn: uid=olivier,ou=People,dc=kervao,dc=fr
uid: olivier
cn: olivier
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
userPassword: {crypt}$1$76UeLH8Z$K8rdYPRmUoiONZQm6hV4q.
shadowLastChange: 11858
shadowMax: 99999
shadowWarning: 7
shadowInactive: -1
shadowExpire: -1
shadowFlag: 1081428222
loginShell: /bin/bash
uidNumber: 5001
gidNumber: 5000
homeDirectory: /home/olivier
gecos: olivier

dn: uid=veronique,ou=People,dc=kervao,dc=fr
uid: veronique
cn: veronique
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
userPassword: {crypt}$1$OyedUoIU$uwpYR0bWJGzF4AFAHspSm/
shadowLastChange: 11858
shadowMax: 99999
shadowWarning: 7
shadowInactive: -1
shadowExpire: -1
shadowFlag: 1081428222
loginShell: /bin/bash
uidNumber: 5002
gidNumber: 5000
homeDirectory: /home/veronique
gecos: veronique

A présent il faudra créer le fichier temp.ldif qui va contenir la définition  des Organizational Unit (ou ) Group (groupe d'utilisateur) et  People (utilisateur). Voici son contenu :

dn: dc=kervao,dc=fr
objectClass: dcObject
objectClass: organization
dc: kervao
o: kervao.fr

dn: ou=Group,dc=kervao,dc=fr
ou: Group
objectClass: top
objectClass: organizationalUnit
description: groupe d utilisateurs

dn: ou=People,dc=kervao,dc=fr
ou: People
objectClass: top
objectClass: organizationalUnit
description: utilisateurs du systeme

On peut commencer à rajouter tout cela (en mode verbeux), dans la base, on commence par les ou Group et People

ldapadd -v -x -D "cn=Manager,dc=kervao,dc=fr" -W -f /tmp/temp.ldif

voilà le résultat

ldap_initialize( <DEFAULT> )
Enter LDAP Password:
add objectClass:
        dcObject
        organization
add dc:
        kervao
add o:
        kervao.fr
adding new entry "dc=kervao,dc=fr"
modify complete

add ou:
        Group
add objectClass:
        top
        organizationalUnit
add description:
        groupe d utilisateurs
adding new entry "ou=Group,dc=kervao,dc=fr"
modify complete

add ou:
        People
add objectClass:
        top
        organizationalUnit
add description:
        utilisateurs du systeme
adding new entry "ou=People,dc=kervao,dc=fr"
modify complete

On continue avec le rajout des groupes et utilisateurs:

ldapadd -x -D "cn=Manager,dc=kervao,dc=fr" -f /tmp/passwd.ldif -W
Enter LDAP Password:
adding new entry "uid=olivier,ou=People,dc=kervao,dc=fr"

adding new entry "uid=veronique,ou=People,dc=kervao,dc=fr"

Puis

ldapadd -x -D "cn=Manager,dc=kervao,dc=fr" -f /tmp/group.ldif -W
Enter LDAP Password:
adding new entry "cn=hoarau,ou=Group,dc=kervao,dc=fr"

On visualise tout ça en tapant

ldapsearch -x -D "cn=Manager, dc=kervao, dc=fr" -W -b "dc=kervao,dc=fr"
Enter LDAP Password:
version: 2

#
# filter: (objectclass=*)
# requesting: ALL
#

# kervao, fr
dn: dc=kervao, dc=fr
objectClass: dcObject
objectClass: organization
dc: kervao.fr
o: kervao.fr

# Group, kervao, fr
dn: ou=Group,dc=kervao,dc=fr
ou: Group
objectClass: top
objectClass: organizationalUnit
description: groupe d utilisateurs

# People, kervao, fr
dn: ou=People,dc=kervao,dc=fr
ou: People
objectClass: top
objectClass: organizationalUnit
description: utilisateurs du systeme

# hoarau, Group, kervao, fr
dn: cn=hoarau,ou=Group,dc=kervao,dc=fr
objectClass: posixGroup
objectClass: top
cn: hoarau
gidNumber: 5000
memberUid: olivier
memberUid: veronique

# olivier, People, kervao, fr
dn: uid=olivier,ou=People,dc=kervao,dc=fr
uid: olivier
cn: olivier
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
userPassword:: e2NyeXB0fSQxJDc2VWvMSDhaJEs4cmRVUFJtVW5pT05aUW02aFY0cS4=
shadowLastChange: 11858
shadowMax: 99999
shadowWarning: 7
shadowInactive: -1
shadowExpire: -1
shadowFlag: 1081428222
loginShell: /bin/bash
uidNumber: 5001
gidNumber: 5000
homeDirectory: /home/olivier
gecos: olivier

# veronique, People, kervao, fr
dn: uid=veronique,ou=People,dc=kervao,dc=fr
uid: veronique
cn: veronique
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
userPassword:: e2NyeXB0fSQxJE95aWRVb0lVJHV3cFlOM7JXSkd6RjRBRkFIc3BTbS8=
shadowLastChange: 11858
shadowMax: 99999
shadowWarning: 7
shadowInactive: -1
shadowExpire: -1
shadowFlag: 1081428222
loginShell: /bin/bash
uidNumber: 5002
gidNumber: 5000
homeDirectory: /home/veronique
gecos: veronique

# search result
search: 2
result: 0 Success

# numResponses: 7
# numEntries: 6  

Configuration serveur et client

Pour un client sous mageia il faut installer les packages suivants

openldap
nss-pam-ldapd


Pour le dernier package vous avez également l'alternative d'installer la version tarball (voir plus haut). Le client repose sur nslcd (Name Service LDAP Connection Daemon), à noter que sur un serveur si vous voulez également vous connecter sur le daemon LDAP, il faudra le configurer comme un client. On édite le fichier /etc/nslcd.conf et on apporte les modifications suivantes

# The user and group nslcd should run as.
uid nslcd, ça n'a pas d'impact sur le fonctionnement
gid nslcd

# le serveur LDAP
uri ldap://192.168.13.11/

# The distinguished name of the search base.
base dc=kervao,dc=fr

# The distinguished name to bind to the server with.
# Optional: default is to bind anonymously.
binddn cn=Manager,dc=kervao,dc=fr

# The credentials to bind with.
# Optional: default is no credentials.
# Note that if you set a bindpw you should check the permissions of this file.
bindpw secret

# Customize certain database lookups.
base  group  ou=Group,dc=kervao,dc=fr
base  passwd ou=People,dc=kervao,dc=fr
base  shadow ou=People,dc=kervao,dc=fr

map shadow userPassword userPassword

Dans le fichier /etc/nsswitch.conf on modifiera les lignes suivantes pour lire

passwd:     files nis ldap
shadow:     files nis ldap
group:      files nis ldap

A noter que le nis n'est pas nécessaire si vous n'avez pas mis en place de domaine NIS.

Bon maintenant on va éditer le fichier /etc/pam.d/system-auth. Pour information, c'est dans ce fichier  qui va  servir à appeler les bibliothèques qui vont bien pour l'authentification d'un utilisateur à la connexion sur une machine. Sans rentrer dans le détail, ce fichier et ceux  qui se trouvent dans le même répertoire font parti du système PAM (Pluggable Authentication Modules), qui permet de gérer l'authentification sur le système que ce soit pour le login mais aussi pour d'autres  services comme l'accès au serveur de mail, à ftp, etc. 

Reprenons donc notre fichier system-auth il doit ressembler à ça (rajoutez uniquement les lignes concernant pam_ldap et laissez les autres) :

#%PAM-1.0

auth        required      pam_env.so
auth        sufficient    pam_tcb.so shadow nullok prefix=$2a$ count=8
auth        required      pam_deny.so
auth        sufficient    pam_ldap.so

account     sufficient    pam_tcb.so shadow
account     required      pam_deny.so
account     sufficient    pam_ldap.so

password    required      pam_cracklib.so try_first_pass retry=3 minlen=4  dcredit=0  ucredit=0
password    sufficient    pam_tcb.so use_authtok shadow write_to=shadow nullok prefix=$2a$ count=8
password    required      pam_deny.so
password    sufficient    pam_ldap.so

session     optional      pam_keyinit.so revoke
session     required      pam_limits.so
session     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
-session    optional      pam_systemd.so
session     required      pam_tcb.so
session     sufficient    pam_ldap.so

Relancer LDAP sur le client (ou le serveur) maintenant

systemctl restart nslcd

ou lancer le s'il ne l'était pas à l'origine

systemctl start nslcd

A noter que le fichier /etc/ldap.conf ne sert plus à rien, vous pouvez l'ignorer superbement.

pour connaitre l'état du daemon on tapera

systemctl status nslcd.service

voilà le résultat

● nslcd.service - Naming services LDAP client daemon
   Loaded: loaded (/usr/lib/systemd/system/nslcd.service; enabled)
   Active: active (running) since sam. 2016-12-24 11:22:34 CET; 4min 19s ago
  Process: 21038 ExecStart=/usr/sbin/nslcd (code=exited, status=0/SUCCESS)
 Main PID: 21041 (nslcd)
   CGroup: /system.slice/nslcd.service
           └─21041 /usr/sbin/nslcd

déc. 24 11:22:34 mana.kervao.fr nslcd[21041]: version 0.9.7 starting
déc. 24 11:22:34 mana.kervao.fr nslcd[21041]: accepting connections

si vous obtenez dans les logs du serveur ce genre de messages

déc. 23 19:25:06 mana.kervao.fr slapd[12893]: <= bdb_equality_candidates: (uidNumber) not indexed
déc. 23 19:25:07 mana.kervao.fr slapd[12893]: <= bdb_equality_candidates: (uidNumber) not indexed
déc. 23 19:25:07 mana.kervao.fr slapd[12893]: <= bdb_equality_candidates: (uidNumber) not indexed

sur le serveur il faut revenir au fichier de configuration de slapd à savoir slapd.conf et juste après

# Indices to maintain
index   objectClass     eq

on va déclarer d'autres index pour la base de données LDAP

index  uid              pres,sub,eq
index member            eq
index  uidNumber        eq
index  gidNumber        eq
index  memberUid        eq


on stoppe nslcd sur les clients (et le serveur)

systemctl stop nslcd.service

on stoppe slapd sur le serveur

systemctl stop slapd.service

on reconstuit les index en tapant

slapdindex

et on relance le serveur

systemctl start slapd.service

ainsi que nslcd sur tous les clients (et le serveur)

systemctl start nslcd.service

si le serveur LDAP est configuré en connexion chiffrée, on modifiera ainsi le fichier /etc/nslcd.conf

# Use StartTLS without verifying the server certificate.
ssl start_tls
tls_reqcert allow

# CA certificates for server certificate verification
tls_cacertdir /etc/openldap/cacerts
tls_cacertfile /etc/openldap/cacerts/ldapcrt.pem

on stoppe nslcd, si on le relance en mode debug, voilà ce qu'on peut voir (extrait)

nslcd: DEBUG: NSS_LDAP nss-pam-ldapd 0.9.7
nslcd: DEBUG: ldap_set_option(LDAP_OPT_X_TLS_REQUIRE_CERT,allow)
nslcd: DEBUG: ldap_set_option(LDAP_OPT_X_TLS_CACERTDIR,"/etc/openldap/cacerts")
nslcd: DEBUG: ldap_set_option(LDAP_OPT_X_TLS_CACERTFILE,"/etc/openldap/cacerts/ldapcrt.pem")

avec un su toto on obtient (extrait)

nslcd: DEBUG: CFG: reconnect_sleeptime 1
nslcd: DEBUG: CFG: reconnect_retrytime 10
nslcd: DEBUG: CFG: ssl start_tls
nslcd: DEBUG: CFG: tls_reqcert allow
nslcd: DEBUG: CFG: tls_cacertdir /etc/openldap/cacerts
nslcd: DEBUG: CFG: tls_cacertfile /etc/openldap/cacerts/ldapcrt.pem
nslcd: DEBUG: CFG: pagesize 0
nslcd: DEBUG: CFG: nss_min_uid 0

(...)

nslcd: [1d5ae9] <passwd=5008> DEBUG: ldap_start_tls_s()
nslcd: [1d5ae9] <passwd=5008> DEBUG: ldap_simple_bind_s("cn=Manager,dc=kervao,dc=fr","***") (uri="ldap://192.168.0.13/")
nslcd: [1d5ae9] <passwd=5008> DEBUG: ldap_result(): uid=toto,ou=People,dc=kervao,dc=fr
nslcd: [1d5ae9] <passwd=5008> DEBUG: ldap_result(): end of results (1 total)
nslcd: DEBUG: NSS_LDAP nss-pam-ldapd 0.9.7
nslcd: DEBUG: ldap_set_option(LDAP_OPT_X_TLS_REQUIRE_CERT,allow)
nslcd: DEBUG: ldap_set_option(LDAP_OPT_X_TLS_CACERTDIR,"/etc/openldap/cacerts")
nslcd: DEBUG: ldap_set_option(LDAP_OPT_X_TLS_CACERTFILE,"/etc/openldap/cacerts/ldapcrt.pem")

c'est tout bon !


Test de fonctionnement

C'est simple que ce soit sur le serveur ou le client, supprimer les lignes qui correspondent à vos utilisateur dans /etc/passwd, et /etc/shadow et faites de même pour vos groupes utilisateurs dans /etc/group. N'oubliez pas de faire une sauvegarde de ces fichiers au cas où ! Maintenant essayer de vous loguer en tant que simple utilisateur, et là normalement, vous devriez vous loguer sans problème.

Utilisation

Créer un nouvel utilisateur

Maintenant pour créer un nouvel utilisateur, useradd ne fonctionne pas, car il repose uniquement sur /etc/passwd. On doit d'abord définir un mot de passe. On se sert pour cela de la fonction slappasswd

slappasswd -v -s toto345  -h {CRYPT}

On obtient

{CRYPT}rURm18fYhMvew

 Il faudra créer un fichier new.ldif qui aura cette tête là :

dn: uid=utilisateur,ou=People,dc=kervao,dc=fr
uid: utilisateur
cn: utilisateur
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
userPassword: {CRYPT}rURm18fYhMvew
shadowLastChange: 11858
shadowMax: 99999
shadowWarning: 7
shadowInactive: -1
shadowExpire: -1
shadowFlag: 1081428222
loginShell: /bin/bash
uidNumber: 5004
gidNumber: 5000
homeDirectory: /home/utilisateur
gecos: utilisateur

Pour mémoire voici la signification de chacun des paramètres des shadow passwords

shadowLastChange: date de dernière modification (en jour depuis le 1.1.70),
shadowMax: nombre de jours d'utilisation max du mot de passe (changement requis à l'issue), pas de période de validité si égal à 99999
shadowWarning: nombre de jours avant l'expiration pour avertir l'utilisateur ,
shadowInactive: nombre de jours après la date de l'expiration où on rend le compte inactif, fonctionnalité désactivé si égal à -1
shadowExpire: nombre de jours après le 1.1.70 où le compte sera désactivé, fonctionnalité désactivée si égal à -1
shadowFlag: ne sert à rien (dispo pour une utilisation future) .

ATTENTION Il ne doit pas y avoir de blanc ou de tabulation à la fin des lignes de votre fichier ldif

On tape ldapadd pour la saisie de l'utilisateur dans la base

ldapadd -x -D "cn=Manager,dc=kervao,dc=fr" -f /tmp/new.ldif -W
Enter LDAP Password:
adding new entry "uid=utilisateur,ou=People,dc=kervao,dc=fr"

C'est pas tout il faut indiquer maintenant que cet utilisateur appartient bien au groupe hoarau On crée ce fichier groupe.ldif contenant

dn: cn=hoarau,ou=Group,dc=kervao,dc=fr
Add: memberUid
memberUid: utilisateur

On modifie la base en tapant

ldapmodify -x -D "cn=Manager, dc=kervao, dc=fr" -W -f groupe.ldif
Enter LDAP Password:
modifying entry "cn=hoarau,ou=Group,dc=kervao,dc=fr"

Par contre il faudra créer manuellement la home directory en tant que root en tapant :

mkdir /home/utilisateur
cp -R /etc/skel/* /home/utilisateur
chown -R utilisateur:hoarau /home/utilisateur

Rajouter un groupe

Sans rentrer dans les détails des commandes, le fichier ldif à créer pour la saisie d'un nouveau groupe est le suivant

dn: cn=newgroupe,ou=Group,dc=kervao,dc=fr
objectClass: posixGroup
objectClass: top
cn: newgroupe
gidNumber: 5000

Voilà le fichier pour rajouter des utilisateurs au groupe

dn: cn=newgroupe,ou=Group,dc=kervao,dc=fr
Add: memberUid
memberUid: new-utilisateur

Supprimer un utilisateur

Pour supprimer l'utilisateur utilisateur on tapera

ldapdelete -x -D "cn=Manager, dc=kervao, dc=fr" "uid=utilisateur,ou=People,dc=kervao,dc=fr" -W

On créera ensuite un fichier delete.ldif contenant

dn: cn=hoarau,ou=Group,dc=kervao,dc=fr
delete: memberUid
memberUid: utilisateur

On tape maintenant

ldapmodify -x -D "cn=Manager, dc=kervao, dc=fr" -W -f delete.ldif
Enter LDAP Password:
modifying entry "cn=hoarau,ou=Group,dc=kervao,dc=fr"


Changer son mot de passe

Maintenant le problème consiste à changer le mot de passe sans avoir à passer par le Manager. Un simple utilisateur doit pouvoir changer son propre mot de passe, prenons le cas de l'utilisateur olivier, il doit d'abord en trouver un avec la commande slappasswd

slappasswd -v -s tutu728  -h {CRYPT} 

Voilà le résultat

{CRYPT}WW6h470hoW4nI

Il crée maintenant le fichier modif.ldif contenant

dn: uid=olivier, ou=People, dc=kervao, dc=fr
changetype: modify
replace: userPassword
userPassword: {CRYPT}WW6h470hoW4nI

Et il modifie la base en tapant

[olivier@asterix olivier]$ ldapmodify -x -D "uid=olivier, ou=People, dc=kervao, dc=fr" -f /tmp/modif.ldif -W
Enter LDAP Password: (mot de passe d'olivier)
modifying entry "uid=olivier, ou=People, dc=kervao, dc=fr"

Voilà son mot de passe a été changé. Vous me direz c'est bien compliqué,  y a plus simple !

En tant que root modifiez le fichier /etc/pam.d/passwd (rajoutez uniquement les lignes concernant pam_ldap et laissez les autres) pour lire

#%PAM-1.0
auth       include      system-auth
auth       sufficient   pam_ldap.so
account    sufficient   pam_ldap.so
account    include      system-auth
password   sufficient   pam_ldap.so
password   substack     system-auth
password   optional     pam_gnome_keyring.so

Maintenant pour changer son mot de passe olivier tape le plus simplement du monde

passwd

Voilà le résultat

Enter login(LDAP) password:
New password:
Re-enter new password:
LDAP password information changed for olivier
passwd: all authentication tokens updated successfully

Ca marche !!!!

Suggestion de mise en place

Pour l'administration je vous suggère admin4 qu'on peut récupérer par ici http://www.admin4.org/ on le décompresse en tapant

unzip Admin4-2.2.2-Src.zip

cela donne le répertoire Admin4-2.2.2-Src. On installera préalablement les packages suivants

wxPython
dnspython
python-requests
python-ldap
postgresql9.4-devel
lib64python-devel

puis on installe psycopg2 qu'on trouvera par ici  https://pypi.python.org/pypi/psycopg2 on décompresse l'archive en tapant

tar xvfz psycopg2-2.6.2.tar.gz

dans le répertoire psycopg2-2.6.2 on tape

python setup.py build

puis en tant que root

python setup.py install

on revient au répertoire Admin4-2.2.2-Src et on tape

python admin4.py


et voilà le résultat




pour être plus facilement accessible j'ai créé le script /usr/bin/admin4 contenant

#!/bin/bash
python /usr/local/linux/systeme/Admin4-2.2.2-Src/admin4.py


en lui donnant les droits d'exécution

chmod 755 /usr/bin/admin4

Il existe également luma mais qui n'est visiblement plus en développement, le site officiel est http://luma.sourceforge.net/

 
[Retour page d'accueil FUNIX]