SSH2 Функции
PHP Manual

ssh2_auth_pubkey_file

(PECL ssh2 >= 0.9.0)

ssh2_auth_pubkey_fileАутентификация с публичным ключем

Описание

bool ssh2_auth_pubkey_file ( resource $session , string $username , string $pubkeyfile , string $privkeyfile [, string $passphrase ] )

Аутентификация с публичным ключем, сохраненном в файле.

Список параметров

session

Идентификатор соединения SSH, полученный из ssh2_connect().

username

pubkeyfile

Публичный ключ в формате OpenSSH. Должен выглядеть похоже на:

ssh-rsa AAAAB3NzaC1yc2EAAA....NX6sqSnHA8= rsa-key-20121110

privkeyfile

passphrase

Если privkeyfile зашифрован (как должен бы), то параметр passphrase необходим.

Возвращаемые значения

Возвращает TRUE в случае успешного завершения или FALSE в случае возникновения ошибки.

Примеры

Пример #1 Аутентификация с публичным ключем

<?php
$connection 
ssh2_connect('shell.example.com'22, array('hostkey'=>'ssh-rsa'));

if (
ssh2_auth_pubkey_file($connection'username',
                          
'/home/username/.ssh/id_rsa.pub',
                          
'/home/username/.ssh/id_rsa''secret')) {
  echo 
"Public Key Authentication Successful\n";
} else {
  die(
'Public Key Authentication Failed');
}
?>

Примечания

Замечание:

The underlying libssh library doesn't support partial auths very cleanly That is, if you need to supply both a public key and a password it will appear as if this function has failed. In this particular case a failure from this call may just mean that auth hasn't been completed yet. You would need to ignore this failure and continue on and call ssh2_auth_password() in order to complete authentication.


SSH2 Функции
PHP Manual