Попытка соединить использование ssh2_auth_pubkey_file ()

Я пытаюсь сделать сценарий PHP, который работает на терминале, который соединился бы с удаленным сервером ssh и получил бы файл. это - мой код до сих пор

#!/usr/bin/php -q
<?php
$cwd = dirname(__FILE__).'/';
$filename = 'retrive-this.file';
$host = 'hostip';

$connection = ssh2_connect($host, 22, array('hostkey'=>'ssh-rsa'));
$methods = ssh2_auth_pubkey_file($connection, 'remoteuser',
                                 $cwd.'ssh/id_rsa.pub',
                                 $cwd.'ssh/id_rsa', "it's an inception");
var_dump($methods);

//ssh2_scp_recv($connection, "/remote/server/path/to/$filename", $cwd.$filename);
?>

на данный момент у меня есть проблемы с ssh2_auth_pubkey_file() функция, когда я запускаю скрипт, он возвращает это:

PHP Warning:  ssh2_auth_pubkey_file(): Authentication failed for remoteuser using public key in /home/tonyl/Projects/get-file-ssh.php on line 10
bool(false)

Файлы ключей имеют разрешение -rw-r--r-- (644). Также открытый ключ уже добавляется к авторизованным ключам remoteuser. Я могу к ssh использование команды ssh как нормальное, таким образом, я не думаю, что это - ssh проблема авторизации, но кто знает. Я плохо знаком с ssh и библиотекой ssh2 php.

Я могу соединить использование ssh2_auth_password() если я включаю его в удаленном sshd_config файле, но я не хочу делать это, так как это уменьшает передачу безопасности.

Любые идеи того, что я могу сделать.

9
задан Tony L. 4 August 2010 в 16:11
поделиться