Pelo que entendi, você tem (pelo menos para este problema em particular) dois grupos de usuários distintos , um capaz de fazer o login via SSH e obter um shell interativo (vamos chamar o grupo ssh ) e um pode fazer o login via SFTP e obter apenas um shell SFTP (vamos chamar o grupo sftp ).
Agora crie os grupos ssh e sftp em seu sistema com groupadd , coloque os respectivos usuários nos grupos ( gpasswd -a $USERNAME $GROUPNAME ) e anexe as seguintes linhas no final ( isso é importante! ) do seu sshd_config localizado em /etc/ssh/sshd_config :
Match Group sftp
PasswordAuthentication yes
# Further directives for users in the "sftp" group
Match Group ssh
PasswordAuthentication no
# Further directives for users in the "ssh" group
Leia sobre a diretiva Match em sshd_config (5) e sobre os padrões permitidos em ssh_config (5) .
Você também terá que reiniciar o processo ssh para que isso entre em vigor:
sudo /etc/init.d/ssh restart