1 год назад
История
README.md
WaffLib - библиотека, для работы с php_ssh.
И так, с WaffLib Вы сможете легко автоматизировать скрипт управления по протоколу SSH.
Пример использования:
<?php declare(strict_types=1);
use Wafflib\Connect;
require 'vendor/autoload.php';
try {
$con = new Connect('127.0.0.1', 5554, ['username' => 'panda', 'password'=> '123456']); //Инициализирую соединение
$response = $con->exec('uname -a') //Выполняю произвольные команды и вывод записываю в переменную
->exec('cat /etc/apache2/apache2.conf')
->output();
print_r($response); //Отображаю записанный вывод
print_r($con->fingerprint); //Отображаю SSH отпечаток
} catch (Exception $error) {
echo $error; //Если появляются ошибки - вывожу их
} finally {
unset($con); //Закрываю соединение
echo PHP_EOL . 'Connection closed.' . PHP_EOL;
}
Системные требования:
- PHP 8.1 или выше;
- Дополнение php_ssh2 1.2 или выше (расширение на Pecl).
Так же, Вы должны понимать, что wafflib наследует все косяки ssh2lib, а именно:
- Приватный ключ зашифрованный в RSA должен иметь вид
-----BEGIN RSA PRIVATE KEY-----
, этого можно добиться при создании ключа:ssh-keygen -m PEM -t rsa -f mykey
; - Частичная авторизация в ssh2lib реализована криво. Это значит, если на ssh-сервере настроен вход и по ключу, и по паролю - придётся указывать и то, и другое.
Документация в скором времени появится в разделе wiki.
Конвейеры
0 успешных
0 с ошибкой