Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

ssh2_auth_pubkey_file(3) [php man page]

SSH2_AUTH_PUBKEY_FILE(3)						 1						  SSH2_AUTH_PUBKEY_FILE(3)

ssh2_auth_pubkey_file - Authenticate using a public key

SYNOPSIS
bool ssh2_auth_pubkey_file (resource $session, string $username, string $pubkeyfile, string $privkeyfile, [string $passphrase]) DESCRIPTION
Authenticate using a public key read from a file. PARAMETERS
o $session - An SSH connection link identifier, obtained from a call to ssh2_connect(3). o $username - o $pubkeyfile - The public key file needs to be in OpenSSH's format. It should look something like: ssh-rsa AAAAB3NzaC1yc2EAAA....NX6sqSnHA8= rsa-key-20121110 o $privkeyfile - o $passphrase - If $privkeyfile is encrypted (which it should be), the $passphrase must be provided. RETURN VALUES
Returns TRUE on success or FALSE on failure. EXAMPLES
Example #1 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 "; } else { die('Public Key Authentication Failed'); } ?> NOTES
Note 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(3) in order to complete authentication. PHP Documentation Group SSH2_AUTH_PUBKEY_FILE(3)

Check Out this Related Man Page

SSH2_PUBLICKEY_LIST(3)							 1						    SSH2_PUBLICKEY_LIST(3)

ssh2_publickey_list - List currently authorized publickeys

SYNOPSIS
array ssh2_publickey_list (resource $pkey) DESCRIPTION
List currently authorized publickeys. PARAMETERS
o $pkey - Publickey Subsystem resource RETURN VALUES
Returns a numerically indexed array of keys, each of which is an associative array containing: name, blob, and attrs elements. Publickey elements +----------+---------------------------------------------------+ |Array Key | | | | | | | Meaning | | | | +----------+---------------------------------------------------+ | name | | | | | | | Name of algorithm used by this publickey, for | | | example: ssh-dss or ssh-rsa. | | | | | blob | | | | | | | Publickey blob as raw binary data. | | | | | attrs | | | | | | | Attributes assigned to this publickey. The most | | | common attribute, and the only one supported by | | | publickey version 1 servers, is comment, which | | | may be any freeform string. | | | | +----------+---------------------------------------------------+ EXAMPLES
Example #1 Listing authorized keys with ssh2_publickey_list(3) <?php $ssh2 = ssh2_connect('shell.example.com', 22); ssh2_auth_password($ssh2, 'jdoe', 'secret'); $pkey = ssh2_publickey_init($ssh2); $list = ssh2_publickey_list($pkey); foreach($list as $key) { echo "Key: {$key['name']} "; echo "Blob: " . chunk_split(base64_encode($key['blob']), 40, " ") . " "; echo "Comment: {$key['attrs']['comment']} "; } ?> The above example will output: Key: ssh-rsa Blob: AAAAB3NzaC1yc2EAAAABIwAAAIEA5HVt6VqSGd5P TrLRdjNONxXH1tVFGn0Bd26BF0aCP9qyJRlvdJ3j 4WBeX4ZmrveGrjMgkseSYc4xZ26sDHwfL351xjza LpipuBGRrw17mWVBhuCExo476ri5tQFzbTc54VE HYckxQ16CjSTibI5X69GmnYC9PNqEYq/1TP+HF10 Comment: John's Key Key: ssh-rsa Blob: AAAAB3NzaHVt6VqSGd5C1yc2EAAAABIwA232dnJA AIEA5HVt6VqSGd5PTrLRdjNONxX/1TP+HF1HVt6V qSGd50H1tVFGn0BB3NzaC1yc2EAd26BF0aCP9qyJ RlvdJ3j4WBeX4ZmrveGrjMgkseSYc4xZ26HVt6Vq SGd5sDHwfL351xjzaLpipuBGB3NzaC1yc2EA/1T Comment: Alice's Key NOTES
Note The public key subsystem is used for managing public keys on a server to which the client is already authenticated. To authenticate to a remote system using public key authentication, use the ssh2_auth_pubkey_file(3) function instead. SEE ALSO
ssh2_publickey_init(3), ssh2_publickey_add(3), ssh2_publickey_remove(3). PHP Documentation Group SSH2_PUBLICKEY_LIST(3)
Man Page