Я надеюсь, что это не слишком специфично, но я пытаюсь вытащить запись DHCP с маршрутизатора cradlepoint. Используя SSH для входа в маршрутизатор, я могу запустить 'get/status/dhcpd/' и получить JSON возврат всей информации о предоставлении DHCP.
Я понятия не имею, как либо a) записать этот вывод в файл, либо b) получить этот вывод как переменную для синтаксического анализа.
Идеальная ситуация заключалась бы в том, чтобы иметь php-скрипт, который мог бы подключить SSH и вытащить эту информацию, а затем записать ее в файл. Я не знаком с PHP SSH-библиотеками.
Если кто-то еще ищет ответ на этот вопрос:
CradlePoint имеет API разработчика. Мне потребовалось навсегда найти, но вы можете получить json-выход из URL-адреса API. Это каждый набор конфигурации на базовой станции.
Если вы перейдете на страницу http://cp/api/status/dhcpd/leases, вы увидите всю информацию DHCP для каждой подключенной машины. Используя простой скрипт cURL, вы можете получить к нему доступ, передав учетные данные для входа и вернув его в виде массива JSON.
Я потратил почти месяц на то, чтобы найти решение для этого, и в тот же день, когда я отправляю сообщение в StackOverflow, ища помощь, я нашел API, который можно найти здесь:
Вы можете делать SSH с phpseclib. например.
<?php
include('Net/SSH2.php');
$ssh = new Net_SSH2('www.domain.tld');
if (!$ssh->login('username', 'password')) {
exit('Login Failed');
}
echo $ssh->exec('pwd');
echo $ssh->exec('ls -la');
?>