dev-develop
dev-develop https://github.com/oncesk/ssh2ssh2 client library
The Requires
- php >=5.4.0
ssh ssh2 ssh client
dev-master
9999999-dev https://github.com/oncesk/ssh2ssh2 client library
The Requires
- php >=5.4.0
ssh ssh2 ssh client
Wallogit.com
2017 © Pedro Peláez
ssh2 client library
Library which provide you ability execute remote commands like in terminal, (*1)
With this library you can execute any commands using ssh2 protocol., (*2)
<?php use Ssh\Client; use Ssh\Auth\Password; $auth = new Password('username', 'password'); $client = new Client('host_name_or_ip'); try { $client->connect()->authenticate($auth); echo $client->exec('pwd'); } catch (\RuntimeException $e) { echo $e->getMessage(); }
<?php use Ssh\Client; use Ssh\Auth\PublicKey; $auth = new PublicKey('username', 'path to public key', 'path to private key', 'passphrase if set'); $client = new Client('host_name_or_ip'); try { $client->connect()->authenticate($auth); echo $client->exec('pwd'); } catch (\RuntimeException $e) { echo $e->getMessage(); }
<?php use Ssh\Client; use Ssh\Auth\PublicKey; use Ssh\Command\Result; use Ssh\Command\Chain; $auth = new PublicKey('username', 'path to public key', 'path to private key', 'passphrase if set'); $client = new Client('host_name_or_ip'); try { $client->connect()->authenticate($auth); echo $client ->chain() ->exec('pgrep node', function (Result $result, Chain $chain) { $result = $result->getResult(); if ($result && is_numeric($result)) { $chain->stopChain(); } }) ->exec('/usr/local/bin/node ~/server.js > ~/node_server.log &'); } catch (\RuntimeException $e) { echo $e->getMessage(); }
<?php use Ssh\Config\Configuration; use Ssh\Client; $configuration = new Configuration('path to ssh config file like a /home/username/.ssh/config'); $client = new Client($configuration->getHost('hostname')); // now if you need authenticates with password (PasswordAuthentication set to yes) you need to set password $client->getAuth()->setPassword('xxxxx'); // else if you set IdentityFile or PubkeyAuthentication is yes or not set PubkeyAuthentication // trying to find currenct user public key and private key files into ~/.ssh/ directory, if keys not exists // you need authenticates with methods above, if keys exists you can connect and authenticate try { $client->connect()->authenticate(); echo $client->exec('pwd'); } catch (\RuntimeException $e) { echo $e->getMessage(); }
Shell, (*3)
With shell you can working like in terminal, (*4)
ssh2 client library
ssh ssh2 ssh client
ssh2 client library
ssh ssh2 ssh client