関数・クラス解説
ssh2_connect
version:PECL ssh2 >= 0.9.0 (公式)SSH サーバーに接続する
公式リファレンス
書式
ssh2_connect ( string $host [, int $port = 22 [, array $methods [, array $callbacks ]]] ) : resource
説明
リモートの SSH サーバーとの接続を確立します。
一度接続すると、クライアントは ssh2_fingerprint() を使用してサーバーのホスト鍵を検証し、 パスワードもしくは公開鍵を使用して認証します。
パラメータ
- host
- port
- methods
- methods は以下に示された4つのパラメータを持つ連想配列です。
methods は以下のパラメータのいくつかあるいは全てを含む連想配列 インデックス 意味 サポートする値* kex 通知する鍵交換メソッドのリスト。優先する順にカンマ区切りにする。 diffie-hellman-group1-sha1、 diffie-hellman-group14-sha1 および diffie-hellman-group-exchange-sha1 hostkey 通知するホスト鍵メソッドのリスト。優先する順にカンマ区切りにする。 ssh-rsa および ssh-dss client_to_server クライアントからサーバーに送信されるメッセージのために優先する暗号化、 圧縮、メッセージ認証コード (MAC) メソッドを含む連想配列。 server_to_client サーバーからクライアントに送信されるメッセージのために優先する暗号化、 圧縮、メッセージ認証コード (MAC) メソッドを含む連想配列。 client_to_server と server_to_client は以下のパラメータのいくつかあるいは全てを含む連想配列 インデックス 意味 サポートする値* 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** 注意: 暗号化、MAC メソッドの "none" セキュリティ上の問題で、none は ビルド時に適切な ./configure オプションを使用して明示的に有効にしない限り、構成している » libssh2 によって無効にされます。 詳細は構成するライブラリのドキュメントを参照ください。
- callbacks
- callbacks は以下のパラメータのいくつかあるいは全てを含む連想配列
コールバックパラメータ インデックス 意味 プロトタイプ ignore SSH2_MSG_IGNORE パケットを受信したときにコールする関数名 void ignore_cb($message) debug SSH2_MSG_DEBUG パケットを受信したときにコールする関数名 void debug_cb($message, $language, $always_display) macerror パケットを受信したがメッセージ認証コードに失敗した場合にコールされる関数名。 もしコールバックが TRUE を返す場合、不整合は無視されます。 そうでない場合、接続は終了します。 bool macerror_cb($packet) disconnect SSH2_MSG_DISCONNECT パケットを受信したときにコールする関数名 void disconnect_cb($reason, $message, $language)
返値
成功した場合にリソース、エラー時に FALSE を返します。
サンプル
例1 ssh2_connect() の例
パケット送信時に 3des-cbc 、 パケット受信時に任意の強度の aes cipher、 両方向で無圧縮、 Group1 での鍵交換という設定で強制的に接続をオープンします。
/* もしサーバーが接続を終了した場合、ユーザーに通知する */
function my_ssh_disconnect($reason, $message, $language) {
printf("Server disconnected with reason code [%d] and message: %s\n",
$reason, $message);
}
$methods = 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'));
$callbacks = array('disconnect' => 'my_ssh_disconnect');
$connection = ssh2_connect('shell.example.com', 22, $methods, $callbacks);
if (!$connection) die('Connection failed');
参考
ワード検索
※入力キーワードが、関数名・説明文・タグに含まれるものを検索関数名アルファベット別
最終更新一覧
●stristr
大文字小文字を区別せず文字列を検索し、ヒット箇所以降(あるいは以前)の文字列を返却
●stripslashes
バックスラッシュでエスケープされた文字列から、バックスラッシュを取り除く
●stripos
大文字小文字を区別せずに文字列が最初に現れる位置を取得する
●stripcslashes
addcslashes() でクォートされた文字列をアンクォートする
●strip_tags
文字列から HTML と PHP のタグを除去して返却
●strcspn
指定した文字が最初に現れる位置を調べる
●strcoll
ロケールに基づいて2つの文字列を比較し同じか(あるいは大小)を判定する
●strcmp
2つの文字列を比較し同じか(あるいは大小)を判定する
●strchr
strstr() のエイリアス
●strcasecmp
2つの文字列を比較(大文字小文字を区別せず同じとみなす)
カテゴリー一覧
PHP の振る舞いの変更
音声フォーマットの操作
認証サービス
コマンドライン関連
圧縮およびアーカイブ
暗号
データベース関連
日付および時刻関連
ファイルシステム
自然言語および文字エンコーディング
画像処理および作成
メール関連
数学
テキスト以外の MIME 型
プロセス制御
その他の基本モジュール
その他のサービス
検索エンジン用の拡張モジュール
サーバー固有のモジュール
セッション関連
テキスト処理
変数・データ型関連
ウェブサービス
Windows 用のモジュール
XML 操作
GUI用の拡張モジュール