Zprovoznění SSH v PHP

Z Wiki UnArt Slavičín
Skočit na navigaciSkočit na vyhledávání

SSH modul do PHP umožňuje připojení na vzdálený linuxový(unixový) stroj, vykonat kód a zpětně získat výsledek.

Instalace

Nainstalujeme potřebné balíčky.

apt-get update
apt-get install php5-dev php5-cli php-pear buid-essential openssl-dev zlib1g-dev

libssh2

Potřebujeme nainstalovat klihovnu libssh2.

cd /usr/src
wget http://surfnet.dl.sourceforge.net/sourceforge/libssh2/libssh2-0.14.tar.gz
tar -zxvf libssh2-0.14.tar.gz
cd libssh2-0.14/
./configure
make all install

Pro novější verzi se můžete podívat na stránky projektu na sourceforge.


Klihovna ssh2.so pro PHP

Nyní potřebujeme libssh2 spojit s PHP. K tomu můžeme využít PECL modul, který nainstalujeme takhle:

pecl install -f ssh2

Nakonec se ujistíme aby se modul načítal po startu PHP. V souboru php.ini (pro CLI: /etc/php5/cli/php.ini, pro Apache modul /etc/php5/apache2/php.ini)

extension=ssh2.so

Přidáme jej někde pod sekci "Dynamic Extensions".

Zde se můžete podívat na dostupné funkce.



<?php $connection = ssh2_connect('shell.example.com', 22);

if (ssh2_auth_password($connection, 'username', 'secret')) {

 echo "Authentication Successful!\n";

} else {

 die('Authentication Failed...');

} ?>