PHP code example of clue / socks-server

1. Go to this page and download the library: Download clue/socks-server library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

clue / socks-server example snippets


// old from clue/socks-server
$server = new Clue\React\Socks\Server\Server($loop, $socket);

// new
$server = new Clue\React\Socks\Server($loop, $socket);

$loop = React\EventLoop\Factory::create();

// listen on localhost:1080
$socket = new Socket($loop);
$socket->listen(1080,'localhost');

// start a new server listening for incoming connection on the given socket
$server = new Server($loop, $socket);

$loop->run();

$loop = \React\EventLoop\Factory::create();

// listen on localhost:$port
$socket = new Socket($loop);
$socket->listen($port,'localhost');

$server = new Server($loop, $socket);

// use local DNS server
$dnsResolverFactory = new DnsFactory();
$resolver = $dnsResolverFactory->createCached('127.0.0.1', $loop);

// outgoing connections to target host via interface 192.168.10.1
$connector = new DnsConnector(
    new TcpConnector($loop, array('bindto' => '192.168.10.1:0')),
    $resolver
);

$server = new Server($loop, $socket, $connector);

$server->setProtocolVersion(5);

$server->setProtocolVersion(null);

$server->setAuth(function ($username, $password) {
    // either return a boolean success value right away
    // or use promises for delayed authentication
});

$server->setAuthArray(array(
    'tom' => 'password',
    'admin' => 'root'
));

$server->unsetAuth();

// set next SOCKS server localhost:$targetPort as target
$connector = new React\Socket\TcpConnector($loop);
$client = new Clue\React\Socks\Client('user:[email protected]:' . $targetPort, $connector);

// listen on localhost:$middlemanPort
$socket = new Socket($loop);
$socket->listen($middlemanPort, 'localhost');

// start a new server which forwards all connections to the other SOCKS server
$server = new Server($loop, $socket, $client);