Project

General

Profile

Tâche #14929

Distribution EOLE - Scénario #16578: traitement express

Partages samba: plus d'accès aux répertoires ayant un mauvais encodage, la directive 'directory mask ' n'autorise plus le droit d'écriture pour les groupes

Added by christophe guerinot over 5 years ago. Updated about 5 years ago.

Status:
Fermé
Priority:
Haut
Start date:
09/21/2015
Due date:
% Done:

100%

Estimated time:
6.00 h
Spent time:
Remaining (hours):
0.0

Description

Deux dysfonctionnements sur les partages samba constatés au MEDDE depuis le passage en eole2.5 , alors que fonctionnel en eole 2.4

renommage_fichiers.py View (2.75 KB) christophe guerinot, 03/08/2016 05:20 PM

Associated revisions

Revision 8d5994b0 (diff)
Added by christophe guerinot about 5 years ago

smb-include_shares.conf : Valeur de la directive 'obey pam restrictions' à 'No' ( fixes #14929 @8.0 ).

  • permet de corriger un bug sur les droits lors de la création de fichiers avec MSWord à partir de client Seven
  • adaptation de la création automatique des répertoires individuels

Revision d14fa97a (diff)
Added by christophe guerinot about 5 years ago

70_esbl.xml: Actualisation du dico suite à la suppression du template 'common-session.ecdl' ( ref #14929 ).

Revision eb8a53c8 (diff)
Added by christophe guerinot about 5 years ago

Suppression du template samba.ecdl du fichier /etc/.pam.d/samba', samba ne s'appuie plus sur pam ( ref #14929 ).

History

#1 Updated by Thierry Bertrand over 5 years ago

  • Parent task changed from #14700 to #14733

#2 Updated by Thierry Bertrand over 5 years ago

  • Project changed from eCDL to eSBL

#3 Updated by Thierry Bertrand over 5 years ago

  • Priority changed from Normal to Haut
  • Estimated time set to 6.00 h
  • Parent task changed from #14733 to #15118
  • Remaining (hours) set to 6.0

#4 Updated by Thierry Bertrand over 5 years ago

  • Parent task changed from #15118 to #15299

#5 Updated by christophe guerinot over 5 years ago

Encodage: Parmi les solutions de contournement, ci-joint le script de Sodara "qui ré-encode les noms de fichiers +
répertoires et les renomme pour ne mettre que des caractères autorisés (et enlever les accents)"
Merci Sodara :)

#6 Updated by christophe guerinot over 5 years ago

  • Status changed from Nouveau to En cours

#7 Updated by Thierry Bertrand over 5 years ago

  • Status changed from En cours to Nouveau
  • Parent task changed from #15299 to #15626

#8 Updated by christophe guerinot over 5 years ago

  • Status changed from Nouveau to En cours

#9 Updated by christophe guerinot over 5 years ago

  • Status changed from En cours to Nouveau

#10 Updated by Thierry Bertrand over 5 years ago

  • Parent task changed from #15626 to #15871

#11 Updated by Thierry Bertrand over 5 years ago

  • Parent task changed from #15871 to #16085

#12 Updated by Emmanuel IHRY over 5 years ago

  • Parent task changed from #16085 to #16199

#13 Updated by Emmanuel IHRY about 5 years ago

  • Parent task changed from #16199 to #16578

#14 Updated by christophe guerinot about 5 years ago

  • Status changed from Nouveau to En cours

#15 Updated by christophe guerinot about 5 years ago

Depuis samba 4.3.9 les nouveaux fichiers créés avec MSWord n'ont plus le droit d'écriture sur le groupe propriétaire à partir d'un client Seven.
Il n'y a pas de problème avec LibreOffice (et OpenOffice), pas de problème non plus à partir d'un client XP.

De même il n'y a pas de problème sur le scribe (ni sur l'eCdl) du fait de la directive "obey pam restrictions" à "No"

Pour le test, il n'y a pas d'acl positionnées

le partage est défini par

[pnesr]
    comment = pnesr
    path = /home/pnesr
    read only = No
    create mask = 0660
    directory mask = 0770
    directory mode = 0770

et pour les droits unix

drwxrws--- 7 root TEST-PNESR+sg 4096 juin  29 19:38 /home/pnesr

sur l'eSbl avec la directive "obey pam restrictions" à "Yes"

les fichiers créés avec MSWord génère des acl qui ne donnent pas de droits d'écriture au groupe

-rw-rwx---+ 1 TEST-PNESR+local.pnesr-cgu3 TEST-PNESR+sg 24064 juin  29 19:37 w7-Word-doc-pnesr-cgu3-05.doc
~# getfacl /home/pnesr/w7-Word-doc-pnesr-cgu3-05.doc
(...)
group:TEST-PNESR+sg:r-- 
(...)

quand on passe la directive "obey pam restrictions" à "No"

il y a bien les droits d'écriture pour le groupe

f# getfacl /home/pnesr/rep-pnesr-cgu3/w7-Word-doc-pnesr-cgu3-02.doc 
getfacl : suppression du premier « / » des noms de chemins absolus
# file: home/pnesr/rep-pnesr-cgu3/w7-Word-doc-pnesr-cgu3-02.doc
# owner: TEST-PNESR+local.pnesr-cgu3
# group: TEST-PNESR+sg
user::rw-
user:TEST-PNESR+sg:rw-
group::rw-
group:TEST-PNESR+local.pnesr-cgu3:rw-
group:TEST-PNESR+sg:rw-
mask::rwx
other::---

un autre utilisateur du groupe 'TEST-PNESR+sg' peut donc modifier le fichier MSWord créé

(1) - reste à voir

certaines des acl générées par MSWord semblent incohérentes

(...)
user:TEST-PNESR+sg:rw-
(...)
group:TEST-PNESR+local.pnesr-cgu3:rw-
(...)

acl de groupe 'TEST-PNESR+sg' sur le propriétaire
et acl d'utilisateur 'TEST-PNESR+local.pnesr-cgu3' sur le groupe

ce comportement ne se produit pas sur le scribe, ni sur l'eCdl, où la création d'un fichier MSWord génère également des acl

-rw-rwxr--+ 1 premier.bureau sg 24064 juin  24 20:14 w7-Word-doc-premier-bureau.doc
~# getfacl /home/pnesr/w7-Word-doc-premier-bureau.doc 
getfacl : suppression du premier « / » des noms de chemins absolus
# file: home/pnesr/w7-Word-doc-premier-bureau.doc
# owner: premier.bureau
# group: sg
user::rw-
user:premier.bureau:rw-
group::rw-
group:sg:rw-
mask::rwx
other::---

(2) l'utilisation de la directive "obey pam restrictions" à "No" ne permet plus de générer automatiquement les répertoires individuels

# cat /etc/pam.d/common-session
(...)
session required pam_mkhomedir.so skel=/etc/skel/ umask=0066
(...)

adaptation en utilisant une directive preexe dans la définition du partage [homes]

[homes]
(...)
    root preexec = /usr/share/eole/sbin/mkhomedir.sh %D %S %G %w

avec le script mkhomedir.sh permettant de retrouver le même comportement qu'avec le module pam

# cat /usr/share/eole/sbin/mkhomedir.sh 
#!/bin/bash

if [ "$4" == "" ]; then
    echo "syntaxe $(basename $0) <NomDomaine> <Account> <GroupeProprietaire> <SeparateurWinbind>" 
    exit 1
fi

REP_INDIVIDUEL=/data/bureautique/individuel
CURRENT_UMASK=$(umask)

# le quatrième paramètre correspond au séparateur winbind

if [ ! -e $REP_INDIVIDUEL/$1/$2 ]; then
    if [ ! -e "$REP_INDIVIDUEL/$1" ]; then
        mkdir $REP_INDIVIDUEL/$1
        chmod 755 $REP_INDIVIDUEL/$1
    fi
    umask=0066
    mkdir $REP_INDIVIDUEL/$1/$2
    chown $1$4$2:$3 $REP_INDIVIDUEL/$1/$2
    chmod g-s $REP_INDIVIDUEL/$1/$2
    chmod 0711 $REP_INDIVIDUEL/$1/$2
    umask=$CURRENT_UMASK
fi
exit 0

#16 Updated by christophe guerinot about 5 years ago

  • Status changed from En cours to Résolu
  • % Done changed from 0 to 100

#17 Updated by christophe guerinot about 5 years ago

  • Subject changed from Partages samba: plus d'accès aux répertoires ayant un mauvais encodage, la directive 'directory mask ' n'autorise plus le droit d'écriture pour les groupes to Partages samba: plus d'accès aux répertoires ayant un mauvais encodage, la directive 'directory mask ' n'autorise plus le droit d'écriture pour les groupes
  • Remaining (hours) changed from 6.0 to 0.0

#18 Updated by Thierry Bertrand about 5 years ago

  • Status changed from Résolu to Fermé

Also available in: Atom PDF