PHP OpenSSH2 (libssh2) 설치

리눅스/PHP|2015. 1. 16. 10:33
반응형

PHP 에서 원격지의 서버에 접속해서 데이터를 교환하거나 , 특정 프로그램을 실행시키기 위해 사용할 수 있다. 

준비물 : OpenSSL(lib), libssh2, php_ssh2

리눅스 시스템
1. OpenSSL http://www.openssl.org
직접 다운로드 (http://www.openssl.org/source/openssl-0.9.8k.tar.gz)

2. libssh2 http://sourceforge.net/projects/libssh2/
직접 다운로드 (http://jaist.dl.sourceforge.net/sourceforge/libssh2/libssh2-1.1.tar.gz)

3. ssh2 PHP extension http://pecl.php.net/package/ssh2
직접 다운로드 (http://pecl.php.net/get/ssh2-0.11.0.tgz)

OpenSSL 설치


우선 소스를 적당한 디렉토리 (예제에서는 /usr/local/src 를 사용함) 에 다운로드 받는다. 
tar zxvf openssl-0.9.8k.tar.gz
cd openssl-0.9.8k
./config 또는 ./Configure --linux-elf --prefix=/usr/local/OpenSSL
# make
make install

Libssh2 설치


소스를 다운로드 받고 적당한 디렉토리에 타르볼을 해제한다. 
# tar zxvf libssh2-1.1.tar.gz
# cd libssh2-1.1
# ./configure (기본적으로 설치는 /usr/local 에 이루어진다. )
make
make install 
설치가 완료된 후에 /usr/local/lib 에 libssh2.so 파일이 존재한다. 

PHP ssh2 Extension 설치


tar zxvf ssh2-0.11.0.tgz
cd ssh2-0.11.0
phpize
Configuring for:
PHP Api Version:         20041225
Zend Module Api No:      20060613
Zend Extension Api No:   220060519
./configure
make
cp .libs/ssh2.so /usr/local/php/ 
(이 예제는 PHP Extension을 /usr/local/lib 에 복사를 한다.)
vi /usr/local/lib/php.ini
extension=ssh2.so 를 추가 시켜준다. 
** 여기서 extension_dir의 경로가  /usr/local/php 로 설정이 되어있고 , 시스템마다 다른경로로 표현이 될수 있음
php -m | grep ssh2
ssh2

설치가 완료 되었으므로 Apache 웹서버를 재 시작해준다. 

 

PHP ssh2 Extension 확인

phpinfo(); 함수를 이용해 ssh2 항목이 추가되었는지 확인해보아야 합니다.

 

[출처] 근원e (http://www.lovelgw.com/Blog/entry/PHP-OpenSSH2-libssh2)

반응형

댓글()