Allowing multiple passwords attached to one account (Linux)

Solution 1:

PAM can do all sorts of awesome auth stuff. That list is probably a bit out of date, so have a look around.

Solution 2:

OPIE is probably something you would like for your needs. Also, remember that permissions are set based on the User ID, not the login name. So, you can share the same UID of someone else without sharing the same password, login name, home directory and login shell (as well as any other place that let you configure your system without the login shell). PAM as also a very flexible (but complex) system that you can configure to do a lot of weird stuff (like allowing login only from some place at some time, or dual-factor authentication).