2013-10-24 5 views
1

이 라이브러리 http://phpseclib.sourceforge.net/ssh/intro.html을 사용하여 지속적인 ssh 연결을 만듭니다. 하위 시스템을 선택해야합니다 (해당 Unix ssh 명령에서 -s 매개 변수).php ssh connection : 서브 시스템 선택

어떻게하면됩니까?

여기에 내 코드

$this->ssh = new Net_SSH2($this->host, $this->port); 
$key = new Crypt_RSA(); 
$key->loadKey(file_get_contents($this->key)); 
if (!$this->con->login('username', $key)) { exit('Login Failed'); } 
+0

Net/SFTP는 sftp 하위 시스템을 구현합니다. 어떤 하위 시스템을 활용하려고합니까? 서브시 스템을위한'sshd_config' 설정의 관련 부분을 게시 할 수 있다면 게시하기 전에 줄 수있는 응답을 테스트 할 수 있습니다. 몇 가지 아이디어가 있지만 먼저 테스트하고 싶습니다. 감사! – neubert

+0

잘 원격 서버의 일부 인터페이스에 대한 연결을 만들고 싶습니다. 확실하지는 않지만 하위 시스템의 sshd_config에 액세스 할 수 있다고는 생각하지 않습니다. –

답변

0

phpseclib의 최신 자식 버전은이 기능을 지원해야합니다. 예.

<?php 
include('Net/SSH2.php'); 

$ssh = new Net_SSH2('127.0.0.1'); 
$ssh->login('username', 'password'); 

$ssh->setTimeout(5); 

$ssh->startSubsystem('vim'); 
echo $ssh->read(); 

이 vim 서브 시스템은 sshd_config에서 Subsystem vim /usr/bin/vim으로 정의됩니다.