JSCH Auth尝试FTP文件失败

时间:2017-12-07 13:56:45

标签: java jsch

我支持遗留Web应用程序,其中一个功能是使用JSCH将SFTP附加到另一台服务器。我们的服务器操作团队最近在DSA密钥的基础上向目标服务器添加了一个新的RSA密钥,现在我们正在接收com.jcraft.jsch.JSchException:Auth fail错误消息。这是代码:

public final static void sftpFileToRemoteDirectory(
        String clientConnect, 
        int clientPort, 
        String clientLogin, 
        String encryptedPassword, 
        String path, 
        String remoteFile, 
        byte[] file) 
throws Exception
{
    JSch jsch = new JSch();         
    Session session = null; 

    ByteArrayInputStream baInputStream = null;

    try {             
        //using port 24

        session = jsch.getSession(clientLogin, clientConnect, clientPort);            
        session.setConfig("StrictHostKeyChecking", "no");       

        // Decrypt password string and set password
        String saPwd = new EncryptionHelper().decryptString(encryptedPassword);
        session.setPassword(saPwd);             

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

        ChannelSftp sftpChannel = (ChannelSftp) channel;    
        sftpChannel = (ChannelSftp)channel;

        System.out.println("Changing to FTP remote dir: " +
                path);
        sftpChannel.cd(path); 

        //get ByteArrayInputStream for file
        byte b[] = file;
        baInputStream = new ByteArrayInputStream(b);

        //Put file on server
        System.out.println("Moving " + remoteFile + " to " + path);
        sftpChannel.put(baInputStream, remoteFile); 

        sftpChannel.exit();             

    } finally {
        try {
            baInputStream.close();

            if (session != null) {
                session.disconnect();
            }
        } catch (Exception e) {
            // Don't throw exception caused by closing stream
            e.printStackTrace();
        }
    }
}

我找到了this post that seemed related。我们仔细检查并确保目标服务器位于已知主机列表中。这仅包括服务器名称,FQDN和FQDN加上端口号,但没有运气。我可以对代码做出哪些更改?

错误消息:

  

20:40:37,639 ERROR [stderr](ajp - 127.0.0.1-8009-20)引起:com.jcraft.jsch.JSchException:Auth fail

     

20:40:37,639错误[stderr](ajp - 127.0.0.1-8009-20)at com.jcraft.jsch.Session.connect(Session.java:461)

     

20:40:37,639错误[stderr](ajp - 127.0.0.1-8009-20)at com.jcraft.jsch.Session.connect(Session.java:154)

     

20:40:37,639 ERROR [stderr](ajp - 127.0.0.1-8009-20)at com.lmig.requestit.utils.RequestITFileManagementUtils.sftpFileToRemoteDirectory(RequestITFileManagementUtils.java:54)

     

20:40:37,639 ERROR [stderr](ajp - 127.0.0.1-8009-20)at com.lmig.requestit.modules.desktop.automation.Form2039Automation.automateOutlookPhotoMoveFileToPhoto(Form2039Automation.java:109)<< >      

20:40:37,640 ERROR [stderr](ajp - 127.0.0.1-8009-20)... 27更多

以下是来自JSCH的日志:

  

13:41:10,184 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:连接到&#34;服务器&#34; 24号港口

     

13:41:10,188 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:已建立连接

     

13:41:10,190 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:远程版本字符串:SSH-2.0-1.07 FlowSsh:WinSSHD 5.20

     

13:41:10,190 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:本地版本字符串:SSH-2.0-JSCH-0.1.44

     

13:41:10,190 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:CheckCiphers:aes256-ctr,aes192-ctr,aes128-ctr,aes256-cbc,aes192-cbc,aes128- CBC,3DES-CTR,ARCFOUR,arcfour128,arcfour256

     

13:41:10,231 INFO [stdout](ajp - 127.0.0.1-8009-7)INFO:aes256-ctr不可用。

     

13:41:10,231 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:aes192-ctr不可用。

     

13:41:10,232 INFO [stdout](ajp - 127.0.0.1-8009-7)INFO:aes256-cbc不可用。

     

13:41:10,232 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:aes192-cbc不可用。

     

13:41:10,232 INFO [stdout](ajp - 127.0.0.1-8009-7)INFO:arcfour256不可用。

     

13:41:10,232 INFO [stdout](ajp - 127.0.0.1-8009-7)INFO:SSH_MSG_KEXINIT已发送

     

13:41:10,233 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:收到SSH_MSG_KEXINIT

     

13:41:10,235 INFO [stdout](ajp - 127.0.0.1-8009-7)INFO:kex:server-&gt; client aes128-ctr hmac-md5 none

     

13:41:10,235 INFO [stdout](ajp - 127.0.0.1-8009-7)INFO:kex:client-&gt; server aes128-ctr hmac-md5 none

     

13:41:10,261 INFO [stdout](ajp - 127.0.0.1-8009-7)INFO:SSH_MSG_KEXDH_INIT已发送

     

13:41:10,262 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:期待SSH_MSG_KEXDH_REPLY

     

13:41:10,285 INFO [stdout](ajp - 127.0.0.1-8009-7)INFO:ssh_rsa_verify:signature true

     

13:41:10,299 INFO [stdout](ajp - 127.0.0.1-8009-7)警告:永久添加&#39; server&#39; (RSA)到已知主机列表。

     

13:41:10,299 INFO [stdout](ajp - 127.0.0.1-8009-7)INFO:SSH_MSG_NEWKEYS已发送

     

13:41:10,299 INFO [stdout](ajp - 127.0.0.1-8009-7)INFO:SSH_MSG_NEWKEYS收到

     

13:41:10,312 INFO [stdout](ajp - 127.0.0.1-8009-7)INFO:发送了SSH_MSG_SERVICE_REQUEST

     

13:41:10,312 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:收到SSH_MSG_SERVICE_ACCEPT

     

13:41:10,314 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:可以继续的身份验证:gssapi-with-mic,publickey,keyboard-interactive,password

     

13:41:10,314 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:下一个身份验证方法:gssapi-with-mic

     

13:41:10,330 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:可以继续的身份验证:publickey,keyboard-interactive,password

     

13:41:10,330 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:下一个身份验证方法:publickey

     

13:41:10,333 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:可以继续的身份验证:密码

     

13:41:10,333 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:下一个身份验证方法:密码

     

13:41:13,345 INFO [stdout](ajp - 127.0.0.1-8009-7)信息:断开&#34;服务器&#34; 24号港口

0 个答案:

没有答案