protected void addKnownHosts() { // if ((config.sshKnowHostFile == null) || (config.sshKnowHostFile == null)) { logger.debug("addUserIDFiles(): No userConfigDir or knownHostFile configured"); return; } // Config director is for example" ~/.ssh/ String configDir = config.userConfigDir; String knownHostsFile = config.sshKnowHostFile; FSPath configPath; try { if (configDir != null) { configPath = FSUtil.getDefault().resolvePath(configDir); FSPath hostsFile = configPath.resolvePath(knownHostsFile); if (hostsFile.exists()) { jsch.setKnownHosts(hostsFile.getPathname()); } } } catch (IOException e) { logger.error( "addKnownHosts():Failed to read/acces known hosts file:{}/{} => IOException:{}", configDir, knownHostsFile, e); return; } catch (JSchException e) { logger.error( "addKnownHosts():Failed to add known hosts file:{}/{} => JSchException:{}", configDir, knownHostsFile, e); return; } }
protected void addUserIDFiles() { // if (config.userConfigDir == null) { logger.debug("addUserIDFiles(): No userConfigDir configured"); return; } // Config director is for example" ~/.ssh/ String configDir = config.userConfigDir; FSPath configPath; try { configPath = FSUtil.getDefault().resolvePath(configDir); } catch (IOException e) { logger.error( "addUserIDFiles():Failed to read/acces config directory:{} => IOException:{}", configDir, e); return; } String keys[] = config.privateKeys; if ((keys == null) || (keys.length <= 0)) { logger.info("addUserIDFiles():No private keys"); return; } for (String key : keys) { try { FSPath keyFile = configPath.resolvePath(key); if (keyFile.exists()) { logger.info("addUserIDFiles(): adding existing identity:{}\n", keyFile); jsch.addIdentity(keyFile.getPathname()); } else { logger.info("addUserIDFiles(): ignoring missing identity file:{}\n", keyFile); } } catch (IOException e) { logger.error("Got IOException accessing file:{}/{} => IOException:{}", configPath, key, e); } catch (JSchException e) { logger.error("Got JSchException adding file:{}/{} => JSchException:{}", configPath, key, e); } } }