ssh2_auth_pubkey
ssh2_auth_pubkey
Authenticate using a public key in a variable
bool **ssh2_auth_pubkey** resource $session string $username string $pubkey string $privkey string $passphrase
Authenticate using a public key in a variable.
session
An SSH connection link identifier, obtained from a call to
.
ssh2_connect
usernameName of the user to authenticate as on the remote server.
pubkey
Public key in OpenSSH's format. It should look something like:
`ssh-rsa AAAAB3NzaC1yc2EAAA....NX6sqSnHA8= rsa-key-20121110`
privkey
Private OpenSSH key. It should begin with:
`-----BEGIN RSA PRIVATE KEY-----`
passphrase
If is encrypted (which it should
be), the must be provided.
privkey``passphrase
return.success
Voorbeeld: Authentication using a public key
<?php
$connection = ssh2_connect('shell.example.com', 22, array('hostkey'=>'ssh-rsa'));
$publicKey = file_get_contents('/home/username/.ssh/id_rsa.pub');
$privateKey = file_get_contents('/home/username/.ssh/id_rsa');
if (ssh2_auth_pubkey($connection, 'username',
$publicKey,
$privateKey, '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_file