Sample code for 30+ languages & platforms
PHP Extension

Open an SSH Tunnel

See more Socket/SSL/TLS Examples

Demonstrates Socket.SshOpenTunnel, which connects to an SSH server and initializes an SSH tunneling session, then authenticates it.

Background. An SSH tunnel lets a socket reach a destination host through an SSH server using port forwarding. The sequence is: open the tunnel, authenticate, then open forwarded channels to destinations.

Chilkat PHP Extension Downloads

PHP Extension
<?php

include("chilkat.php");

$success = false;

$socket = new CkSocket();

//  Connect to the SSH server and initialize an SSH tunneling session.  Port 22 is conventional but
//  not required.
$success = $socket->SshOpenTunnel('ssh.example.com',22);
if ($success == false) {
    print $socket->lastErrorText() . "\n";
    exit;
}

//  After the tunnel is open, authenticate before opening forwarded channels.
//  The SSH password should come from a secure source rather than being hard-coded.
$sshPassword = 'mySshPassword';
$success = $socket->SshAuthenticatePw('sshUser',$sshPassword);
if ($success == false) {
    print $socket->lastErrorText() . "\n";
    exit;
}

print 'SSH tunnel established and authenticated.' . "\n";

?>