CXXVIII. Secure Shell2 Functions

简介

Bindings to the libssh2 library which provide access to resources (shell, remote exec, tunneling, file transfer) on a remote machine using a secure cryptographic transport.

安装

Windows binaries may be found at http://snaps.php.net/ . To install, download php_ssh2.dll to the folder specified by your php.ini file's extension_dir directive. Enable it by adding extension=php_ssh2.dll to your php.ini and restarting your webserver.

extension_dir=c:/php5/exts/
extension=php_ssh2.dll

Linux, BSD, and other *nix variants can be compiled using the following steps:

  • Download and install OpenSSL . If you install OpenSSL via your distribution's packaging system be sure to install the development libraries as well. This will typically be a package named openssl-dev , openssl_devel , or some variation thereof.

  • Download and install libssh2 . Typically this means executing the following command from the libssh2 source tree. ./configure && make all install .

  • Run the pear installer for PECL/ssh2: pear install ssh2

  • Copy ssh2.so from the directory indicated by the build process to the location specified in your php.ini file under extension_dir .

  • Add extension=ssh2.so to your php.ini

  • Restart your webserver to reload your php.ini settings.

Development Versions: There are currently no stable versions of PECL/ssh2, to force installation of the beta version of PECL/ssh2 execute: pear install ssh2- beta

Compiling PECL/ssh2 without using the PEAR command: Rather than using pear install ssh2 to automatically download and install PECL/ssh2, you may download the tarball from PECL . From the root of the unpacked tarball, run: phpize && ./configure --with-ssh2 && make to generate ssh2.so . Once built, continue the installation from step 4 above.

进一步信息例如新版本,下载,源程序,维护者信息以及更新日志可以在此找到: http://pecl.php.net/package/ssh2 .

注: You will need version 0.4 or greater of the libssh2 library (possibly higher, see release notes).

预定义常量

以下常量由本扩展模块定义,因此只有在本扩展模块被编译到 PHP 中,或者在运行时被动态加载后才有效。

SSH2_FINGERPRINT_MD5 ( integer )

Flag to ssh2_fingerprint() requesting hostkey fingerprint as an MD5 hash.

SSH2_FINGERPRINT_SHA1 ( integer )

Flag to ssh2_fingerprint() requesting hostkey fingerprint as an SHA1 hash.

SSH2_FINGERPRINT_HEX ( integer )

Flag to ssh2_fingerprint() requesting hostkey fingerprint as a string of hexits.

SSH2_FINGERPRINT_RAW ( integer )

Flag to ssh2_fingerprint() requesting hostkey fingerprint as a raw string of 8-bit characters.

SSH2_TERM_UNIT_CHARS ( integer )

Flag to ssh2_shell() specifying that width and height are provided as character sizes.

SSH2_TERM_UNIT_PIXELS ( integer )

Flag to ssh2_shell() specifying that width and height are provided in pixel units.

SSH2_DEFAULT_TERM_WIDTH ( integer )

Default terminal width requested by ssh2_shell() .

SSH2_DEFAULT_TERM_HEIGHT ( integer )

Default terminal height requested by ssh2_shell() .

SSH2_DEFAULT_TERM_UNIT ( integer )

Default terminal units requested by ssh2_shell() .

SSH2_STREAM_STDIO ( integer )

Flag to ssh2_fetch_stream() requesting STDIO subchannel.

SSH2_STREAM_STDERR ( integer )

Flag to ssh2_fetch_stream() requesting STDERR subchannel.

SSH2_DEFAULT_TERMINAL ( string )

Default terminal type (e.g. vt102, ansi, xterm, vanilla) requested by ssh2_shell() .

目录
ssh2_auth_hostbased_file  --  Authenticate using a public hostkey
ssh2_auth_none  --  Authenticate as "none"
ssh2_auth_password  --  Authenticate over SSH using a plain password
ssh2_auth_pubkey_file  --  Authenticate using a public key
ssh2_connect  --  Connect to an SSH server
ssh2_exec  --  Execute a command on a remote server
ssh2_fetch_stream  --  Fetch an extended data stream
ssh2_fingerprint  --  Retreive fingerprint of remote server
ssh2_methods_negotiated  --  Return list of negotiated methods
ssh2_publickey_add  --  Add an authorized publickey
ssh2_publickey_init  --  Initialize Publickey subsystem
ssh2_publickey_list  --  List currently authorized publickeys
ssh2_publickey_remove  --  Remove an authorized publickey
ssh2_scp_recv  --  Request a file via SCP
ssh2_scp_send  --  Send a file via SCP
ssh2_sftp_lstat  --  Stat a symbolic link
ssh2_sftp_mkdir  --  Create a directory
ssh2_sftp_readlink  --  Return the target of a symbolic link
ssh2_sftp_realpath  --  Resolve the realpath of a provided path string
ssh2_sftp_rename  --  Rename a remote file
ssh2_sftp_rmdir  --  Remove a directory
ssh2_sftp_stat  --  Stat a file on a remote filesystem
ssh2_sftp_symlink  --  Create a symlink
ssh2_sftp_unlink  --  Delete a file
ssh2_sftp  --  Initialize SFTP subsystem
ssh2_shell  --  Request an interactive shell
ssh2_tunnel  --  Open a tunnel through a remote server