It is a true statement that no system can be any more secure than its passwords. When a user attempts to login to your system, a password will be requested. This password will then be encrypted and compared with the previously encrypted version in the file /etc/passwd. If the two encrypted passwords match, the user will be allowed to login to the system. Since the information contained in the password file is generally useful for all sorts of reasons, and since the password itself is securely encrypted, the file has public read access.
So far, so good, but now add the human factor. Most users want a password that is easy to remember - something meaningful to them - their partner's name, their birthdate, or something similar. Passwords like these are just asking for trouble. They are easy to guess by anyone with only a vague knowledge of you and your friends. When you choose a password, it should be something which includes a mixture of upper and lower case characters, digits and punctuation marks and is hence less likely to be discovered by someone trying to guess what it is. In cases where security is particularly strict the important system passwords should be changed quite frequently and should be shared between as few people as is realistically possible.
Obviously, for a system with several users on it, the minimum number of privileged users should take into account the fact that you may be away or ill when one of the users needs something done that requires root access.
In addition to normal user passwords, it is also possible in Linux to assign passwords to groups of users in the file /etc/group. Putting passwords on groups allows any user with a particular group's password to change to that group using the newgrp command. However, it is generally more secure not to put passwords on groups as then only those users actually listed along side each group in the /etc/group file can make these group changes.