ssh2_connect Подключение к SSH-серверу &reftitle.description; resourcefalsessh2_connect stringhost intport22 arraymethods arraycallbacks Устанавливает соединение с сервером по SSH. После соединения, пользователь должен проверить ключ сервера, используя функцию ssh2_fingerprint, и после этого авторизоваться, используя пароль или открытый ключ. &reftitle.parameters; host port methods Параметр methods может быть ассоциативным массивом, содержащим до четырёх записей, перечисленных ниже. Параметр <parameter>methods</parameter> может быть ассоциативным массивом, содержащим от одного до четырёх параметров Индекс Что обозначает Допустимые значения* kex Список методов обмена ключами, разделённых запятой, в порядке предпочтения. diffie-hellman-group1-sha1, diffie-hellman-group14-sha1, и diffie-hellman-group-exchange-sha1 hostkey Список методов ключей хоста, разделённых запятой, в порядке предпочтения. ssh-rsa и ssh-dss client_to_server Ассоциативный массив, содержащий настройки шифрования, сжатия и метода имитовставки ("message authentication code" или MAC) для сообщений, отправленных клиентом серверу. server_to_client Ассоциативный массив, содержащий настройки шифрования, сжатия и метода имитовставки ("message authentication code" или MAC) для сообщений, отправленных сервером клиенту.
* - Поддерживаемые значения зависят от методов, поддерживаемых базовой библиотекой. Более подробно читайте документацию по libssh2. <parameter>client_to_server</parameter> и <parameter>server_to_client</parameter> могут быть ассоциативными массивами, содержащими любой или же все нижеперечисленные параметры. Индекс Что обозначает Допустимые значения* crypt Список методов шифрования, разделённых запятой, в порядке предпочтения. rijndael-cbc@lysator.liu.se, aes256-cbc, aes192-cbc, aes128-cbc, 3des-cbc, blowfish-cbc, cast128-cbc, arcfour и none** comp Список методов сжатия, разделённых запятой, в порядке предпочтения. zlib и none mac Список методов MAC, разделённых запятой, в порядке предпочтения. hmac-sha1, hmac-sha1-96, hmac-ripemd160, hmac-ripemd160@openssh.com и none**
Метод шифрования "<literal>none</literal>" и MAC В целях безопасности none отключён в базовой библиотеке libssh2, если вы не разрешили его самостоятельно на этапе сборки, используя соответствующие ключи ./configure. Смотрите документацию по базовой библиотеки для более подробной информации.
callbacks callbacks может быть ассоциативным массивом, содержащим любой или же все нижеперечисленные параметры Параметры callback-функции Индекс Что обозначает Прототип ignore Имя функции, вызываемой после получения пакета SSH2_MSG_IGNORE void ignore_cb($message) debug Имя функции, вызываемой после получения пакета SSH2_MSG_DEBUG void debug_cb($message, $language, $always_display) macerror Имя функции, вызываемой если пакет получен, но MAC не удался. Если callback-функция вернёт &true;, несовпадение будет проигнорировано, в обратном случае соединение будет оборвано. bool macerror_cb($packet) disconnect Имя функции, вызываемой после получения пакета SSH2_MSG_DISCONNECT void disconnect_cb($reason, $message, $language)
&reftitle.returnvalues; Возвращает ресурс в случае успешного выполнения или &false; в случае возникновения ошибки. &reftitle.examples; Пример <function>ssh2_connect</function> Откроем соединение, принудительно используя такие настройки: 3des-cbc при отправке пакетов, шифр aes любой силы при получении пакетов, без сжатия в обоих направлениях и обмен ключами 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('Не удалось установить соединение'); ?> ]]> &reftitle.seealso; ssh2_fingerprint ssh2_auth_none ssh2_auth_password ssh2_auth_pubkey_file ssh2_disconnect