ssh2_connect

(PECL ssh2 >= 0.9.0)

ssh2_connectBir SSH sunucusuna bağlanır

Açıklama

ssh2_connect(
    string$konak,
    int$port = 22,
    array$yöntemler = ?,
    array$geriçağırımlar = ?
): resource|false

Bir uzak SSH sunucusuna bağlanıp bir bağlantı özkaynağı döndürür.

Bağlantı sağlanır sağlanmaz, istemcinin ssh2_fingerprint() işlevini kullanarak konak anahtarını ve ardından parola veya genel anahtarla kullanıcı kimliğini doğrulaması gerekir.

Bağımsız Değişkenler

konak

port

yöntemler

Aşağıda açıklanan dört bağımsız değişkenden bazılarını içeren bir ilişkisel dizi.

Yöntemler
İndisAnlamıDesteklenen değerler*
kex Anahtar müzakere yöntemlerinin listesi; tercih sırasına göre dizilmiş virgül ayraçlı bir listedir. diffie-hellman-group1-sha1, diffie-hellman-group14-sha1 ve diffie-hellman-group-exchange-sha1
hostkey Müzakere edilecek konak anahtarı yöntemlerinin listesi; tercih sırasına göre dizilmiş bir listedir. ssh-rsa ve ssh-dss
client_to_server İstemciden sunucuya gönderilen iletiler için şifreleme, sıkıştırma ve ileti kimlik doğrulaması kodu (MAC) ile igili yöntem tercihlerini içeren bir ilişkisel dizi.  
server_to_client Sunucudan istemciye gönderilen iletiler için şifreleme, sıkıştırma ve ileti kimlik doğrulaması kodu (MAC) ile igili yöntem tercihlerini içeren bir ilişkisel dizi.  

* - Desteklenen değerler sisteminizdeki kütüphaneye bağlıdır. Daha ayrıntılı bilgi için » libssh2 belgelerine bakınız.

client_to_server ve server_to_client aşağıdaki bağımsız değişkenlerin tamamını veya bir kısmını içeren bir ilişkisel dizidir.
İndisAnlamıDesteklenen değerler*
cryptMüzakere edilecek şifreleme yöntemleri; tercih sırasına göre dizilmiş virgül ayraçlı bir listedir.rijndael-cbc@lysator.liu.se, aes256-cbc, aes192-cbc, aes128-cbc, 3des-cbc, blowfish-cbc, cast128-cbc, arcfour ve none**
compMüzakere edilecek sıkıştırma yöntemleri; tercih sırasına göre dizilmiş virgül ayraçlı bir listedir.zlib ve none
macMüzakere edilecek MAC yöntemleri; tercih sırasına göre dizilmiş virgül ayraçlı bir listedir.hmac-sha1, hmac-sha1-96, hmac-ripemd160, hmac-ripemd160@openssh.com ve none**

Bilginize: Crypt ve MAC yöntemi "none"

Güvenlik saikiyle, none değeri » libssh2 kütüphanesi tarafından iptal edilmiştir. Bu değeri etkin kılmak isterseniz kütüphaneyi derlerken uygun ./configure seçeneğini kullanmanız gerekir. Daha fazla bilgi için kütüphane belgelerine bakınız.

geriçağırımlar

Aşağıdaki bağımsız değişkenleri içeren bir ilişkisel dizidir.

Geriçağırım bağımsız değişkenleri
İndisAnlamıİşlev bildirimi
ignore Bir SSH2_MSG_IGNORE paketi alındığında çağrılacak işlevin ismi. void ignore_cb($ileti)
debug Bir SSH2_MSG_DEBUG paketi alındığında çağrılacak işlevin ismi. void debug_cb($ileti, $dil, $hep_göster)
macerror Bir paket alındığında ileti kimlik doğrulaması başarısız olduğunda çağrılacak işlevin ismi. Eğer geri çağırım işlevi true döndürürse uyuşmazlık görmezden gelinir, yoksa bağlantı sonlandırılır. bool macerror_cb($packet)
disconnect Bir SSH2_MSG_DISCONNECT paketi alındığında çağrılacak işlevin ismi. void disconnect_cb($sebep, $ileti, $dil)

Dönen Değerler

Başarı durumunda bir özkaynak yoksa false döner.

Örnekler

Örnek 1 - ssh2_connect() örneği

Paket gönderirken 3des-cbc, paket alırken güçlü aes şifremesi için zorlayan, hiçbir yönde sıkıştırma yapılmayan ve Group1 anahtar değişim yöntemini kullanan bir bağlantı açalım.

<?php

function my_ssh_disconnect($ebep, $ileti, $dil) {
printf("Sunucu bağlantıyı kesti; sebep kodu ve ileti: [%d] %s\n",
$sebep, $ileti);
}

$yontemler = 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'));

$islevler = array('disconnect' => 'my_ssh_disconnect');

$baglanti = ssh2_connect('shell.example.com', 22, $yontemler, $islevler);
if (!
$baglanti) die('Bağlantı sağlanamadı');
?>

Ayrıca Bakınız

To Top