ssh2_connectConnect to an SSH server
&reftitle.description;
resourcessh2_connectstringhostintportarraymethodsarraycallbacks
Establish a connection to a remote SSH server.
Once connected, the client should verify the server's hostkey using
ssh2_fingerprint, then authenticate using either
password or public key.
&reftitle.parameters;
hostportmethodsmethods may be an associative array with up to four parameters
as described below.
methods may be an associative array
with any or all of the following parameters.IndexMeaningSupported Values*kex
List of key exchange methods to advertise, comma separated
in order of preference.
diffie-hellman-group1-sha1,
diffie-hellman-group14-sha1, and
diffie-hellman-group-exchange-sha1hostkey
List of hostkey methods to advertise, come separated
in order of preference.
ssh-rsa and
ssh-dssclient_to_server
Associative array containing crypt, compression, and
message authentication code (MAC) method preferences
for messages sent from client to server.
server_to_client
Associative array containing crypt, compression, and
message authentication code (MAC) method preferences
for messages sent from client to server.
* - Supported Values are dependent on methods supported by underlying library.
See libssh2 documentation for additional
information.
client_to_server and
server_to_client may be an associative array
with any or all of the following parameters.
IndexMeaningSupported Values*cryptList of crypto methods to advertise, comma separated
in order of preference.rijndael-cbc@lysator.liu.se,
aes256-cbc,
aes192-cbc,
aes128-cbc,
3des-cbc,
blowfish-cbc,
cast128-cbc,
arcfour, and
none**compList of compression methods to advertise, comma separated
in order of preference.zlib and
nonemacList of MAC methods to advertise, come separated
in order of preference.hmac-sha1,
hmac-sha1-96,
hmac-ripemd160,
hmac-ripemd160@openssh.com, and
none**
Crypt and MAC method "none"
For security reasons, none is disabled by the underlying
libssh2 library unless explicitly enabled
during build time by using the appropriate ./configure options. See documentation
for the underlying library for more information.
callbackscallbacks may be an associative array with any
or all of the following parameters.
Callbacks parameters
IndexMeaningPrototypeignore
Name of function to call when an
SSH2_MSG_IGNORE packet is received
void ignore_cb($message)debug
Name of function to call when an
SSH2_MSG_DEBUG packet is received
void debug_cb($message, $language, $always_display)macerror
Name of function to call when a packet is received but the
message authentication code failed. If the callback returns
&true;, the mismatch will be ignored, otherwise the connection
will be terminated.
bool macerror_cb($packet)disconnect
Name of function to call when an
SSH2_MSG_DISCONNECT packet is received
void disconnect_cb($reason, $message, $language)
&reftitle.returnvalues;
Returns a resource on success, or &false; on error.
&reftitle.examples;
ssh2_connect example
Open a connection forcing 3des-cbc when sending packets, any strength
aes cipher when receiving packets, no compression in either direction,
and Group1 key exchange.
'diffie-hellman-group1-sha1',
'client_to_server' => array(
'crypt' => '3des-cbc',
'comp' => 'none'),
'server_to_client' => array(
'crypt' => 'aes256-cbc,aes192-cbc,aes128-cbc',
'comp' => 'none'));
$callbacks = array('disconnect' => 'my_ssh_disconnect');
$connection = ssh2_connect('shell.example.com', 22, $methods, $callbacks);
if (!$connection) die('Connection failed');
?>
]]>
&reftitle.seealso;
ssh2_fingerprintssh2_auth_nonessh2_auth_passwordssh2_auth_pubkey_file