JSch java连接自动化 - 获取用户名/密码提示,即使在连接之前设置它们

时间:2016-06-20 09:56:45

标签: java session ssh automation jsch

我遇到与JSch连接的问题,有我用于建立会话的代码,我已经设置了登录名和密码,但是在执行之后,输入控制台仍然提示输入登录名和密码,无论我输入什么,它都会成功创建连接。

我如何解决这个问题,我希望该程序不需要任何人工干预,以便我可以自动执行它?

//有一个输出屏幕截图: http://www.hostingpics.net/viewer.php?id=932299jschproblem.png

public class jschConnect{

public static void main(String args[])
{   
 String host="x.x.x.x";
 String user="username";
 String password="
 try{

java.util.Properties config = new java.util.Properties(); 
config.put("StrictHostKeyChecking", "no");
JSch jsch = new JSch();

Session session=jsch.getSession(user, host, 22);
session.setPassword(password);
session.setConfig(config);

session.connect();
System.out.println("Connected");

}}}

1 个答案:

答案 0 :(得分:-1)

问题已解决,here is a similar issue

我刚添加此代码,从首选身份验证方法列表中删除Kerberos / GSSAPI(gssapi-with-mic):

session.setConfig(
    "PreferredAuthentications", 
    "publickey,keyboard-interactive,password");
相关问题