it-swarm-ja.com

他のすべての場合にsshが機能するときに、リモートdrushコマンドがsshエラーで失敗する原因は何ですか?

3つのサーバー(dev、UAT、&production)のすべてに公開および秘密のssh鍵を持っているので、リモートまたは相互にログインできます。すべてがsshおよびscpコマンドに対して完全に機能しています。

ただし、Drushでは機能しませんdrush @dev statusたとえば、UATから、システムが「承認されたユーザーのみが使用する何とか何とか何とか」というサーバーのバナーを取得し、次に私は得る

権限が拒否されました(公開キー、パスワード、キーボードインタラクティブ)。

俺の ~/.drush/aliases.drushrc.phpファイルに含まれるもの:

# 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'
);

[〜#〜] only [〜#〜]Drushでsshキーを使用すると問題が発生します。何が機能しないのでしょうか?

10
iconoclast

次の行をdrushrc.phpファイルに追加します。

$options['ssh-options'] = '-o PasswordAuthentication=no -i /home/YOURUSERNAME/.ssh/id_rsa';

これにより、Drushはリモートシステムを呼び出すときはいつでもこれらのオプションをsshに渡すため、引き続きSudoを介してDrushを呼び出し、ログインユーザーの資格情報を使用できます。

19
greg_1_anderson

ここをチェックしてください: DrushをApacheとして実行する方法

その音で、サーバー上のDrushの所有者/グループを変更する必要があります!

1
Chapabu