/usr/bin/passwd offers a "safe way" for root to edit /etc/passwd (or shadow). If setuid it allows regular users to change passwd without asking root to do changes for them.

(note: does have learning curve on args to choose)

gnupasswd - gnu change user password
gnugpasswd - gnu change group password

gnupasswd(1) has a goal to work with older login.c/linux and some newer too, also "getpwent" (any glibc). or help convert.

gnupassd does pass only: leaves all else alone (compat). small, simpler for single admin / small linux bases.

For example: it can make plain /etc/passwd plain text password file (still) or use shadow - (login.c may do both).

A goal is to be old linux and no "depends problems" (ie, some required pam selinux audit kerb (+nis remove hacks) "to work as intended". These can contact remote computers during login if misconfigured and are complicated to know if secure.

gnupasswd has none of these (gnu has NIS, off by default)

Features

  • small simple to install, easy to read / hack
  • careful coding - checks for errors always
  • uses signals to prevent early quit
  • uses glibc (set/end)pwent and file locking
  • checks file permissions
  • has internal pwd.h line parser if opted to use
  • does not phone home, has no networking code
  • supports SHADOW or not, crypt or not
  • (see login.c that is altered to take old/new /etc/passwd)
  • follows MAC (Mandatory Access Control)
  • a few output options to help root convert or test
  • it's old passwd(1) but new, but not too new
  • it's fresh start code, not re-hacked code
  • code uses long names, no mystery variables

Project Activity

See All Activity >

License

GNU General Public License version 2.0 (GPLv2)

Follow gnupasswd

gnupasswd Web Site

Other Useful Business Software
Keep company data safe with Chrome Enterprise Icon
Keep company data safe with Chrome Enterprise

Protect your business with AI policies and data loss prevention in the browser

Make AI work your way with Chrome Enterprise. Block unapproved sites and set custom data controls that align with your company's policies.
Download Chrome
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of gnupasswd!

Additional Project Details

Operating Systems

BSD, Linux

Intended Audience

Advanced End Users, System Administrators

User Interface

Command-line, Console/Terminal

Programming Language

C

Database Environment

Flat-file, Other API

Related Categories

C Systems Administration Software, C NIS Software

Registered

2015-08-12