|
HI,
Unix Stores passwords in a text file. Usually passwords were
stored in /etc/passwd file. So any body can see the contents of
the passwd file. Also can look into the password string (ofcourse
they are encrypted (cypher text). Which could only be
understood by the passed program.
This gave some space for the world community to start guessing
and re-coining the passwords for some definite kind of password
text.
Hence in order to avoid / give no chance to the password visibility,
a file called /etc/shadow was being provided which has one and only one permission, and passwords are now being stored in this file instead.
i.e. Read permission on the file only for
root/superuser. Hence no body will be able to see the contents
of this /etc/shadow file other than the root user.
Well, now you may feel that, why shouldn't we apply the only root user
read permission for the /etc/passwd file?
Actually the /etc/passwd file will have -r--r--r type of permission (i.e., read only for all).
This read only for all is required because,
when a valid user loggs on successfully to the unix box, he will be
put into some specific directory (home directory), and his required
shell is loaded for him to interect with the Unix World.
So, all the infromation regarding the users Home Dirctory, his/her preferrd shell etc.,
are stored in this file. So, when the user logs
in, login program should be able to read and load all this information from this file,
before user is allowed to work in his way.
For more details type man passwd and go through it.
|