물마루하지만 문제는 다음과 같다 : 네트워크 곳으로 연결되어실행 원격 명령 내가 ssh 연결을 사용하여 원격 컴퓨터에서 일부 coommands를 실행해야 터널 SSH 및 자바
클라이언트 컴퓨터 (승리를 실행) 내가 서버와 원격 (두 번째 컴퓨터 (nix), 같은 네트워크에서) 볼 수있는 그것과 ssh 연결을 할 수있는 파일 (유닉스 실행)이 컴퓨터는이 네트워크에없는, 나는 단지 이것과 연결할 수 있습니다 두 번째 컴퓨터에서 동적 터널 ssh를 열어 퍼티를 사용하여이 연결을 구성한 다음 원격 파일에 액세스 할 수 있습니다.
는 다음과 같은 그림이 구조를, (방화벽이 seconda 기계처럼) 대표
나는 그래서 자바와 JSch 라이브러리와 몇 가지 테스트를 해봤 자동으로이 작업을 할 필요가
, 여기에 몇 가지 코드 :
/* Direccion y puerto del host local */
String host = "localhost";
int lport = 5040;
/* Direccion y puerto del host remoto*/
String rhost = "localhost";
int rport = 80;
/* Usuario y password para conectarse al servidor ssh*/
String user = "test";
String pwd = "test";
try{
JSch jsch=new JSch();
Session session=jsch.getSession(user, host, 22);
session.setPassword("test");
Properties config = new Properties();
config.put("StrictHostKeyChecking","no");
session.setConfig(config);
session.connect();
int assinged_port=session.setPortForwardingL(lport, rhost, rport);
System.out.println("localhost:"+assinged_port+" -> "+rhost+":"+rport);
내가 연결을 가지고 내가 대답은 두 번째 시스템에서하지 내가 예상 한대로 세 번째 시스템에서입니다 오브젝트 세션저기서 명령을 실행하지만 때, anot이 있다면, 내가 알고 싶습니다 이 작품을 만드는 데 도움이되는 그녀의 도서관이나 잘못된 JSch를 사용하고 있습니다.
나에게 예제를 줄 수 있니? – fers
성공적인 연결을 달성했지만 리소스 서버에서 명령을 실행할 수 없습니다. – fers
위키의 예제는 (몇 달 전) 작성했지만 저에게 효과적이었습니다. 물론 대상 서버에 대한 실행 권한이있는 계정이 필요합니다. –