我目前正在制作一个Java应用程序,它将执行远程Windows机器的命令(来自命令提示符)。
为了开发这个,我尝试了以下:
使用Jsch库,应用程序在连接到 Unix机器时运行良好,我能够使用'prstat -a'命令获取进程列表,但是当我尝试使用 Windows机器,它给了我 ConnectException (超时)
private final static String HOSTNAME = "SOMECOMPUTERNAME.XXX.XXX.XXX.COM";//
private final static String USERNAME = "SOMEUSERNAME";
private final static String PASSWORD = "SOMEPASSWORD";
private final static int PORT = 22;
public static void main(String[] args) {
JSch jscc = new JSch();
try {
Session session = jscc.getSession(USERNAME, HOSTNAME, PORT);
session.setPassword(PASSWORD);
Properties localProperties = new Properties();
localProperties.put("StrictHostKeyChecking", "no");
session.setConfig(localProperties);
session.connect(60000);
System.out.println("Session connected");
} catch (JSchException e) {
e.printStackTrace();
}
}
目标机器信息:
请指导一下,如果没有您推荐的方法,可以使用Jsch库吗?
以下事项你可以假设:
欢迎任何建议。
此致
ICR
答案 0 :(得分:0)
默认情况下,Windows没有安装SSH。您将需要一个用于Windows的SSH客户端。
我更喜欢OpenSSH ....它是免费的,而且效果很好