PHP.nl

ssh2_auth_pubkey_file

ssh2_auth_pubkey_file

Authenticate using a public key read from a file

bool **ssh2_auth_pubkey_file** resource $session string $username string $pubkeyfile string $privkeyfile string $passphrase

Authenticate using a public key read from a file.

session An SSH connection link identifier, obtained from a call to . ssh2_connect

usernameName of the user to authenticate as on the remote server.

pubkeyfileThe public key file needs to be in OpenSSH's format. It should look something like:

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

privkeyfile

passphrase If is encrypted (which it should be), the must be provided. privkeyfile``passphrase

return.success

Voorbeeld: Authentication using a public key

<?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');
}
?>

Opmerking: > 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 in order to complete authentication. ssh2_auth_password

ssh2_auth_pubkey