Samba/WebDAV + LDAP [Résolu] - Installation - Linux et OS Alternatifs
Marsh Posté le 22-12-2008 à 10:28:06
webdav + auth LDAP
Marsh Posté le 22-12-2008 à 13:27:16
Salut,
D'accord je regarde dans cette direction. Par contre j'ai pas compris quelque chose : Comment je fais pour permettre à un utilisateur d'uploader des fichiers qui doivent être aussi accessibles comme une page web normale?
Parce que là je peux seulement me connecter à WebDAV mais plus au site web
Résolu en créant 2 Virtualhosts distincts
Marsh Posté le 22-12-2008 à 14:03:31
En fait après tests, je me rend compte qu'il y a un os :
Quand je tape l'adresse dans FireFox, on me demande bien un login/password, mais après. je tombe systématiquement sur une erreur 500, et elle ne génère aucune ligne dans le error.log..
Voilà mon /etc/apache2/sites-enabled/webdav
Citation : |
Et le VirtualHost correspondant :
Citation : |
Des idées ?
Marsh Posté le 22-12-2008 à 15:07:14
Ok j'ai avancé un peu, en modifiant ma configuration du fichier webdav est maintenant la suivante :
Citation : |
Mais quand j'essaie de m'authentifier je vois dans les logs :
Citation : |
Marsh Posté le 22-12-2008 à 15:10:58
tu as tes users à la racine de ton arbre ? surprenant...
Marsh Posté le 23-12-2008 à 15:21:59
Tu parles de l'arbre LDAP ?
Je dois admettre ne rien y connaître à LDAP (heureusement que c'est pas moi qui doit m'en occuper du coup ), tout ce que je sais, c'est que comme dit plus haut, je peux trouver les informations sur une personne en utilisant :
Citation : |
Tu as une idée du pourquoi ça ne marche pas ?
Marsh Posté le 23-12-2008 à 15:23:02
parce que ta conf apache veut un "uid" alors que c'est un "cn" qui permet l'identification
Marsh Posté le 23-12-2008 à 15:39:44
salut,
C'est ma faute, j'ai mis un mauvais exemple. Il se trouve que
ldapsearch -h ldap.serveur.ch -b o=serveur,c=ch -x uid=dupont
Marche aussi
Marsh Posté le 23-12-2008 à 15:49:40
c'est une recherche que tu fais, c'est que les 2 arguments sont présents
fait donc un "ldapsearch -h ldap.serveur.ch -b o=serveur,c=ch -x" et donne la tête de ton résultat entier
Marsh Posté le 23-12-2008 à 16:12:56
Voilà le 1er résultat (y en a des milliers ), j'ai un peu changé les informations "sensibles" (nom, prénom, adresse du serveur) mais la structure n'a pas changé
# extended LDIF
#
# LDAPv3
# base <o=serveur,c=ch> with scope subtree
# filter: uid=esox
# requesting: ALL
#
# prénom nom, el-ma1, el-s, etu, serveur, ch
dn: cn=prénom nom,ou=el-ma1,ou=el-s,ou=etu,o=serveur,c=ch
cn: prénom nom
cn: nom
sn: nom
givenName: prénom
displayName: prénom nom
description: Etudiant
organizationalStatus: Etudiant
userClass:: Vm9pZSBEaXBsw7RtZQ==
personalTitle: Monsieur
ou:: U2VjdGlvbiBkZSBnw6luaWUgw6lsZWN0cmlxdWUgZXQgw6lsZWN0cm9uaXF1ZSAtIE1hc3Rlc
iBzZW1lc3RyZSAx
ou: EL-MA1
employeeType: Etudiant
mail: prénom.nom@serveur.ch
labeledURI: http://personnes.serveur.ch/prénom.nom Personal profile
l: Lausanne
uniqueIdentifier: 170470
uid: esox
uid: esox@el-ma1
uidNumber: 71470
gidNumber: 30215
gecos: prénom nom
homeDirectory: /home/esox
loginShell: /bin/tcsh
objectClass: posixAccount
objectClass: shadowAccount
objectClass: swissEduPerson
objectClass: person
objectClass: organizationalPerson
objectClass: serveurorganizationalPerson
objectClass: inetOrgPerson
memberOf: inbc
memberOf: students_min_mte
swissEduPersonUniqueID: 170470@serveur.ch
eduPersonAffiliation: student
# search result
search: 2
result: 0 Success
# numResponses: 2
# numEntries: 1
Marsh Posté le 23-12-2008 à 18:45:23
c'est parce que tu pointes pas au bon endroit. Ton ldapsearch est récursif, pas la requête faite par apache (et accesoirement y'a des o= et des c= inversés...
AuthName "Development server" |
par exemple... mais là ça va être le souk dans ton arbre... perso j'ai une organisation du style
|
ici je duplique des données certes, mais comme de toute façon je change les password pour chaque accès....
Marsh Posté le 23-12-2008 à 18:51:36
Salut,
Ce que je ne comprend pas, c'est que j'utilise en ce moment un script Ruby basé sur NET::LDAP qui se connecte "simplement" sur ldap.serveur.ch:389 .. Et pas de soucis de récursivité & co.
Parce que là le problème c'est que l'arbre va être TRÈS différent d'un utilisateur à un autre (étudiants, chercheurs, techniciens,...) et donc il faut absolument quelque chose de récursif
Marsh Posté le 23-12-2008 à 20:40:05
alors regarde dans la doc d'apache
Marsh Posté le 28-12-2008 à 11:07:20
Salut,
Alors j'ai résolu le problème :
Code :
|
Problème résolu
Merci
Marsh Posté le 22-12-2008 à 10:02:01
Bonjour,
Je désire proposer à quelques utilisateurs (<10) la possibilité de mettre en ligne facilement des pages web sur mon serveur.
J'ai configuré Apache correctement et je cherche maintenant comment leur donner la possibilité d'uploader leur contenu facilement.
J'ai à disposition un annuaire LDAP et je désire l'utiliser afin des les authentifier, cela dit je n'en suis pas administrateur, les utilisateurs n'auront donc pas la possibilité de changer les informations contenues dans LDAP.
J'avais tout d'abord pensé leur créer un compte accessible via SSH et leur faire faire un SFTP, mais ça a l'inconvénient de nécessiter la mise en place d'une chrootcage pour qu'ils ne se baladent pas, et nécessite l'utilisation de softwares non inclus par défauts dans tous les OS.
J'ai donc pensé me tourner vers des partages Samba, mais voilà, je coince sur la mise en place.
J'ai cherché sur le net mais j'ai du mal comprendre parce que les logs Samba sont pleins de :
[2008/12/22 09:49:16, 0] lib/smbldap.c:smbldap_connect_system(952)
ldap_connect_system: Failed to retrieve password from secrets.tdb
Voilà ce que j'ai rajouté dans smb.conf
security=user
passdb backend = ldapsam:ldap://ldap.serveur.ch
ldap suffix = c=serveur,o=ch
Normalement si je veux chercher un utilisateur dans LDAP je fais simplement :
ldapsearch -h ldap.serveur.ch -b o=serveur,c=ch -x cn=Dupont
Qu'est-ce que j'ai fait faux?
Merci beaucoup
Message édité par esox_ch le 28-12-2008 à 23:07:33
---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait