¿Estas atascado? ¡Yo te ayudo!, pregunta aquí.

Ejecutar comandos a traves de SSH desde PHP (ubuntu)

Todo código relacionado exclusivamente con PHP, incluido la programación con symphony, etc...

Notapor alexiter » Lun Sep 25, 2017 12:37 am

Estas instrucciones funcionan en ubuntu 16 con PHP5.6 y posteriores, sin embargo con ubuntu 14 y php5.6 o php5 no funcionan. El motivo es que la libreria libssh2 funciona con un metodo de autentificacion obsoleto que tiene graves brechas de seguridad confirmadas, y por ende, se desactivo dicho metodo, esto provoca que al instalarse arroje un error de KEY invalida.

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
alexiter
Site Admin
 
Mensajes: 157
Registrado: Dom Nov 17, 2013 9:54 pm

Volver a PHP (symphony, etc...)

cron
  • Buscar mensajes nuevos
  • Buscar temas sin respuesta
  • ¿Quién está conectado?
  • Hay 5 Usuarios identificados :: 0 registrado, 0 ocultos y 5 invitados (basados en usuarios activos en los últimos 5 minutos)
  • La mayor cantidad de usuarios identificados fue 619 el Dom May 03, 2020 11:11 pm
  • Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 5 invitados