Я получаю этот сервер формы в виде строки, как показано ниже:
Код: Выделить всё
-----BEGIN OPENSSH PRIVATE KEY----- xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx -----END OPENSSH PRIVATE KEY-----
` cl = new SftpClient (хост, Integer.parseInt(selectedServerConfig.getSshPort()),selectedServerConfig.getUserName());
Код: Выделить всё
String key = selectedServerConfig.getSshKey();
cl.authKey(key,"");
и
Код: Выделить всё
public void authKey(String key, String pass) throws JSchException {
byte[] privateKey = key.getBytes();
jsch.addIdentity("identity_name", privateKey, null, pass != null ? pass.getBytes() : null);
// jsch.addIdentity(key, pass);
//jsch.addIdentity(keyPath, pass);
session = jsch.getSession(username, host, port);
//disable known hosts checking
//if you want to set knows hosts file You can set with jsch.setKnownHosts("path to known hosts file");
var config = new Properties();
config.put("StrictHostKeyChecking", "no");
session.setConfig(config);
session.connect();
// session.setTimeout(6000);
channel = (ChannelSftp) session.openChannel("sftp");
channel.connect();
}
Как это решить?
Здесь чего-то не хватает??
Подробнее здесь: https://stackoverflow.com/questions/786 ... sch-jschex