【问题标题】:JSchException: Auth fail and fingerprintJSchException:身份验证失败和指纹
【发布时间】:2014-01-14 03:14:42
【问题描述】:

我正在尝试从 Java 脚本连接到我的 SFTP 服务器。 我出于我的目的使用 JSch lib。用户名、密码和主机名都正确,但我收到:Auth fail 错误。

我也尝试在 session.connect() 之前添加以下行,但问题仍然存在。

java.util.Properties config = new java.util.Properties(); 
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);

我必须在 knownhosts.txt 中添加什么?我的服务器密钥的指纹?

public static void upload(ArrayList<File> a) {
try{
  JSch jsch = new JSch();

  jsch.setKnownHosts("knownhosts.txt");

  Session session = jsch.getSession("username", "hostname", 22);
  session.setPassword("mypassword");

  session.connect();

  Channel channel = session.openChannel("sftp");
  channel.connect();
  ChannelSftp channelSftp = (ChannelSftp) channel;

  channelSftp.cd("/var/www/");

  for(File object: a){
      channelSftp.put(new FileInputStream(object), object.getName(), channelSftp.OVERWRITE);
  }
  channelSftp.exit();
 session.disconnect();

 } catch (Exception ex) {
   ex.printStackTrace();
  }         
 }

你有什么建议吗?提前致谢!

【问题讨论】:

    标签: java jsch


    【解决方案1】:

    您的网络/SMTP 服务器是否支持 IP6?如果您的客户端支持 IP6,Java 的更高版本默认为 IP6,但许多 SMTP 服务器配置在 IP4 上。 See this article here for Sending email using JSP for directions on configuring your JVM to force IP4. 需要在JVM上设置,因为它是实例化的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-08-08
      • 2014-01-24
      • 2017-11-27
      • 1970-01-01
      • 2015-05-06
      • 1970-01-01
      相关资源
      最近更新 更多