【发布时间】:2018-05-05 10:38:55
【问题描述】:
我正在尝试通过 java 中的 JSCH lib 连接 sftp 服务器,我对 java 中的公钥/私钥身份验证不太了解,我有一个供应商提供的 ppk 文件,我必须上传我的文件,下面是我的 java 代码,谁能指导我如何使用这个 public 与 SFTP 服务器进行身份验证
String privateKey = "E:\\csv_svb\\MTBC-SVB-PRVk.ppk";
JSch jsch = new JSch();
jsch.addIdentity(privateKey);
session = jsch.getSession(SFTPUSER, SFTPHOST,SFTPPORT);
// session.setPassword(SFTPPASS);
java.util.Properties config = new java.util.Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.connect();
channel = session.openChannel("sftp");
channel.connect();
out.writeln("Connected");
channelSftp = (ChannelSftp)channel;
channelSftp.cd(SFTPWORKINGDIR);
File f = new File(lRs.getString("SEND_FILE_PATH").toString());
channelSftp.put(new FileInputStream(f), f.getName());
out.writeln("File Uploaded to FTP Server Sucessfully.");
【问题讨论】:
-
您遇到了什么实际问题?你的代码有效吗?它会产生错误消息吗?错误说明了什么?
-
我收到错误
Auth Failed,我不知道如何使用供应商提供的 MTBC-SVB-PRVk.ppk 文件登录远程 SFTP -
你用的是什么版本的jsch?
-
使用 jsch-0.1.54
-
我如何使用此文件对远程 SFTP 服务器进行身份验证
标签: java authentication sftp jsch