title: com.jcraft.jsch.JSchException: Auth fail error
body: <p>Trying to connect to a host using ssh key auth. Below is my code:</p>
  
  <pre class="lang-java prettyprint-override"><code>package com.mkyong.common;
  
  import com.jcraft.jsch.Channel;
  import com.jcraft.jsch.ChannelSftp;
  import com.jcraft.jsch.JSch;
  import com.jcraft.jsch.Session;
  
  /**
   * 
   */
  public class UserAuthPubKey {
  
      /**
       * @param args the command line arguments
       */
      public static void main(String[] args) {
        try {
              JSch jsch = new JSch();
  
              String user = "XXXXXXXX";
              String host = "XXXXXXXX.XXXXXXX.com";
              int port = 22;
              String privateKey = "~/.ssh/WF_OPENSSH.ppk";
              String passphrase = "XXXXXXXXXXX";
  
              jsch.addIdentity(privateKey,passphrase);
              System.out.println("identity added ");
  
              Session session = jsch.getSession(user, host, port);
              System.out.println("session created.");
  
              java.util.Properties config = new java.util.Properties();
              config.put("StrictHostKeyChecking", "no");
              session.setConfig(config);
  
              session.connect();
              System.out.println("session connected.....");
  
              Channel channel = session.openChannel("sftp");
              channel.setInputStream(System.in);
              channel.setOutputStream(System.out);
              channel.connect();
              System.out.println("shell channel connected....");
  
              ChannelSftp c = (ChannelSftp) channel;
  
  //            String fileName = "test.txt";
  //            c.put(fileName, "./in/");
  //            c.exit();
  //            System.out.println("done");
  
          } catch (Exception e) {
              System.err.println(e);
          }
      }
  }
  </code></pre>
  
  <p>what change should i make here. On debugging the error seems to occur at <code>session.connect();</code> statement.  I am using a private key and a passphrase to connect.</p>