O que você quer é uma solução personalizada de pam. Os Módulos de Autenticação Plugáveis são capazes de fazer coisas assim com dificuldade mínima. O desafio é gerenciar os usuários. As duas maneiras de fazer isso dependem de onde você está mantendo seu banco de dados do usuário principal. Se você estiver usando o LDAP, os módulos do ldap terão opções para restringir usuários com base em vários critérios. Basta dar a cada serviço diferentes opções de ldap. Se você estiver mantendo os usuários no arquivo passwd, eu recomendaria algo como pam_listfile. Cada serviço receberia uma lista de usuários com permissão para usá-lo e a linha de configuração apropriada, e todos ficariam satisfeitos. (você também pode configurá-lo para os usuários listados serem negados. A desvantagem de fazer isso (qualquer um dos métodos) é que as ferramentas da sua distribuição para gerenciar a configuração do pam não funcionarão e você deve configurar o pam manualmente.