Você precisa configurar um gatekeeper SSH. Isso permite que o openssh permita a autenticação multifatorial.
Aqui está um ótimo link: link
Essencialmente, você usa a diretiva ForceCommand para executar um script quando o usuário faz logon. Esse script solicita ao usuário a senha. Atualmente estou procurando um método para verificar uma senha dada contra a senha do sistema, mas estou chegando (compreensivelmente) em branco.
Se a conta do usuário estiver armazenada em um diretório LDAP, você poderá tentar vincular-se ao diretório usando essas credenciais, mas o problema será que o programa em execução será executado como usuário, não como raiz. Não conheço as implicações de segurança de escrever o código compilado e defini-lo como SUID.
Espero que alguém lhe dê uma resposta melhor.
mas desde que eu digitei tudo isso, você está em um site ultra-seguro? Porque essa é realmente a única razão para isso. Chaves públicas normais com senhas devem ser mais do que suficientes para 99% dos casos.