A autenticação é implementada usando o PAM, os módulos de autenticação plugáveis.
Linux-PAM é um sistema de bibliotecas que lidam com as tarefas de autenticação de aplicações (serviços) no sistema. A biblioteca fornece um general estável interface (Application Programming Interface - API) que privilegia a concessão programas (como login (1) e su (1)) adiam para executar o padrão tarefas de autenticação.
A configuração do serviço de login está em /etc/pam.d/login
.
É bem comentado e muito informativo.
São os módulos do PAM que acessam o arquivo de senhas, quando necessário. Em sistemas com autenticação centralizada (por exemplo, LDAP), o serviço de login talvez nunca precise acessar o arquivo de senha.
Veja mais informações em man 7 pam
.