in deploy-runner-agent/src/main/java/jetbrains/buildServer/deployer/agent/ssh/SSHSessionProvider.java [240:254]
private Session initSessionUploadedKey(String username, String password, String keyId, JSch jsch) throws JSchException {
final TeamCitySshKey key = mySshKeyManager.getKey(keyId);
if (key == null) {
throw new JSchException("Failed to load ssh key id=[" + keyId + "]");
}
try {
jsch.addIdentity(key.getName(), key.getPrivateKey(), null, StringUtil.isNotEmpty(password) ? password.getBytes("UTF-8") : new byte[0]);
} catch (UnsupportedEncodingException e) {
myLog.error("Wrong encoding name", e);
}
final Session session = jsch.getSession(username, myHost, myPort);
session.setConfig("PreferredAuthentications", "publickey");
return session;
}