Vorrei sottolineare che la configurazione è esattamente la stessa di quella impostata in redhat7 e che ha funzionato molto bene.
Ho persino modificato lo script in modo che sincronizzi le password Samba4 degli utenti con i campi userpassword e sambantpassword di un server LDAP remoto. (Se a qualcuno interessa...)
In questo caso, ho provato a effettuare il backport del pacchetto python-ldap da stretch (2.4.28-0.1) su Ubuntu (versione 3.0.0-1), senza ulteriori risultati.
Ho anche impostato il servizio samba-syncpassword su debuglevel=10 per saperne di più.
Codice: Seleziona tutto
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.