ssh2_fingerprint
(PECL ssh2 >= 0.9.0)
ssh2_fingerprint — リモートサーバーのフィンガープリントを処理する
説明
ssh2_fingerprint
( resource
$session
[, int $flags = SSH2_FINGERPRINT_MD5 | SSH2_FINGERPRINT_HEX
] ) : stringアクティブなセッションからサーバーホスト鍵のハッシュを返します。
パラメータ
-
session -
ssh2_connect() のコールによって取得した SSH 接続リンク ID。
-
flags -
flagsはSSH2_FINGERPRINT_MD5、SSH2_FINGERPRINT_HEXで論理和されたSSH2_FINGERPRINT_SHA1、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?");
}
?>