openssl: 加密算法集合,C语言实现

libssh2:ssh2协议库库,C语言实现

PECL/ssh2: libssh2的php扩展,允许php程序调用libssh2中的函数

依赖关系:PECL/ssh2 –> libssh2 –> openssl

什么是php的ssh2扩展

Php ssh2扩(以下简称PECL/ssh2),允许在php程序中远程执行系统命令和文件传输,不需要在被监控的机器上单独开发和部署类似agnet的"木马"程序,大大降低了运维成本。

Php ssh2扩展需要的依赖库:

openssl: 加密算法集合,C语言实现

libssh2:ssh2协议库库,C语言实现

PECL/ssh2: libssh2的php扩展,允许php程序调用libssh2中的函数

依赖关系:PECL/ssh2 –> libssh2 –> openssl

基于LNMP环境安装:

 LNMP环境一键安装:wget http://soft.vpser.net/lnmp/lnmp1.4-full.tar.gz

 wget https://www.libssh2.org/download/libssh2-1.5.0.tar.gz

 wget http://pecl.php.net/get/ssh2-0.12.tgz

 tar axf libssh2-1.5..tar.gz

 tar axf ssh2-0.12.tgz

 cd libssh2-1.5.

 ./configure --prefix=/usr/local/libssh2

 make && make install

 cd ssh2-0.12

 phpize

 ./configure --prefix=/usr/local/ssh2 --with-ssh2=/usr/local/libssh2 --with-php-config=/usr/local/php/bin/php-config

 make

 echo "extension=ssh2.so" >>/usr/local/php/etc/php.ini

 cp /root/ssh2-0.12/modules/ssh2.so /usr/lib/modules/

 cp /root/ssh2-0.12/modules/ssh2.so /usr/local/php/lib/php/extensions/no-debug-non-zts-/

 php -i|grep ssh2

最后,我们再通过一个简单的PHP程序来试用SSH2,该程序首先连接远程服务器,然后执行相关操作,最后读取操作执行的返回结果,具体例子代码如下。

 vim index.php

 <?php

 $connection = ssh2_connect( '192.168.100.201',  );

 if ( ssh2_auth_password( $connection, 'root', 'redhat' ) ) {

 echo '登陆成功!<br>';

 }

 else{

 echo '登陆失败<br>';

 return;

 }

 $stream = ssh2_exec($connection, "systemctl stop httpd");

 stream_set_blocking( $stream, true );

 echo "Output: " . stream_get_contents($stream);

 ?>

基于LNMP环境的ssh2扩展的更多相关文章

  1. ubuntu通过apt-get方式搭建lnmp环境以及php扩展安装

    v 一直是在用的lnmp的集成安装包搭建lnmp环境,因为工作需要需要安装ldap扩展,在网上怎么都找不到源码安装包,只能卸载掉原来的lnmp环境,用ubuntu的php5-ldap扩展, 在安装中遇 ...

  2. 基于lnmp环境安装Discuz

    安装环境 Linux:CentOS Linux release 7.5.1804 (Core) nginx:1.14.2 php-fpm:5.4.16 mariadb-server:5.5.60 基本 ...

  3. 基于LNMP环境的Zabbix监控安装

    一.准备LNMP环境 1.使用putty或类似的SSH工具登陆VPS或服务器: 登陆后运行:screen -S lnmp 如果提示screen: command not found 命令不存在可以执行 ...

  4. jitamin基于lnmp环境搭建

    从github上面下载源代码 cd /Data/apps/nginx/html git clone https://github.com/jitamin/jitamin.git 修改配置文件 cd   ...

  5. 基于LNMP的Zabbbix之Zabbix Server源码详细安装,但不给图

    Zabbix Server安装 看到那里有错或者有什么问题的话,求指点 邮箱:losbyday@163.com 上一篇PHP源码安装参见基于LNMP的Zabbbix之PHP源码安装:https://i ...

  6. docker中基于centos镜像部署lnmp环境 php7.3 mysql8.0 最新版

    Docker是一个开源的应用容器引擎,基于Go语言并遵从Apache2.0协议开源. Docker可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的Linux机器上 ...

  7. 基于Ubuntu的LNMP环境搭建

    装备的工具 Ubuntu16.04 , Xshell 使用Xshell链接到Ubuntu 使用xshell链接Ubuntu不是必须的,只是为了操作的方便,同时默认是你的Ubuntu已经安装好了 在Ub ...

  8. lnmp环境里安装mssql及mssql的php扩展

    小活中用到mssql,于是在自己lnmp环境中安装各mssql数据库 步骤如下: 源码编译安装 (1)下载freetds-stable-0.91源码:http://download.csdn.net/ ...

  9. LNMP环境+ 前后端项目部署+redis+redis扩展

    LNMP 环境    (参照https://lnmp.org/install.html) wget -c http://soft.vpser.net/lnmp/lnmp1.4.tar.gz & ...

随机推荐

  1. pat03-树1. 二分法求多项式单根(20)

    03-树1. 二分法求多项式单根(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 杨起帆(浙江大学城市学院) 二分法求函数根的 ...

  2. EF生成的表被更改后的错误

    1.在Global.ascs设置 public class MvcApplication : System.Web.HttpApplication { protected void Applicati ...

  3. Linux mysql 基础操作

    命令  #查看版本 mysql --version   #进入mysql 命令 mysql -u root -p mysql -u root@localhost  (没有密码的情况)   #创建数据库 ...

  4. jQuery 浮动导航菜单(购物网站商品类型)

    单页面网页内容较多,页面长度较大,需要方便快速的在页面的不同位置进行定位,所以浮动菜单逐渐流行了起来,如下图 男装.女装.美妆等. 这种菜单功能分为两部分: 1.点击菜单项,网页滚动到对应位置,可简单 ...

  5. python-rrdtool

    https://nagios-plugins.org/doc/guidelines.html nagios检测信息 host GPING OK – rtt min/avg/max/mdev = 0.8 ...

  6. matplotlib安装指南

    matplotlib安装指南1.介绍NumPy地址 http://www.numpy.org/NumPy:一个Python一个扩展库,支持大量的维度数组和举证运算,对数组提供大量的函数库 SciPy地 ...

  7. Python用户交互与流程控制

    1. 用户交互 python3通过input实现用户交互,与python2的raw_input一样,接收的值都转换成字符串格式.python2中也有一个input,而python2中的input接收的 ...

  8. 计算后缀表达式的过程(C#)

    计算后缀表达式的过程是一个很好玩的过程,而且很简单哦!这里呢,有个计算的技巧,就是:遇到数字直接入栈,遇到运算符就计算! 后缀表达式也叫逆波兰表达式,求值过程可以用到栈来辅助存储: 假定待求值的后缀表 ...

  9. ModuleNotFoundError: No module named 'yaml'

    ModuleNotFoundError: No module named 'yaml' 需要安装 pyyaml 包

  10. 如何将UI5应用部署到Fiori On-Premise和On-Cloud的Launchpad上去

    On-Premise Launchpad 具体步骤参考我的博客: 如何将BSP应用配置成Fiori Launchpad上的一个tile On-Cloud Launchpad Fiori Cloud L ...