# $Id$ =head1 INTRODUCTION The goal of this docmuentation is to give soo clue about how to manage usuall issue with this software. =head1 FAQ =head2 Denying to locked user to login using SSH with key There is no way on linux to deny to expired or locked user to login using ssh and ssh key because sshd simply skip the authentification step on PAM and both checks are done here. On way could be to change the shell, this is what is done for standard C database but you immediatelly feel this method is ugly and complex to code. After some wonder about how to do here the solution found as the best. In C you can define users and groups not allow to login, and because this is managed by C itself it will work whatever the login method is used. In the L database create groups to match user's states one for locked user and one for expired users (unexported user don't exists anymore, no need to filter them). Now add to both an C to match thoses users: For locked users: autoMemberFilter: unexported=0 autoMemberFilter: locked=* For expired users: autoMemberFilter: unexported=0 autoMemberFilter: expired=* Now add to you C: DenyGroups expired locked where C and C are the name of both groups. You're done, both groups will be update automatically according user's status and C will reject them.