PHP中的SSH连接和命令

PHP中的SSH连接和命令,php,authentication,ssh,command,key,Php,Authentication,Ssh,Command,Key,我有一些项目要做,但自杀了,什么也做不了,我需要你的帮助。 我必须使用PHP命令来使用SSH连接。 我使用Putty,输入IP和端口,然后浏览.PPK文件(密钥验证文件)并输入用户名和密码,然后使用命令重新启动。所以服务器正在重新启动 现在我想用PHP简单地完成所有这些,我想做一个文本框和提交按钮,当在文本框中输入IP地址并单击提交按钮时,应该在后台执行所有这些重新启动命令。(端口默认为22)。我将创建此文本框和按钮,但无法获取如何使用命令和密钥身份验证建立此连接。 如果有人知道这个,请帮我解决

我有一些项目要做,但自杀了,什么也做不了,我需要你的帮助。 我必须使用PHP命令来使用SSH连接。 我使用Putty,输入IP和端口,然后浏览.PPK文件(密钥验证文件)并输入用户名和密码,然后使用命令重新启动。所以服务器正在重新启动

现在我想用PHP简单地完成所有这些,我想做一个文本框和提交按钮,当在文本框中输入IP地址并单击提交按钮时,应该在后台执行所有这些重新启动命令。(端口默认为22)。我将创建此文本框和按钮,但无法获取如何使用命令和密钥身份验证建立此连接。
如果有人知道这个,请帮我解决这个问题。我再也受不了了

必须使用phpseclib

  • 从或(直接链接)下载

  • 将其包含到您的项目中

然后:

include('Net/SSH2.php');
$ssh = new Net_SSH2('www.example.com');
$ssh->login('username', 'password') or die("Login failed");
// $ssh->getServerPublicHostKey(); if this is your first time connecting
// check $ssh->getServerPublicHostKey() against previously saved 
//                                value on subsequent connections
echo $ssh->exec('reboot');

我已经从你们的链接下载了PHPseclib并上传到了服务器上。使用代码创建index.php后:include('Net/SSH2.php')$ssh=新的网络\u SSH2('IP地址',22)$ssh->login('myusername','mypass')或die('login failed');echo$ssh->exec('reboot');在做了什么之后,它显示登录失败。我必须在哪里提供密钥文件?您是否尝试过
$ssh=new Net_SSH2(“IP地址”)
没有端口号?还没有,但我不明白我必须把我的PPK密钥文件放在哪里进行身份验证,没有密钥验证它不记录什么意思
没有密钥验证它不记录
,我认为这里没有必要。你通过执行
$rsa=new Crypt_rsa()加载密钥$rsa->loadKey(文件获取内容('/path/to/key.ppk')$ssh->login('username',$key)