我正在尝试使用 Java JSCH 库版本:0.1.55 和 jdk 19 连接亚马逊 ec2 实例。我可以通过 putty 和 cmd 手动登录,但是当我通过 Java 登录时,出现以下异常
com.jcraft.jsch.JSchException: Auth fail
at com.jcraft.jsch.Session.connect(Session.java:519) ~[jsch-0.1.55.jar:na]
at com.jcraft.jsch.Session.connect(Session.java:183) ~[jsch-0.1.55.jar:na]
at com.example.CloudRESTAPI.Service.CloudRESTServiceImpl.executeCommands(CloudRESTServiceImpl.java:136) ~[classes/:na]
at com.example.CloudRESTAPI.Controller.MyController.commandsCall(MyController.java:67) ~[classes/:na]
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) ~[na:na]
at java.base/java.lang.reflect.Method.invoke(Method.java:578) ~[na:na]
这是我通过 Jsch 连接到 ec2 实例的 Java 源代码
JSch jsch = new JSch();
jsch.addIdentity("D:\\Keys\\EC2CheckKey.pem");
Session session=jsch.getSession("ec2-user", "13.48.47.179", 22);
java.util.Properties config = new java.util.Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.connect(); // Exception Occuring
System.out.println("Connected");