Contactez nous

Samba4 et Synchronisation de mots de passe OpenLdap

Venez ici partager vos astuces et aides autour de Samba4
Bonjour,

Un grand bravo pour vos documentations sur Samba4 d'une aide inestimable :D

J'essaie de synchroniser les mots de passe Samba4 vers OpenLdap, en me basant sur votre doc

J'ai pour ce besoin ajouté un DC3 (debian) compilé en 4.5.1 avec gpgme :
# smbd -b | grep "GPGME"
HAVE_GPGME_H
HAVE_GPGME
HAVE_GPGME_NEW
HAVE_LIBGPGME
ENABLE_GPGME


DC1 et DC2 également en 4.5.1 mais sans support gpgme bien que upgradé à partir de vos paquets deb
Je sens déjà que j'ai la réponse à ma question...il faut le support gpgme sur tous les DC !

Tout semble fonctionner en amont sur le DC3 :
- le script syncpwd.py
- la connexion vers le serveur openldap
- la mise en cache des mots de passe avec samba-tool
- le service samba-syncpasswords.service

Sauf aucune récupération du hash de l'utilisateur avec la commande :
samba-tool user getpassword xxx --attributes=virtualSSHA,samaccountname --decrypt-samba-gpg
dn: CN=xxx,CN=xxx,DC=xxx,DC=xxx
sAMAccountName: xxx

Got password OK


Les paquets prérequis sont bien installés :
rng-tools python-ldap python-crypto python-m2crypto python-gpgme python-gpgme-dbg libgpgme11-dev

Une piste pour récupérer les hash utilisateur ?
Réinstaller samba 4.5.1 compilé avec le support gpgme sur DC1 + DC2 ?
C'est possible car Machines Virtuelles mais un peu sportif

Merci d'avance pour vos conseils éclairés

Eric
Bonjour,

En effet, il faut avoir le support gpme sur tous les contrôleurs de domaine.
Ils leur faut aussi une clé gpg et l'id correspondant dans le fichier smb.conf.

Le script ne fonctionne qu'avec les utilisateurs qui ont changé leur mot de passe après sa mise en place.

Vous pouvez tenter d'utiliser la version 4.5.4 de samba plutôt que de réinstaller les DCs.
https://samba.tranquil.it/jessie64/samba-4.5.4/
Bonjour,

Merci pour votre réponse

Je testerai en faisant la mise à jour vers la 4.5.4 avec vos paquets, dès que possible...
En espérant que le support gpgme soit bien activé en faisant une mise à jour

Je vous tiendrai au courant si ça fonctionne après la maj

Bonne soirée
Bonjour,

Je suis passé en Samba 4.5.4 sur tout les DC, du coup j'ai bien le support GPGME
Ça marche presque...
Maintenant je récupère bien le hash des mot de passes, une fois le mot de passe modifié :
virtualSSHA: {SSHA}am+7UkRfBjpH/9mu7THj14z5Qci6tdZp
Got password OK


Par contre la réplication sur l'annuaire OpenLdap ne se fait pas, dans les logs de samba-syncpasswords, j'ai l'erreur "Exception global name 'time' is not defined"
samba-syncpasswords[27698]: Tue May 9 10:25:52 2017: pid[27698]: DONE-EXIT: Exception global name 'time' is not defined
samba-syncpasswords[27698]: DONE-EXIT: change password to adldaps


La connexion à l'annuaire ldap s'effectue bien et le bind s'effectue en admin ldap, si je change le mot de passe d'un utilisateur AD qui n'existe par sur ldap, j'ai bien un message : DONE-EXIT: User 'aduser3' not exist

Une piste pour m'aider à debugger ?

Autres questions :
Chaque DC doit-il avoir sa propre clé + id dans smb.conf ou faut-il la même pour tous les DC ?
Car si je demande le hash sur un DC qui n'a pas fait le changement de mot de passe :
samba-tool user getpassword adldaps --attributes=virtualSSHA,samaccountname --decrypt-samba-gpg
WARNING: 'adldaps': SambaGPG can't be decrypted into CLEARTEXT: ERR_BAD_SECKEY: Decryption failed

Et logiquement le service samba-syncpasswords sur chaque DC ?

Merci d'avance

Eric
Par contre la réplication sur l'annuaire OpenLdap ne se fait pas, dans les logs de samba-syncpasswords, j'ai l'erreur "Exception global name 'time' is not defined"
samba-syncpasswords[27698]: Tue May 9 10:25:52 2017: pid[27698]: DONE-EXIT: Exception global name 'time' is not defined
samba-syncpasswords[27698]: DONE-EXIT: change password to adldaps
Il manque un "import time" au début du script"
La connexion à l'annuaire ldap s'effectue bien et le bind s'effectue en admin ldap, si je change le mot de passe d'un utilisateur AD qui n'existe par sur ldap, j'ai bien un message : DONE-EXIT: User 'aduser3' not exist

Une piste pour m'aider à debugger ?
Il n'y a pas de réplication d'utilisateur, seulement la partie mot de passe.
Il vous faut trouver une autre méthode pour répliquer les utilisateurs.
Autres questions :
Chaque DC doit-il avoir sa propre clé + id dans smb.conf ou faut-il la même pour tous les DC ?
Car si je demande le hash sur un DC qui n'a pas fait le changement de mot de passe :
samba-tool user getpassword adldaps --attributes=virtualSSHA,samaccountname --decrypt-samba-gpg
WARNING: 'adldaps': SambaGPG can't be decrypted into CLEARTEXT: ERR_BAD_SECKEY: Decryption failed

Et logiquement le service samba-syncpasswords sur chaque DC ?
Oui il faut la clé même gpg + id sur tous les DCs.
Et oui, il faut bien le service samba-syncpasswords de lancer sur chaque DC
Bonjour,

Je viens de tester le script sur un Samba4 4.5.12 (Debian Stretch), et j'obtiens l'erreur suivante dans syslog, que je ne sais comment interpréter.
Les users sont bien trouvés, mais la synchro échoue

Feb 1 12:18:10 dc1 samba-syncpasswords[18022]: dn: <GUID=4e3d953f-7d85-4718-9286-4397c5c8cf64>;<SID=S-1-5-21-220842246-1859053709-2034179705-1143>;CN=John Doe,CN=Users,DC=domaine,DC=lan
Feb 1 12:18:10 dc1 samba-syncpasswords[18022]: userAccountControl: 66048
Feb 1 12:18:10 dc1 samba-syncpasswords[18022]: pwdLastSet: 131619569553456160
Feb 1 12:18:10 dc1 samba-syncpasswords[18022]: userPrincipalName: john.doe@domaine.lan
Feb 1 12:18:10 dc1 samba-syncpasswords[18022]: sAMAccountName: john.doe
Feb 1 12:18:10 dc1 samba-syncpasswords[18022]: objectGUID: 4e3d953f-7d85-4718-9286-4397c5c8cf64
Feb 1 12:18:10 dc1 samba-syncpasswords[18022]: instanceType: 4
Feb 1 12:18:10 dc1 samba-syncpasswords[18022]: # supplementalCredentials::: REDACTED SECRET ATTRIBUTE
Feb 1 12:18:10 dc1 samba-syncpasswords[18022]: # unicodePwd::: REDACTED SECRET ATTRIBUTE
Feb 1 12:18:10 dc1 samba-syncpasswords[18022]: Thu Feb 1 12:18:10 2018: pid[18022]: # Passwords[28] 4e3d953f-7d85-4718-9286-4397c5c8cf64 S-1-5-21-220842246-1859053709-2034179705-1143
Feb 1 12:18:10 dc1 samba-syncpasswords[18022]: # attrs=['dn', 'objectGUID', 'sAMAccountName']
Feb 1 12:18:10 dc1 samba-syncpasswords[18022]: Thu Feb 1 12:18:10 2018: pid[18022]: Call Popen[/opt/syncpwd.py] for CN=John Doe,CN=Users,DC=domaine,DC=lan
Feb 1 12:18:10 dc1 samba-syncpasswords[18022]: Thu Feb 1 12:18:10 2018: pid[18022]: DONE-EXIT: NOK
Feb 1 12:18:10 dc1 samba-syncpasswords[18022]: Thu Feb 1 12:18:10 2018: pid[18022]: # Dirsync[29] 5ede31ac-7390-4dd4-91de-bf6293d3dcc0 S-1-5-21-220842246-1859053709-2034179705-1137


J'ai pourtant bien installé les dépendances pré requises et ma version de samba supporte a priori bien le GPME:

]dc1:samba#smbd -b | grep "GPGME"
HAVE_GPGME_H
HAVE_GPGME
HAVE_GPGME_NEW
HAVE_LIBGPGME
ENABLE_GPGME

En revanche quand je teste pour récupérer le hash du mdp, je ne le visualise pas.
Ex:

dc1:samba#samba-tool user getpassword john.doe --attributes=virtualSSHA --decrypt-samba-gpg
dn: CN=John Doe,CN=Users,DC=domaine,DC=lan

Got password OK


Auriez-vous une idée de ce qui ne va pas?

Merci.
Bonjour,

Je me permets de répondre à moi même. J'ai solutionné le problème qui a priori était dû au fait que le mdp n'avait jamais été modifié côté samba4. Une fois le mdp modifié de quelques users de tests, cela a fonctionné.
J'ai donc pu tester la synchronisation des mots de passe depuis samba4 vers un annuaire LDAP déporté (domaine différent).
La synchro fonctionne bien, j'ai cependant remarqué un phénomène que je ne comprends pas.

Si je m'amuse à changer le mdp d'un user en CLI:

samba-tool user setpassword toto
New Password:
Retype Password:
Changed password OK

#samba-tool user getpassword toto --attributes=virtualSSHA --decrypt-samba-gpg
dn: CN=toto,CN=Users,DC=domaine,DC=lan
virtualSSHA: {SSHA}Lnfkk3WSTzwJux3o7wCMCXjnlC/4zuCs

Got password OK


Et que je surveille les logs dans /var/log/syslog, le mdp n'est pas répercuté de suite. Il ne sera effectué que si je change au autre mdp d'un autre utilisateur. Y a t'il moyen de faire en sorte que cela soit pris en compte immédiatement?

Le fait de joindre ce script à la commande "samba-tool user syncpasswords" et de le lancer via systemd, semble fonctionner comme un trigger qui répercute les modifications, seulement dans mon cas, cela fonctionne toutes les 2 modifications en gros.

Une idée?
Merci d'avance :)
Bonjour,

Je réponds à moi même mais sous un angle différent.
Mes tests précédents étaient réalisés sur des redhat7 avec vos paquets en version 4.6.4.
Ayant rencontré pas mal de problèmes sur les topologies de réplications, je suis reparti su une plateforme plus classique, en ubuntu18 et samba 4.7.6 (exit les pb de réplication).
Mais, en remettant en place le script de synchronisation des mot de passe samba4 vers un ldap avec le script syncpwd.py, je rencontre désormais un autre problème.

Dont voici la trace:

Code : Tout sélectionner

Dec 11 11:51:36 DC01 samba-syncpasswords[13698]: Tue Dec 11 11:50:24 2018: pid[13698]: DONE-EXIT: Exception {'desc': u'Other (e.g., implementation specific) error'}

Je n'ai a priori pas de problème de dépendances en termes de paquets python et suis en mesure de décrypter un mdp en CLI (le cache des mdp a bien été initialisé):

Code : Tout sélectionner

 samba-tool user getpassword toto --attributes=virtualSSHA --decrypt-samba-gpg
dn: CN=Toto toto,CN=Users,DC=domaine,DC=fr
virtualSSHA: {SSHA}MdPe1hbGUSNJdKEhdgYSJCQCRaS3EuNxumB

Auriez-vous une idée pour troubleshooter cela?
Bonjour,

Quelqu'un a t'il déjà testé ce script sous ubuntu18?
Je précise que le setup est strictement le même que celui qui avait été monté en redhat7 et qui fonctionnait très bien.
J'avais même apporté une modification au script afin qu'il synchronise le mdp Samba4 des users vers le champ userpassword ET le champ sambantpassword d'un ldap distant. (si cela intéresse quelqu'un..)

Dan le cas présent, j'ai tenté de backporter le paquet python-ldap de stretch (2.4.28-0.1 )sur la ubuntu (en version 3.0.0-1), sans plus de résultats.
J'ai également passé le service samba-syncpassword en debuglevel=10 pour en savoir plus.

Voici la trace complète:

Code : Tout sélectionner

Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: lpcfg_servicenumber: couldn't find ldb
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: ERROR(exception): uncaught exception - ERROR: 1 - cn=Thomas Dupont,ou=Clients,dc=remotedomain,dc=lan
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: Traceback (most recent call last):
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/opt/syncpwd.py", line 64, in <module>
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     set_user_password(ldap_destination, user['sAMAccountName'], user['password'])
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/opt/syncpwd.py", line 50, in set_user_password
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     ldap_destination.modify_s(dn, ldif)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 629, in modify_s
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     return self.modify_ext_s(dn,modlist,None,None)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 602, in modify_ext_s
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     resp_type, resp_data, resp_msgid, resp_ctrls = self.result3(msgid,all=1,timeout=self.timeout)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 749, in result3
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     resp_ctrl_classes=resp_ctrl_classes
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 756, in result4
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     ldap_result = self._ldap_call(self._l.result4,msgid,all,timeout,add_ctrls,add_intermediates,add_extop)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 329, in _ldap_call
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     reraise(exc_type, exc_value, exc_traceback)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 313, in _ldap_call
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     result = func(*args,**kwargs)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: ldap.OTHER: {'desc': u'Other (e.g., implementation specific) error'}
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/samba/netcmd/__init__.py", line 176, in _run
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     return self.run(*args, **kwargs)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/samba/netcmd/user.py", line 2281, in run
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     sync_loop(wait)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/samba/netcmd/user.py", line 2170, in sync_loop
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     dirsync_loop()
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/samba/netcmd/user.py", line 2147, in dirsync_loop
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     handle_object(ri, r)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/samba/netcmd/user.py", line 1964, in handle_object
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     run_sync_command(obj.dn, ldif)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/samba/netcmd/user.py", line 1933, in run_sync_command
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     raise Exception("ERROR: %s - %s\n" % (res, reply))
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: Wed Dec 12 08:45:21 2018: pid[4731]: Using cache_ldb[/var/lib/samba/private/user-syncpasswords-cache.ldb]
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: Wed Dec 12 08:45:21 2018: pid[4731]: currentPid: 4731
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: Wed Dec 12 08:45:21 2018: pid[4731]: Wait before connect - sleep(1)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: Wed Dec 12 08:45:22 2018: pid[4731]: Connecting to 'ldapi:///var/lib/samba/private/ldap_priv/ldapi'
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: Wed Dec 12 08:45:22 2018: pid[4731]: Resuming monitoring
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: dirsyncFilter: (&(objectClass=user)(userAccountControl:1.2.840.113556.1.4.803:=512)(!(sAMAccountName=krbtgt*)))
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: dirsyncControls: ['dirsync:1:0:0:TVNEUwMAAACAmlevZ5HUAQAAAAAAAAAAoAAAAEnQAAAAAAAAAAAAAAAAAABJ0AAAAAAAAIzV6KNOBVBGkH8wcdL4YbEBAAAAAAAAAAYAAAAAAAAAjNXoo04FUEaQfzBx0vhhsUnQAAAAAAAAAiZpGzM1hUKp/pa8km+OEANyCAAAAAAAOYtMZ5FpwE+BYxhasmoMpkNuBwAAAAAA1WFydNCQ10eFOIIMdBpXTLHZCAAAAAAAkjvogTKirk2lnUjQTB/7g7yWAAAAAAAAROqcq1Vng0K7L30S0XzA5hc6BwAAAAAA', 'extended_dn:1:0']
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: syncCommand: /opt/syncpwd.py
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: Wed Dec 12 08:45:22 2018: pid[4731]: dirsync_loop(): results 1
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: Wed Dec 12 08:45:22 2018: pid[4731]: # Dirsync[0] d95c335d-1c98-46be-a198-ad7d5de43e2c S-1-5-21-659298242-1763559122-495668692-1592
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: dn: <GUID=d95c335d-1c98-46be-a198-ad7d5de43e2c>;<SID=S-1-5-21-659298242-1763559122-495668692-1592>;CN=Thomas Dupont,CN=Users,DC=localdomain,DC=lan
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: pwdLastSet: 131890743129894340
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: objectGUID: d95c335d-1c98-46be-a198-ad7d5de43e2c
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: instanceType: 4
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: # supplementalCredentials::: REDACTED SECRET ATTRIBUTE
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: # unicodePwd::: REDACTED SECRET ATTRIBUTE
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: # dBCSPwd::: REDACTED SECRET ATTRIBUTE
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: Wed Dec 12 08:45:22 2018: pid[4731]: # Passwords[0] d95c335d-1c98-46be-a198-ad7d5de43e2c S-1-5-21-659298242-1763559122-495668692-1592
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: # attrs=['dn', 'objectGUID', 'sAMAccountName', 'virtualClearTextUTF8', 'virtualSSHA']
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: Wed Dec 12 08:45:22 2018: pid[4731]: Call Popen[/opt/syncpwd.py] for CN=Thomas Dupont,CN=Users,DC=localdomain,DC=lan
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: Wed Dec 12 08:45:22 2018: pid[4731]: cn=Thomas Dupont,ou=Clients,dc=remotedomain,dc=lan
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: Traceback (most recent call last):
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/opt/syncpwd.py", line 64, in <module>
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     set_user_password(ldap_destination, user['sAMAccountName'], user['password'])
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/opt/syncpwd.py", line 50, in set_user_password
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     ldap_destination.modify_s(dn, ldif)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 629, in modify_s
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     return self.modify_ext_s(dn,modlist,None,None)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 602, in modify_ext_s
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     resp_type, resp_data, resp_msgid, resp_ctrls = self.result3(msgid,all=1,timeout=self.timeout)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 749, in result3
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     resp_ctrl_classes=resp_ctrl_classes
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 756, in result4
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     ldap_result = self._ldap_call(self._l.result4,msgid,all,timeout,add_ctrls,add_intermediates,add_extop)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 329, in _ldap_call
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     reraise(exc_type, exc_value, exc_traceback)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:   File "/usr/lib/python2.7/dist-packages/ldap/ldapobject.py", line 313, in _ldap_call
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]:     result = func(*args,**kwargs)
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: ldap.OTHER: {'desc': u'Other (e.g., implementation specific) error'}
Dec 12 08:45:22 p-smb-01 samba-syncpasswords[4731]: Wed Dec 12 08:45:22 2018: pid[4731]: RESULT: 1
Dec 12 08:45:22 p-smb-01 systemd[1]: samba-syncpasswords.service: Main process exited, code=exited, status=255/n/a
Dec 12 08:45:22 p-smb-01 systemd[1]: samba-syncpasswords.service: Failed with result 'exit-code'.
Dec 12 08:45:23 p-smb-01 systemd[1]: samba-syncpasswords.service: Service hold-off time over, scheduling restart.

Voici également les versions des paquets utilisés:

Code : Tout sélectionner

python-gpgme                          0.3-1.2 (backporté depuis debian)
python-ldap                           3.0.0-1
python-samba                          2:4.7.6+dfsg~ubuntu-0ubuntu2.5    amd64        Python bindings for Samba
samba                                 2:4.7.6+dfsg~ubuntu-0ubuntu2.5    amd64        SMB/CIFS file, print, and login server for Unix
samba-common                          2:4.7.6+dfsg~ubuntu-0ubuntu2.5    all          common files used by both the Samba server 
tis-sysvolsync                        0.2.2                             amd64        Install a sync process for samba4 sysvol directory using syncthing tool.

python --version
Python 2.7.15rc1
Réponse à moi même, l'exception était tout simplement due au fait que le ldap distant ne pouvait plus écrire (partition pleine...) :)