【问题标题】:PHP - connect to switch and get its config dataPHP - 连接交换机并获取其配置数据
【发布时间】:2015-02-13 23:41:40
【问题描述】:

我需要连接到服务器上的 (3Com) 交换机(通过 SSH 和 Telnet)并使用 PHP 代码获取其配置数据。 我已经连接到交换机了,现在我只是不知道如何将其配置数据导入数据库。

我当前的代码:

<?php
    $auth=base64_encode("username:password");
    $header="GET /pa2/ HTTP/1.0\r\n\r\n";
    $header.="Accept: text/html\r\n";
    $header.="Authorization: Basic $auth\r\n";

    $fp = fsockopen ("xxx.xxx.xxx.xxx", 23, $errno, $errstr, 30);
    if (!$fp) {
        echo "$errstr ($errno)<br />\n";
    } else {
        //missing code
    }
?>

你能帮帮我吗

【问题讨论】:

  • 您在以$fp 开头的行中的 IP 地址末尾缺少引号。复制粘贴错误?
  • 我在换IP的时候不小心把它删了。我没有错误我只是不知道从我连接的交换机获取配置数据的命令。
  • 我对切换的了解不够多,无法提供帮助。 3com 会发布一些东西吗?

标签: php ssh telnet fsockopen


【解决方案1】:
$auth=base64_encode("username:password");
$header="GET /pa2/ HTTP/1.0\r\n\r\n";
$header.="Accept: text/html\r\n";
$header.="Authorization: Basic $auth\r\n";

这并没有在你的代码中做任何事情。

与其尝试实现自己的 telnet 或 SSH 客户端,不如重用一个。 phpseclib 是一个非常流行的 SSH 客户端。我会试试的。这是它的使用示例:

<?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');
?>

【讨论】:

  • 好的,谢谢。但是我现在怎么才能得到这个交换机的配置数据呢?
猜你喜欢
  • 2015-04-12
  • 1970-01-01
  • 1970-01-01
  • 2019-07-29
  • 2022-09-27
  • 2017-11-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多