Pessoal é o seguinte, estou tentando conectar em um servidor SFTP onde ele tem o SSH como conexão.
Fiz um sistema na qual consigo conectar normalmente em um SFTP usando a porta 22 ou em um FTP usando a porta 21 normalmente, mas não sei o que fazer para conectar em um FTP que usa SSH na conexão. O erro que tenho é o seguinte:
Usando outros programas consigo conectar no FTP normalmente. Mas preciso fazer um sistema personalizado aqui para a empresa.
Estou usando a API commons-net da Apache para isso.
Tenho o seguinte erro ao tenta estabelecer a conexão:
[quote]org.apache.commons.net.MalformedServerReplyException: Could not parse response code.
Server Reply: SSH-2.0-OpenSSH_4.3
at org.apache.commons.net.ftp.FTP.__getReply(FTP.java:315)
at org.apache.commons.net.ftp.FTP.connectAction(FTP.java:364)
at org.apache.commons.net.ftp.FTPClient.connectAction(FTPClient.java:540)
at org.apache.commons.net.SocketClient.connect(SocketClient.java:178)
[/quote]
um trecho do código onde tento estabelecer a conexão:
[code] try {
// tenta conectar no servidor ftp enviado
logger.info("Estabelecendo conexão com o ftp server: " + hostFtp+" .Porta: " + iftpPort);
ftp.connect(hostFtp,iftpPort);
// verifica se conectou com sucesso!
if (FTPReply.isPositiveCompletion(ftp.getReplyCode())) {
logger.info("Conexão estabelecida com sucesso no ftp server: " + hostFtp+" .Porta: " + iftpPort);
try {
statusLogin = ftp.login(login, senha); // login, senha
ftp.changeWorkingDirectory(ftpDirectory);//muda para o diretorio desejado
} catch (IOException ioex) {
logger.error(
"Erro ao tentar se autenticar no ftp server: " +hostFtp+" .Porta: " + iftpPort,
ioex);
}
if (statusLogin) {
logger
.info("Autenticação realizada com sucesso no ftp server: "
+ hostFtp+" .Porta: " + iftpPort);
} else {
logger
.info("Autenticação negada no ftp server: "
+ hostFtp+" .Porta: " + iftpPort);
}
} else {
logger.info("Conexão RECUSADA com o ftp server: " + hostFtp+" .Porta: " + iftpPort);
}
} catch (SocketException skex) {
logger.error("Erro ao tentar estabelecer conexão com ftp server: " +hostFtp+" .Porta: " + iftpPort,
skex);[/code]
Se alguém puder me ajudar…
Grato,