Welcome Guest, Login or Sign up

zimbraSambaPassword Extension

By: amessina

Updated for 7.x! Pure Java now!

Server extension to compute the samba NT and LM hashes and keep them in sync with the Zimbra user password when it is changed.



  • ZCS up to 7.2
  • Working Samba 3.x + LDAP
  • zimbra_posixaccount and zimbra_samba admin extension installed


Installation and Configuration

  1. As root, create the /opt/zimbra/lib/ext/sambapassword directory
  2. As root, copy zimbraSambaPassword.jar into /opt/zimbra/lib/ext/sambapassword/
  3. Restart Zimbra

At the end execute as zimbra user:

zmprov md example.com zimbraPasswordChangeListener SambaPassword


Note: Follow the links below to download working copies for ZCS 7.2 of the famous admin extensions zimbra_posixaccount and zimbra_samba

Helpful Links


Rating ( 7 ratings )
Downloads 6475
Latest Version 1.0
Categories Developer Tools , Utilities
Compatibility ZCS Legacy , ZCS 7.x
License No License Specified
Created on 3/10/08
Updated on 10/8/15


  • Does it work it Zimbra 8.0? 

    By: fs.schmidt on on 8/15/14 for version 1.0

    Hi, Does this Zimlet work with Zimbra 8.0 OSE? My best regards, Fabio S. Schmidt

  • Pure Java Version 

    By: vinzenz on on 8/3/12 for version 0.1

    For anyone interested, here is a modified version of the presented extension of amessina without external binary:https://rapidshare.com/files/3494837468/sambapassword.zipIt works fine for me on a 7.2.0 test server.NOTE: This extension only updates the NT hash, not LM. LM is outdated and should not be used anymore.

  • 7.x?? 

    By: marcelofr on on 5/8/12 for version 0.1

    Hello amessina, I've installed your extension on 7.1.4 and I broke authentication successfully... I'm reversing manual README instructions, but I don't know how to reverse "zmprov modifyConfig zimbraPasswordChangeListener sambapassword".I hope you can code the new version soon!!!

  • Any good news for 7.x? 

    By: mbayram on on 4/9/12 for version 0.1

    Amessina, is there any development for 7.x?

  • Invalid attribute name 

    By: nyu on on 9/20/11 for version 0.1

    Hi,I installed it, but when change password on webUI I have an eror Invalid attribute name.I using Zimbra OpenSource 7.1.2_GA Thanks, zimlet

    • Hy nyu, it was developed for zcs 5.x. I'll start coding and tests for 7.x soon Thanks 

      Replied on 3/19/12

  • synchronized password 

    By: mnbvmnbv on on 3/14/11 for version 0.1

    Hi, When I install the zimbraSambaPassword extension, how can I specify the url of my external active directory to synchronized the passwords??  Thanks, excellent zimlet :D

    • Hi, There's no needs to do it in the zimlet. You have to enter your external AD server as usually in Zimbra. That's all. Thanks a lot. 

      Replied on 3/27/11

  • Perfect 

    By: tim.mothery on on 9/7/10 for version 0.1

    I'm moving my whole company (approx 350 windows clients) over to LDAP and Samba and couldn't find a clean way to change the NT password.  As we use Zimbra (since early v4) this is the perfect way to do it.  Users now have a 'web' interface to change (all) their password for both Samba and Zimbra.  All other solutions presume that your running Samba as a domain controller which we don't and don't want to.  Thanks.P.S.  The ReadMe mentions avioding the mkntpwd in favour of a pure Java implementation.  Maybe this python code snippet will help>>> import hashlib>>> nt_password = hashlib.new('md4', 'test'.encode('utf-16le')).hexdigest()>>> nt_password'0cb6948805f797bf2a82807973b89537' 

    • Hi Tim Yes, I agree with you: it's not a pure java implementation. It simply was a (maybe better?) follow-up of my previous post on Zimbra Forums. If anyone is interested I can recode it in a pure java way. Thank you 

      Replied on 3/27/11

Older Versions:

Version 0.1

Compatibility ZCS Legacy , ZCS 7.x
Created 4/7/10, 3:24 AM
Toggle description

This package implements a server extension as a change password listener to compute the samba NT and LM hashes and keep them in sync with the user password when it is changed. See the README.txt and use the install.sh script to install.