≡ Menu

FreeBSD: Password expiry / aging policy

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.

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


  • -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:

  • -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.
Share this on:

Your support makes a big difference:
I have a small favor to ask. More people are reading the nixCraft. Many of you block advertising which is your right, and advertising revenues are not sufficient to cover my operating costs. So you can see why I need to ask for your help. The nixCraft, takes a lot of my time and hard work to produce. If you use nixCraft, who likes it, helps me with donations:
Become a Supporter →    Make a contribution via Paypal/Bitcoin →   

Don't Miss Any Linux and Unix Tips

Get nixCraft in your inbox. It's free:

{ 2 comments… add one }
  • andrei manescu November 21, 2007, 1:55 pm

    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

  • nixCraft November 21, 2007, 2:44 pm


    Thanks for the heads up. The post has been updated.

Security: Are you a robot or human?

Leave a Comment

   Tagged with: , , , , , , , ,