1

サーバーからファイルをダウンロードするためにssh2_connectを使用して構築されたプロジェクトに取り組んでいます。プロジェクトが実行されている本番サーバーは機能しますが、OSX10.8を実行しているMacでssh2_connectを機能させるには問題があります。

次のコマンド:

ssh2_connect("myhost", 22);

次のエラーが発生します。

Error: ssh2_connect(): Error starting up SSH connection(-4): Invalid MAC received

コマンドラインから接続できるので、システム全体のSSHの問題ではないことがわかります。この問題をデバッグまたは解決する方法を知っている人はいますか?事前に感謝し、あなたの子供が大きな頭脳と社会的スキルに恵まれますように:)

更新:以下に投稿されたソリューション

4

2 に答える 2

1

PHPのドキュメントには、3番目の引数を提供する例があります。この投稿の作者http://phing.tigris.org/ds/viewMessage.do?dsForumId=1083&viewType=browseAll&dsMessageId=3022056#messagefocus(Derek Gallo)もまったく同じ問題を抱えており、彼は私を正しい方向に向けることができました。方向。デレクに感謝します。一部のディストリビューションでは追加のパラメーターが必要なようです。結局、phpseclibは特別なモジュールを必要としない純粋なPHPソリューションであるため、コードをphpseclibを使用するように変換しました。

$methods = array(
  'kex' => 'diffie-hellman-group1-sha1',
  'client_to_server' => array(
    'crypt' => '3des-cbc',
    'comp' => 'none'),
  'server_to_client' => array(
    'crypt' => 'aes256-cbc,aes192-cbc,aes128-cbc',
    'comp' => 'none'));

ssh2_connect("myhost", 22, $methods);
于 2013-01-17T16:15:08.300 に答える
1

すべての選択肢を説明している以下のリンクを参照してください

http://kvz.io/blog/2007/07/24/make-ssh-connections-with-php/

于 2013-01-17T05:13:18.293 に答える