Eu tenho chaves ssh públicas e privadas em todos os meus três servidores (dev, UAT e produção) para poder efetuar login remotamente ou de um para outro. Tudo está funcionando perfeitamente para os comandos ssh
e scp
.
Ele não funcionar, no entanto, para Drush. Se eu executar drush @dev status
no UAT, por exemplo, recebo o banner do servidor dizendo que o sistema "deve ser usado apenas por usuários autorizados blá blá blá " e, em seguida, recebo
Permissão negada (chave pública, senha, teclado interativo).
Meu ~/.drush/aliases.drushrc.php
arquivo contém:
# Development #
$aliases['dev'] = array(
'uri' => 'http://default',
'root' => '/var/www/vhosts/dev.www.company.com/current/',
'remote-host' => 'companya0.company.com',
'remote-user' => 'myusername'
);
# UAT #
$aliases['uat'] = array(
'uri' => 'http://default',
'root' => '/var/www/vhosts/uat.www.company.com/current/',
'remote-host' => 'companyc6.company.com',
'remote-user' => 'myusername'
);
# Production #
$aliases['prod'] = array(
'uri' => 'http://default',
'root' => '/var/www/vhosts/www.company.com/current/',
'remote-host' => 'companyc1.company.com',
'remote-user' => 'myusername'
);
SOMENTE Drush tem algum problema ao usar minhas teclas ssh. O que poderia estar impedindo que funcionasse?
sudo
antes drush
e parece que tudo está funcionando como root (uma falha de segurança que eu alertei o administrador do sistema). Parece que este é o problema. Atualmente estou procurando uma solução , enquanto espero para o sysadmin ...
www-data
(por exemplo), suas chaves SSH podem estar erradas / não permitidas / não incluídas na lista de permissões.