Technical FAQ
PHP Manual
CSS2 Manual
HTML Manual
JS Guide
JS Reference
PhpDock Manual
Nu-Coder Manual
PhpExpress Manual
PHP Joomla
Learn PHP
<Compression StreamsAudio Streams>
Last updated: Tue, 19 Sep 2006

Secure Shell 2

ssh2.shell:// ssh2.exec:// ssh2.tunnel:// ssh2.sftp:// ssh2.scp:// PHP 4.3.0 and up (PECL)

  • ssh2.shell://user:pass@example.com:22/xterm

  • ssh2.exec://user:pass@example.com:22/usr/local/bin/somecmd

  • ssh2.tunnel://user:pass@example.com:22/

  • ssh2.sftp://user:pass@example.com:22/path/to/filename

This wrapper is not enabled by default: In order to use the ssh2.*:// wrappers you must install the SSH2 extension available from PECL.

In addition to accepting traditional URI login details, the ssh2 wrappers will also reuse open connections by passing the connection resource in the host portion of the URL.

Example M-4. Opening a stream from an active connection

$session = ssh2_connect('example.com', 22);
ssh2_auth_pubkey_file($session, 'username', '/home/username/.ssh/id_rsa.pub',
                                            '/home/username/.ssh/id_rsa', 'secret');
$stream = fopen("ssh2.tunnel://$session/remote.example.com:1234", 'r');

Table M-8. Wrapper Summary

Restricted by allow_url_fopen.YesYesYesYesYes
Allows ReadingYesYesYesYesYes
Allows WritingYesYesYesYesNo
Allows AppendingNoNoNoYes (When supported by server)No
Allows Simultaneous Reading and WritingYesYesYesYesNo
Supports stat()NoNoNoYesNo
Supports unlink()NoNoNoYesNo
Supports rename()NoNoNoYesNo
Supports mkdir()NoNoNoYesNo
Supports rmdir()NoNoNoYesNo

Table M-9. Context options

sessionPreconnected ssh2 resource to be reused 
sftpPreallocated sftp resource to be reused 
methodsKey exchange, hostkey, cipher, compression, and MAC methods to use 
usernameUsername to connect as 
passwordPassword to use with password authentication 
pubkey_fileName of public key file to use for authentication 
privkey_fileName of private key file to use for authentication 
envAssociate array of environment variables to set 
termTerminal emulation type to request when allocating a pty 
term_widthWidth of terminal requested when allocating a pty 
term_heightHeight of terminal requested when allocating a pty 
term_unitsUnits to use with term_width and term_heightSSH2_TERM_UNIT_CHARS

<Compression StreamsAudio Streams>
Last updated: Tue, 19 Sep 2006