if you're trying to connect to an ssh server in an environment where the ssh2 extension cannot be installed this pure-php implementation may be helpful:
http://phpseclib.sourceforge.net/documentation/net.html
Secure Shell2
- 導入
- インストール/設定
- 定義済み定数
- SSH2 関数
- ssh2_auth_hostbased_file — ホスト公開鍵を使用して認証を行う
- ssh2_auth_none — "none" として認証する
- ssh2_auth_password — SSH 上でプレーンなパスワードを使用した認証を行う
- ssh2_auth_pubkey_file — 公開鍵を使用した認証を行う
- ssh2_connect — SSH サーバに接続する
- ssh2_exec — リモートサーバ上でコマンドを実行する
- ssh2_fetch_stream — 拡張データストリームを取得する
- ssh2_fingerprint — リモートサーバのフィンガープリントを処理する
- ssh2_methods_negotiated — ネゴシエートされたメソッドのリストを返す
- ssh2_publickey_add — 認証済み公開鍵を追加する
- ssh2_publickey_init — 公開鍵サブシステムを初期化する
- ssh2_publickey_list — 現在認証済みの公開鍵の一覧を表示する
- ssh2_publickey_remove — 認証済み公開鍵を取り除く
- ssh2_scp_recv — SCP 経由でファイルを要求する
- ssh2_scp_send — SCP 経由でファイルを送信する
- ssh2_sftp_lstat — シンボリックリンクの情報を取得する
- ssh2_sftp_mkdir — ディレクトリを作成する
- ssh2_sftp_readlink — シンボリックリンクのターゲットを返す
- ssh2_sftp_realpath — 指定されたパス文字列の実パスを解決する
- ssh2_sftp_rename — リモートファイルを改名する
- ssh2_sftp_rmdir — ディレクトリを削除する
- ssh2_sftp_stat — リモートファイルシステム上のファイルの情報を取得する
- ssh2_sftp_symlink — シンボリックリンクを作成する
- ssh2_sftp_unlink — ファイルを削除する
- ssh2_sftp — SFTP サブシステムを初期化する
- ssh2_shell — 対話式のシェルを要求する
- ssh2_tunnel — リモートサーバを経由するトンネルをオープンする
SSH2
zelnaga+php at gmail dot com
25-Feb-2009 08:45
25-Feb-2009 08:45
steven at salvania dot be
08-Jan-2009 10:09
08-Jan-2009 10:09
For windows users only:
The PECL ssh2 extension is not able to use (at least) the pubkey authentication correctly, as well as it will crash at the point where the connection is closed because of the wrong functions being used under windows.
Thanks to some patches and comments from other users I was able to compile this extension and you can download it from:
http://www.salvania.be/tmp/php_ssh2__528.rar
This works (at least) with PHP 5.2.8. It is linked against libSSH2 v1.0 and OpenSSL v0.9.8i.
Have fun!
codeslinger at compsalot dot com
06-Aug-2008 02:36
06-Aug-2008 02:36
if you are trying to build this PECL extension because your distro does not already provide it.... then you need to apply a patch or else it won't "make". The problem is that libssh2 has changed the name and value of a conditional compile flag. See this bug for the fix.
http://pecl.php.net/bugs/bug.php?id=11779
P.S. if you are using Ubuntu 8.04 or earlier, the package request has already been filed.
tom at r dot je
03-Jul-2008 09:38
03-Jul-2008 09:38
As an alternative to using SSH2, it's easier to mount a remote file system ( http://ubuntu.wordpress.com/2005/10/28/
how-to-mount-a-remote-ssh-filesystem-using-sshfs/ ) and use the standard php copy() unlink() etc files.
