java连接sftp断断续续出现Auth fail错误

 @Test
    public void loginSftp(){

            try {
                JSch jsch = new JSch();
                //地址,用户名,端口22
                session = jsch.getSession(username, host, port);
                session.setPassword(password);
                Properties config = new Properties();
                config.put("StrictHostKeyChecking", "no");
                session.setConfig(config);
                //连接sftp
                session.connect();
                Channel channel = session.openChannel("sftp");
                channel.connect();
                sftp = (ChannelSftp) channel;
                download();
            } catch (JSchException e) {
                e.printStackTrace();
            }
        }

登录代码如上,网上一大堆。

通过java连接sftp服务器的时候,经常会出现Auth fail的错误。。但不是一直出现,如果发10次登陆的请求,反正就会出现好几次登陆失败,又有好几次登陆成功的。所以用户名,密码,配置这些看上去都没有问题。

因为是内网开发,且sftp服务方是另外一个团队的,只要能调用通了,觉得问题在我这边。但一个简单的登录能有啥问题呀?

我在家搭了sftp服务器,随便怎么调用,都不会出现认证失败的问题。如果是一直失败还觉得哪里整错了,但是这个是偶尔失败,偶尔成功,在网上实在找不到答案。恳请有经验的大佬指导一波

 

 

问题已经解决,原因是对方服务器是多台,映射出来一个vip的f5地址,其中有一台机器没有进行授权,导致登录不上。

Caused by: com.jcraft.jsch.JSchException: Auth fail
    at com.jcraft.jsch.Session.connect(Session.java:464)
    at com.jcraft.jsch.Session.connect(Session.java:158)
    at org.apache.commons.vfs.provider.sftp.SftpClientFactory.createConnection(SftpClientFactory.java:210)
    ... 111 more

报错信息如图