文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>php 的ssh2扩展安装 针对open suse

php 的ssh2扩展安装 针对open suse

时间:2010-06-21  来源:xhq6632

在网上找了很多关于这个话题的帖子,都无法使用。

 

自己摸索了,

 

1、有三台服务器,操作系统分别为:10.1 10.2 11.2三个不同版本,发现11.2不需要安装,已经拥有些扩展了。如果你没有安装,可能很方便的通过yast安装完成。

在10.1服务器上测试,因为安装ssh2-0.11.0.tgz之前,需要安装libssh,所以就到官网下载。下载了N多个版本。都不行。都是在make时出错。

都不想去查找原因了,因为这种情况,可能是多方面的。

又换服务器,10.2,当偿试到libssh2-0.18的时间,居然成功了。

 

好了,接下来,就应该编译ssh2-0.11.0.tgz了,呵呵,还比较顺利。居然成功了。

 

 

现在,把自己的操作流程记录下来,以免以后自己忘记了,还可以再看这个文档。呵呵。

 

 

需要两个软件包:

ssh2-0.11.0.tgz 下载地址:http://pecl.php.net/package/ssh2

libssh2-0.18.tar.gz 下载地址:http://sourceforge.net/projects/libssh2/files/

 

 

先安装,libssh2-0.18.tar.gz

步骤简单:

tar zxvf libssh2-0.18.tar.gz

cd libssh2-0.18

./configure

make && make install

等待一会儿吧。

不出意外,应该就成功了。

 

 

接下来,安装ssh2-0.11.0.tgz

 

tar zxvf ssh2-0.11.0.tgz

cd ssh2-0.11.0

 

phpize
./configure --with-ssh2
make
完成之后,会在当前目录中的modules目录中生成你所需要的ssh2.so文件

 

下面配置,让apache认识它了。

 

这个复制到你的.so文件的地方就行了,不过这个地方要注意,不同版本,so文件存放的位置有点差别。

 

我的是默认路径:

/usr/lib/php5/extensions/

cp ssh2.so /usr/lib/php5/extensions/

还有个,就是添加配置文件,

/etc/php5/conf.d/目录中复制一个ssh2.ini文件

cp mysql.ini ssh2.ini

编辑ssh2.ini,将其中内容修改为:

extension=ssh2.so

 

好了,现在重新启动apapche

apache2ctl -k restart

 

用这个命令php -i|grep ssh2

不出意外,将看到相关信息

 

/etc/php5/conf.d/ssh2.ini,
Registered PHP Streams => php, file, data, http, ftp, https, ftps, ssh2.shell, ssh2.exec, ssh2.tunnel, ssh2.scp, ssh2.sftp, zip, compress.zlib 
ssh2
libssh2 version => 0.18
banner => SSH-2.0-libssh2_0.18
PWD => /srv/www/vwokan/wokan2.0/ssh2-0.11.0
_SERVER["PWD"] => /srv/www/vwokan/wokan2.0/ssh2-0.11.0

 


呵呵,这个信息表示已经成功了。

 

下面接下来,就是用php去执行ssh2扩展命令了。

 

<?php
$connection = ssh2_connect("172.16.18.252",22);
if (ssh2_auth_password($connection,"root","123456")) {
      echo "Authentication Successful!\n";
} else {
      die('Authentication Failed...');
}

 

?>

 

不出意外,你将看到“Authentication Successful”信息。

 

呵呵,我就出现了,意外,查询了一下。每次都是出现如下提示:

 

Authentication Failed...

 

用户名,密码,这些都没有错误啊。

 

最后,检查了一下,本机ssh的配置

vi /etc/ssh/sshd_config

发现在:

PasswordAuthentication no

 

呵呵,修改成:

PasswordAuthentication yes

保存,重新启动ssh

/etc/init.d/sshd restart

 

呵呵,居然通过了。

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载