Should unprivileged users be able to change their shell with lchsh on 5.3 and, if it matters, CentOS Directory Server? lchsh seems to require more open permissions than those which come with a default installation:
Error initializing libuser: could not open configuration file `/etc/default/useradd': Permission denied.
Matt