java怎么实现ssh远程访问

70次阅读
没有评论

共计 1172 个字符,预计需要花费 3 分钟才能阅读完成。

要实现 SSH 远程访问,需要使用 Java 的 SSH 库。以下是使用 JSch 库实现 SSH 远程访问的示例代码:
首先,需要在项目中引入 JSch 库的依赖。如果使用 Maven,可以在 pom.xml 文件中添加以下依赖:



com.jcraft
jsch
0.1.55

然后,可以使用以下代码实现 SSH 远程访问:

import com.jcraft.jsch.ChannelExec;
import com.jcraft.jsch.JSch;
import com.jcraft.jsch.Session;
public class SSHExample {public static void main(String[] args) {
String host = "hostname";
String username = "username";
String password = "password";
int port = 22;
try {JSch jsch = new JSch();
Session session = jsch.getSession(username, host, port);
session.setPassword(password);
session.setConfig("StrictHostKeyChecking", "no");
session.connect();
ChannelExec channel = (ChannelExec) session.openChannel("exec");
channel.setCommand("ls -l");
channel.connect();
java.io.InputStream in = channel.getInputStream();
byte[] tmp = new byte[1024];
while (true) {while (in.available() > 0) {int i = in.read(tmp, 0, 1024);
if (i  0) {continue;}
System.out.println("Exit Code:" + channel.getExitStatus());
break;
}
try {Thread.sleep(1000);
} catch (Exception e) {e.printStackTrace();
}
}
channel.disconnect();
session.disconnect();} catch (Exception e) {e.printStackTrace();
}
}
}

上述代码中,通过 JSch 库创建一个 SSH 会话,并使用会话执行命令(此处示例为执行 ls -l 命令)。将输出结果打印到控制台并打印命令的退出码。
请根据实际情况替换 hostusernamepassword参数以及命令。确保远程 服务器 上已经安装了 SSH 服务,并且可以使用提供的用户名和密码进行访问。

丸趣 TV 网 – 提供最优质的资源集合!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-12-20发表,共计1172字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)