ssh2_auth_pubkey_file関数を用いてサーバーにファイルのアップロードをしたいと考えております。
そこで以下を参照して書いて見ましたが、うまく動きません。
<?php $host = "ホストIP"; $port = "ポート番号"; $connection = ssh2_connect($host, $port, array('hostkey'=>'ssh-rsa')); if (!ssh2_auth_pubkey_file($connection, 'username', '/Users/username/.ssh/id_rsa.pub', '/Users/username/.ssh/id_rsa', 'passphrase')) { die('認証失敗'); } echo "認証成功" . PHP_EOL;
$connectionの接続ができていることは確認しましたが、認証失敗になってしまいます。
原因がわからず困っています。
公開鍵認証の仕組みをいまいち理解できていないということも大きいと思います。
また、ssh2_auth_pubkey_fileの引数にある公開鍵と認証鍵のパスですが、サーバーにあるphpファイルにこちらのPCの公開鍵と秘密鍵のパスを書くので正しいのか?
でもサーバー側には公開鍵しか(当たり前ですが)アップロードしてませんし...
など色々考えているうちに訳がわからなくなってしまいました。
よろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。