Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Jsch会话配置_Java_Ssh_Jsch_Ssh Tunnel - Fatal编程技术网

Java Jsch会话配置

Java Jsch会话配置,java,ssh,jsch,ssh-tunnel,Java,Ssh,Jsch,Ssh Tunnel,我的ssh配置文件中有如下内容。我必须为我的Jsch会话设置相同的配置。Jsch支持如下设置配置 session.setConfig(String name, String value); session.setConfig(HashTable config); session.setConfig(Properties config); 但似乎没有一个不支持分层嵌套设置(即仅适用于一系列主机的设置) 欢迎其他建议,如创建SSH隧道或其他建议。您可能误解Jsch是SSH命令行实用程序的java版

我的ssh配置文件中有如下内容。我必须为我的Jsch会话设置相同的配置。Jsch支持如下设置配置

session.setConfig(String name, String value);
session.setConfig(HashTable config);
session.setConfig(Properties config);
但似乎没有一个不支持分层嵌套设置(即仅适用于一系列主机的设置)


欢迎其他建议,如创建SSH隧道或其他建议。

您可能误解Jsch是
SSH
命令行实用程序的java版本。Jsch是SSH协议的一个实现。您可以使用它来构建命令行实用程序,但它并没有实现命令行实用程序中与协议本身无关的所有功能

列出Jsch接受的配置选项。有一件事你会注意到,这个列表看起来一点也不像。如果您想支持ssh风格的选项,您可能会发现有必要编写自己的代码来解释和实现它们

要实现特定于主机的选项,您的客户端程序必须知道它连接到哪个主机,以及哪些选项应应用于该主机


关于默认用户,远程用户名是调用函数打开SSH会话时代码将提供给Jsch的参数。如果您想拥有默认的用户功能,就必须将该功能写入代码。

您在这里要求什么——如何使用jsch执行与proxycommand等效的操作,或者如何使用jsch执行特定于主机的配置?@Kenster二者兼而有之。。设置特定于主机的命令,包括设置ProxyCommand和设置默认用户
Host git.*
  User git
  ProxyCommand ssh -q github.example.com nc git %p