Changing OD password by command line

Login to the server running Open Directory and run the following to be prompted to change snoopdog’s password

sudo passwd -i OpenDirectory -l /LDAPv3/ -u diradmin snoopdog

found here:


     passwd — modify a user’s password


     passwd [-i infosystem [-l location]] [-u authname] [user]


     The passwd utility changes the user’s password.  If the user is not the super-user, passwd first prompts for the current password and will not continue unless the correct password is entered.

     When entering the new password, the characters entered do not echo, in order to avoid the password being seen by a passer-by.  The passwd utility

     prompts for the new password twice in order to detect typing errors.

     The new password should be at least six characters long and not purely alphabetic.  Its total length should be less than _PASSWORD_LEN (currently 128

     characters), although some directory systems allow longer passwords.  Numbers, upper case letters, and meta characters are encouraged.

     Once the password has been verified, passwd communicates the new password to the directory system.

     -i infosystem

           This option specifies where the password update should be applied.  Under Mac OS X 10.5 and later, supported directory systems are:

           PAM   (default) Pluggable Authentication Modules.


                 A system conforming to Open Directory APIs and supporting updates (including LDAP, etc).  If no -l option is specified, the search node is used.

           file  The local flat-files (included for legacy configurations).

           nis   A remote NIS server containing the user’s password.

     -l location

           This option causes the password to be updated in the given location of the chosen directory system.

           for file,

                 location may be a file name (/etc/master.passwd is the default)

           for nis,

                 location may be a NIS domainname

           for opendirectory,

                 location may be a directory node name

           for PAM,

                 location is not used

     -u authname

           This option specifies the user name to use when authenticating to the directory node.

     user  This optional argument specifies the user account whose password will be changed.  This account’s current password may be required, even when

           run as the super-user, depending on the directory system.


     /etc/master.passwd  The user database

     /etc/passwd         A Version 7 format password file

     /etc/passwd.XXXXXX  Temporary copy of the password file


     chpass(1), login(1), dscl(1), passwd(5), pwd_mkdb(8), vipw(8)

     Robert Morris and Ken Thompson, UNIX password security.


     A passwd command appeared in Version 6 AT&T UNIX.

Mac OS X                        August 18, 2008                       Mac OS X

DSCL and scripting mentioned here: