PHP-скрипт для доступа к удаленному Linux-серверу и выполнения bash-скрипта

0

Я пытаюсь сделать следующее.

Имейте php выполнить команды оболочки на наших удаленных серверах. Это потому, что я хотел бы иметь возможность устанавливать скрипты через bash. Таким образом php собирается выполнить сценарии bash на удаленном сервере.

Проблема заключается в невозможности подключения к удаленному серверу по какой-либо причине. Я пробовал несколько способов сделать это, и я должен делать с корнем и паролем. Позже я могу посмотреть на их шифрование или что-то в этом роде, но я не могу использовать ключ ssh, чтобы он не работал. Я новичок в php-части, поэтому мне нужна помощь в подключении к удаленным серверам.

код, который я сейчас пытаюсь сделать

  $ip = '37.130.000.00'; 
$user = 'admin'; 
$pass = 'xxxxxxxxx'; 

$connection = ssh2_connect($ip); 
ssh2_auth_password($connection,$user,$pass); 
$shell = ssh2_shell($connection,"uptime");


 echo $shell;

По какой-то причине этот код дает мне следующую ошибку

Неустранимая ошибка: вызов неопределенной функции ssh2_connect() в

Как я могу сделать эту работу или что еще я должен сделать, чтобы правильно подключиться к удаленным серверам, и все это должно быть очень гибким, поскольку мы говорим о 100 серверах, которые должны иметь возможность подключиться таким образом.

Спасибо за любой вклад.

Теги:
ssh

1 ответ

1

Эта функция предоставляется дополнительным расширением, которое, похоже, не установлено. Если у вас есть libssh и другие зависимости в вашей системе, получите pecl-ssh, выполнив

sudo pecl install ssh2 channel://pecl.php.net/ssh2-0.11.3

а затем перезапустите php-fpm или apache, если вы используете modphp.

Edit: Кстати, этот вопрос был задан раньше, и один из самых мудрых советов, который я видел в отношении, - это переход на чистую реализацию php, без каких бы то ни было расширений: php-function-ssh2-connect-is-not -за работой

  • 0
    я вижу да, кажется, что это то, что я не могу использовать. Есть ли другой способ, который не требует всех зависимостей для подключения к удаленному хосту с помощью php?
  • 0
    Посмотрите мое издание, есть phpseclib, который вы можете просто добавить в свой проект и сразу же использовать.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню