FreeBSD: Password expiry / aging policy

last updated in Categories FreeBSD, Howto, Security, Sys admin, Tips, UNIX, User Management

For security reason you must enable Password expiry policy on FreeBSD box. Linux comes with chage command, which changes the number of days between password changes and the date of the last password change.

Advertisements

FreeBSD pw command

Use pw command to setup password expiry date for existing user account. Syntax is as follows:
pw user mod USERNAME -p DD-MMM-YY

Where,

  • -p DD-MMM-YY: Set the account’s password expiration date.

For example, expire user rocky’s password on 31-Mar-2006:
# pw user mod USERNAME -p 31-mar-06
Use pw command to setup password expiry while creating new user account.
pw user add USERNAME -p DATE -e DAYS:
Where,

  • -p DAYS: Set default account expiration period in days
  • -e DAYS: Set the account’s expiration date.

For example create a user called didi and Set the default password expiration to 30 days.
# pw user add didi -p 30 -d /home/didi -m
# passwd didi

This is good if you have small number of users. For large installation base (such as University computers) you need to define user login class. With login class you can control the following :

  • Resource limits
  • Accounting limits
  • Authentication limits
  • Default user environment settings.

ADVERTISEMENTS

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

2 comment

  1. I think you got it wrong:
    * -p DAYS: Set default account expiration period in days
    * -e DAYS: Set default password expiration period in days

    Man pw disagrees 🙂
    -p date Set the account’s password expiration date. This field is
    similar to the account expiration date option, except that
    it applies to forced password changes. This is set in the
    same manner as the -e option.

    -e date Set the account’s expiration date. Format of the date is
    either a UNIX time in decimal, or a date in `dd-mmm-yy[yy]’
    format, where dd is the day, mmm is the month, either in
    numeric or alphabetic format (‘Jan’, ‘Feb’, etc) and year

    Have a question? Post it on our forum!