ssh2_connectConnexion à un serveur SSH
&reftitle.description;
resourcessh2_connectstringhostintport22arraymethodsarraycallbacks
Établit une connexion à un serveur SSH distant.
Une fois connecté, le client doit vérifier la clé hôte du serveur
en utilisant la fonction ssh2_fingerprint,
puis s'identifier en utilisant soit un mot de passe, soit une clé publique.
&reftitle.parameters;
hostportmethodsmethods doit être un tableau associatif d'au plus
quatre paramètres, comme décrit ci-dessous. methods
peut contenir n'importe quel ou tous les paramètres suivants.
Options de connexion SSHIndexSignificationValeurs supportées *kex
La liste des méthodes d'échange à annoncer, séparées par une virgule,
par ordre de préférence.
diffie-hellman-group1-sha1,
diffie-hellman-group14-sha1, et
diffie-hellman-group-exchange-sha1hostkey
La liste des méthodes de clés d'hôte à annoncer, séparées par
une virgule, par ordre de préférence.
ssh-rsa et
ssh-dssclient_to_server
Tableau associatif contenant les codes des méthodes de chiffrement,
de compression et de messages d'identification (MAC) préférés
pour l'envoi des messages depuis le client vers le serveur.
server_to_client
Tableau associatif contenant les codes des méthodes de chiffrement,
de compression et de messages d'identification (MAC) préférés
pour l'envoi des messages depuis le serveur vers le client.
* - Les valeurs supportées sont dépendantes des méthodes supportées par
la bibliothèque. Voir la documentation libssh2
pour plus d'informations.
client_to_server et
server_to_client doivent être un tableau associatif
avec n'importe quel ou tous les paramètres suivants.
IndexSignificationValeurs supportées *crypt
Liste des méthodes de chiffrement à annoncer, séparées par une virgule,
par ordre de préférence.
rijndael-cbc@lysator.liu.se,
aes256-cbc,
aes192-cbc,
aes128-cbc,
3des-cbc,
blowfish-cbc,
cast128-cbc,
arcfour, et
none**comp
Liste des méthodes de compression à annoncer, séparées par une virgule,
par ordre de préférence.
zlib et
nonemac
Liste des méthodes MAC à annoncer, séparées par une virgule,
par ordre de préférence.
hmac-sha1,
hmac-sha1-96,
hmac-ripemd160,
hmac-ripemd160@openssh.com, et
none**
Chiffrement et méthode MAC "none"
Pour des raisons de sécurité, none est désactivé par la
bibliothèque libssh2 à moins qu'il soit
activé explicitement durant la compilation en utilisant les options
appropriées du ./configure. Voir la documentation sur la bibliothèque
pour plus d'informations.
callbackscallbackss doit être un tableau associatif
contenant n'importe quel ou tous les paramètres suivants.
Paramètres de rappel
IndexSignificationPrototypeignore
Nom de la fonction à appeler lorsqu'un paquet
SSH2_MSG_IGNORE est reçu
void ignore_cb($message)debug
Nom de la fonction à appeler lorsqu'un paquet
SSH2_MSG_DEBUG est reçu
void debug_cb($message, $language, $always_display)macerror
Nom de la fonction à appeler lorsqu'un paquet est reçu mais que
le code message d'identification échoue. Si le la fonction de rappel
retourne &true;, l'erreur sera ignorée, sinon, la connexion se terminera.
bool macerror_cb($packet)disconnect
Nom de la fonction à appeler lorsqu'un paquet
SSH2_MSG_DISCONNECT est reçu
void disconnect_cb($reason, $message, $language)
&reftitle.returnvalues;
Retourne une ressource en cas de succès, ou &false; si une erreur survient.
&reftitle.examples;
Exemple avec ssh2_connect
Ouverture d'une connexion forçant 3des-cbc lors de l'envoi de paquets,
n'importe quel chiffrement AES lors de la réception de paquets,
aucune compression dans les deux directions, et un échange de clés Group1.
'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('Échec de la connexion');
?>
]]>
&reftitle.seealso;
ssh2_fingerprintssh2_auth_nonessh2_auth_passwordssh2_auth_pubkey_filessh2_disconnect