The Debian system provides the adduser program as the primary tool for managing both user and system accounts. The simplest way to add the new user fred, is the command:
adduser fred
adduser will choose the next available uid (user ID) for fred, create a user and group with that id, create a home directory named fred, copy /etc/skel into /home/fred, and then ask for a new password for fred. While there are options that allow these items to be specified on the command line, this simple command is the best way to integrate a new user into the system.
If you use the --disabled-password option, the account will be created, but it will be disabled until a password is assigned to fred. In this case, adduser will not request a password at this time, and the passwd program must be used later to activate the account. This allows you to set up all the users in a class, and then assign them passwords as they come to you for them. This keeps the account from being an entry point into the system for someone who finds the ``master'' list. Once a password has been assigned to the user, they should be encouraged to change their password immediately making the ``assigned'' password useless to an intruder.
Finally, adduser will ask for the information to be presented when this account is ``fingered'' by someone. finger is a program that searches (even over the net when a different domain is specified) for the account specified, and returns the personal information found for that account. adduser inserts the data into the entry in /etc/passwd that it creates for fred. So, now if you finger fred you will see something like the following:
Login: fred Name: Fred Smith
Directory: /home/fred Shell: /bin/bash
Office: 101, 555-1212 Home Phone: 555-5555
Never logged in.
No mail.