Как проще выполнить sh на удаленном сервере через php? PHP скрипт принимает только IP и PASS для подключение через ssh.
Так же скрипт генерирует sh файл.
Как подключиться по ssh, залить на удаленный сервер файл .sh и его выполнить?
Ответ от скрипта должен вернуться в php скрипт.
Так же возможен ли вариант для запуска многострочного скрипта через ssh без закачки файла?
т.е. построчно читать файл не вариант я думаю.

21 Авг 2019 в 06:30
164 +1
0
Ответы
1

Для выполнения команды на удаленном сервере через SSH и получения результата можно использовать PHP библиотеку phpseclib. Ниже пример простого скрипта, который позволит вам подключиться к серверу по SSH, выполнить команду и получить результат:

<?php
require('Net/SSH2.php');
$ip = 'IP адрес удаленного сервера';
$pass = 'Пароль для подключения по SSH';
$ssh = new Net_SSH2($ip);
if (!$ssh->login('root', $pass)) {
exit('Невозможно подключиться по SSH');
}
$command = 'ваша SSH команда';
$result = $ssh->exec($command);
echo $result;
?>

Если необходимо выполнить многострочный скрипт, можно передать его в виде одной строки и запустить через SSH, например:

$script = "строка 1 && \\
строка 2 && \\
строка 3";
$result = $ssh->exec($script);
echo $result;

Таким образом, вы сможете подключиться к удаленному серверу по SSH, выполнить команду или скрипт и вернуть результат в PHP скрипт.

20 Апр в 13:17
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Название заказа не должно быть пустым
Введите email
Бесплатные доработки
Гарантированные бесплатные доработки
Быстрое выполнение
Быстрое выполнение от 2 часов
Проверка работы
Проверка работы на плагиат
Интересные статьи из справочника
Поможем написать учебную работу
Название заказа не должно быть пустым
Введите email
Доверьте свою работу экспертам
Разместите заказ
Наша система отправит ваш заказ на оценку 92 588 авторам
Первые отклики появятся уже в течение 10 минут
Прямой эфир