(PECL ssh2 >= 0.9.0)
ssh2_fingerprint — Получение отпечатка удаленного сервера
$session
[, int $flags
= SSH2_FINGERPRINT_MD5 | SSH2_FINGERPRINT_HEX
] )Возвращает хэш серверного ключа из активной сессии.
session
Идентификатор соединения SSH, полученный из ssh2_connect().
flags
flags
может быть
SSH2_FINGERPRINT_MD5
или
SSH2_FINGERPRINT_SHA1
, побитово слеженным (OR) с
SSH2_FINGERPRINT_HEX
или
SSH2_FINGERPRINT_RAW
.
Возвращает хэш серверного ключа в виде строки.
Пример #1 Сверка отпечатка с известным значением
<?php
$known_host = '6F89C2F0A719B30CC38ABDF90755F2E4';
$connection = ssh2_connect('shell.example.com', 22);
$fingerprint = ssh2_fingerprint($connection,
SSH2_FINGERPRINT_MD5 | SSH2_FINGERPRINT_HEX);
if ($fingerprint != $known_host) {
die("HOSTKEY MISMATCH!\n" .
"Possible Man-In-The-Middle Attack?");
}
?>