使用php远程连接服务器

首先本地要安装php,可以使用编译安装,也可以使用命令行直接安装,这里就直接介绍使用命令行安装(sudo apt install php-7.2)有一点需要注意的是php的版本需要时7.0以上安装php之后需要安装一下ssh2拓展(sudo apt-get install libssh2-1-dev libssh2-php)安装之后就可以了,进入到php的~目录下,运行ssh-keygen生成秘钥和公钥,生成的秘钥和公钥会自动生在.ssh文件夹下边,然后设置一下权限,网上很多说.ssh文件夹权限设置为700,但是在实际操作中会发现700并不够,所以我给的权限是755,然后是生成的公钥权限给的是644,私钥给的是600,设置完成之后便可以使用php代码链接测试

$connection = ssh2_connect("192.168.1.1",22);
if(ssh2_auth_password($connection,"aaa","pass"))
{
echo "Authentication Successful! ";
}else{
die("Authentication Failed...");
}

这种方式是使用账号密码链接,还有另外一种方法是使用秘钥和公钥链接,当使用公钥和密钥链接的时候需要到~目录下执行指令ssh-keygen生成密钥和公钥,生成的密钥就在.ssh文件夹下边可以去看下,然后使用命令将公钥传至远程服务器,scp id_rsa username@hosts:/目录 然后直接就可以做链接测试

$connection = ssh2_connect($host, $port, array('hostkey'=>'ssh-rsa'));
    if (ssh2_auth_pubkey_file($connection, $username,
                              '公钥文件路径',
                              '私钥文件路径')) {
      echo "Public Key Authentication Successful";
    } else {
      die('Public Key Authentication Failed');
}

服务器返回Public Key Authentication Successful 就链接成功了

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值