ssh2_connect
(PECL ssh2 >= 0.9.0)
ssh2_connect — Connect to an SSH server
Description
$host
[, int $port
= 22
[, array $methods
[, array $callbacks
]]] ) : resourceEstablish 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.
Parameters
-
host
-
-
port
-
-
methods
-
methods
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.Index Meaning Supported 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-sha1 hostkey List of hostkey methods to advertise, comma separated in order of preference. ssh-rsa and ssh-dss client_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 server to client. * - Supported Values are dependent on methods supported by underlying library. See » libssh2 documentation for additional information.
client_to_server
andserver_to_client
may be an associative array with any or all of the following parameters.Index Meaning Supported Values* crypt List 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** comp List of compression methods to advertise, comma separated in order of preference. zlib and none mac List of MAC methods to advertise, comma separated in order of preference. hmac-sha1, hmac-sha1-96, hmac-ripemd160, hmac-ripemd160@openssh.com, and none** Note: 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.
-
callbacks
-
callbacks
may be an associative array with any or all of the following parameters.Callbacks parameters Index Meaning Prototype ignore Name of function to call when an SSH2_MSG_IGNORE
packet is receivedvoid ignore_cb($message) debug Name of function to call when an SSH2_MSG_DEBUG
packet is receivedvoid 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 receivedvoid disconnect_cb($reason, $message, $language)
Examples
Example #1 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.
<?php
/* Notify the user if the server terminates the connection */
function my_ssh_disconnect($reason, $message, $language) {
printf("Server disconnected with reason code [%d] and message: %s\n",
$reason, $message);
}
$methods = array(
'kex' => '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');
?>
See Also
- ssh2_fingerprint() - Retrieve fingerprint of remote server
- ssh2_auth_none() - Authenticate as "none"
- ssh2_auth_password() - Authenticate over SSH using a plain password
- ssh2_auth_pubkey_file() - Authenticate using a public key
- ssh2_disconnect() - Close a connection to a remote SSH server
Vertaling niet beschikbaar
De PHP-handleiding is nog niet in het Nederlands vertaald, dus het scherm is in het Engels. Als u wilt, kunt u het ook in het Frans of in het Duits raadplegen.
Als je de moed voelt, kun je je vertaling aanbieden ;-)
Nederlandse vertaling
U hebt gevraagd om deze site in het Nederlands te bezoeken. Voor nu wordt alleen de interface vertaald, maar nog niet alle inhoud.Als je me wilt helpen met vertalingen, is je bijdrage welkom. Het enige dat u hoeft te doen, is u op de site registreren en mij een bericht sturen waarin u wordt gevraagd om u toe te voegen aan de groep vertalers, zodat u de gewenste pagina's kunt vertalen. Een link onderaan elke vertaalde pagina geeft aan dat u de vertaler bent en heeft een link naar uw profiel.
Bij voorbaat dank.
Document heeft de 30/01/2003 gemaakt, de laatste keer de 26/10/2018 gewijzigd
Bron van het afgedrukte document:https://www.gaudry.be/nl/php-rf-ssh2-connect.html
De infobrol is een persoonlijke site waarvan de inhoud uitsluitend mijn verantwoordelijkheid is. De tekst is beschikbaar onder CreativeCommons-licentie (BY-NC-SA). Meer info op de gebruiksvoorwaarden en de auteur.
Referenties
Deze verwijzingen en links verwijzen naar documenten die geraadpleegd zijn tijdens het schrijven van deze pagina, of die aanvullende informatie kunnen geven, maar de auteurs van deze bronnen kunnen niet verantwoordelijk worden gehouden voor de inhoud van deze pagina.
De auteur Deze site is als enige verantwoordelijk voor de manier waarop de verschillende concepten, en de vrijheden die met de referentiewerken worden genomen, hier worden gepresenteerd. Vergeet niet dat u meerdere broninformatie moet doorgeven om het risico op fouten te verkleinen.