Pelo que entendi, você quer permitir senhas de alguns usuários, mas não de outras pessoas?
Você pode configurar um bloco Match
. Então, sua configuração pode ser algo como abaixo.
...
PasswordAuthentication no
...
Match user drupalsftp
PasswordAuthentication yes
Como você mencionou que essas transações baseadas em senha estão ocorrendo a partir do drupal, talvez você possa fazer whitelists com base no endereço do host? Match address 127.0.0.1/32
Você deve ser capaz de combinar os critérios e dizer que apenas uma conta específica de um endereço específico pode fazer a autenticação de senha.
PasswordAuthentication no
...
Match user drupalsftp address 10.1.2.3/32
PasswordAuthentication yes
# also since we want only sftp
ForceCommand internal-sftp
Links