如何解决为什么 phpseclib SSH2 不运行命令?
我有下一个脚本,它使用 PHPSECLIB ver1.0 连接到 ubuntu 服务器并安装 unifi 控制器 ssl 证书。
安装ssl证书的步骤是正确的,问题是代码在write函数中停止,没有运行命令。
如何让我的脚本正确运行所有命令?
<?PHP
set_include_path(get_include_path() . PATH_SEParaTOR . 'PHPseclib');
include ("Crypt/RSA.PHP");
include ("Net/SSH2.PHP");
include ("Net/SFTP.PHP");
$key = new Crypt_RSA();
$key->loadKey(file_get_contents('key.ppk'));
$ip = "my ip";
$username = "ubuntu";
$ssh = new Net_SSH2($ip);
$sftp = new Net_SFTP($ip);
$ssh_login = $ssh->login($username,$key);
$sftp_login = $sftp->login($username,$key);
$pfx_content = file_get_contents("key/test_file.pfx");
$pfx_name = "test_file.pfx";
$pfx_password = "unifiadmin";
if (!$ssh_login) {
exit("SSH Login Failed");
}
if (!$sftp_login) {
exit("SFTP Login Failed");
}
$import_key = "";
$import_key .= "sudo keytool -importkeystore -srckeystore";
$import_key .= " $pfx_name -srcstoretype pkcs12 -srcalias 1";
$import_key .= " -destkeystore /usr/lib/unifi/data/keystore";
$import_key .= " -deststoretype jks -destalias unifi";
$import_key .= " -deststorepass aircontrolenterprise";
$import_key .= " -srcstorepass unifiadmin";
$migrate_key = "";
$migrate_key .= " sudo keytool -importkeystore -srckeystore";
$migrate_key .= " /usr/lib/unifi/data/keystore -srcstoretype JKS ";
$migrate_key .= " -destkeystore /usr/lib/unifi/data/keystore ";
$migrate_key .= " -deststoretype PKCS12 ";
$migrate_key .= " -srcstorepass aircontrolenterprise";
$migrate_key .= " -destkeypass unifiadmin";
function get_prompt($ssh){
echo "<pre>".$ssh->read("[prompt]")."</pre>";
}
$upload_pfx = $sftp->put($pfx_name,$pfx_content);
$ssh->exec("clear");
get_prompt($ssh);
$ssh->write("sudo service unifi stop\n");
get_prompt($ssh);
$ssh->write("ls\n");
get_prompt($ssh);
$ssh->write($import_key."\n");
get_prompt($ssh);
$ssh->write("yes\n");
get_prompt($ssh);
$ssh->write($migrate_key."\n");
get_prompt($ssh);
$ssh->write($pfx_password."\n");
get_prompt($ssh);
$ssh->write("sudo service unifi restart\n");
get_prompt($ssh);
$ssh->write("sudo service unifi start\n");
get_prompt($ssh);```
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。