La unica forma de arreglar esto es usar un sistema alternativo de conexion SSH que se llama phpseclib. Este sistema que incluye una libreria mas segura, implica una instalacion algo mas complicada que paso a detallar en este post http://teayudo.con-ip.com/viewtopic.php?f=18&t=549.
Lo primero es instalar la extension de apache que lo hace posible:
- Código: Seleccionar todo
sudo apt-get install gcc make autoconf libc-dev pkg-config
sudo apt-get install libssh2-1-dev
sudo pecl install ssh2
Si nos tira error de no terner pecl
- Código: Seleccionar todo
sudo apt-get install php-pear
sudo apt-get install php5-dev
Despues hay que crear el archivo de configuracion :
- Código: Seleccionar todo
sudo bash -c "echo extension=ssh2.so > /etc/php5/apache2/conf.d/ssh2.ini"
y añadir la extension al php.ini
- Código: Seleccionar todo
extension=/usr/lib/php5/numeroquesea/ssh2.so
Despues reiniciamos el server.
Y ahora con el siguiente codigo podemos crear la conexion y ejecutar el comando que deseemos.
- Código: Seleccionar todo
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');
$stream = ssh2_exec($connection, '/usr/local/bin/php -i');
SI NO FUNCIONA PROBAR LAS INSTRUCCIONES DE ESTOS ENLACES:
https://www.vispo.org/2014/05/21/instalar-las-extensiones-mcrypt-y-ssh2-de-php-en-ubuntu-13-10-server/
https://serverfault.com/questions/571938/installed-libssh2-php-but-no-ssh2-with-php-m
https://www.drupal.org/node/2620642
https://unix.stackexchange.com/questions/402421/how-to-install-the-php-ssh2-extension-on-ubuntu-14-04-running-php-5-6