java - 如何让 SSHJ 在非标准端口上发起出站 SFTP?

标签 java sftp sshj

我正在这样做,它工作正常,但我希望能够在 22 以外的端口上访问 sshd。

 final SSHClient ssh = new SSHClient();
 ssh.addHostKeyVerifier( SFTP_KEY_FINGERPRINT );

 ssh.connect( SFTP_SERVER_HOSTNAME );
 try {
     ssh.authPassword( SFTP_USER ,  SFTP_PASSWORD );
     final String src = fileToFtp.getFileName().toString();
     final SFTPClient sftp = ssh.newSFTPClient();
     try {
          sftp.put(new FileSystemFile(src), "/");
          success = true;
     } finally {
          sftp.close();
     }
   } finally {
     ssh.disconnect();
   }

最佳答案

ssh.connect() 有一个重载版本:

ssh.connect(字符串主机名,int端口)

如果您使用此版本,您可以指定要连接的端口。

关于java - 如何让 SSHJ 在非标准端口上发起出站 SFTP?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25318056/

相关文章:

java - 反转字符串变量

java - Java中限制泛型二叉搜索树的类型参数的混淆解释

python - 使用python将文件上传到SFTP

c# - 使用 SharpSsh 连接到 SFTP 时为 "The requested name is valid, but no data of the requested type was found"

java - 从 sshj 开始

java - 如何在子类中访问父类的变量

java - while 循环条件下找不到符号错误

ssh - 从 windows 到 centos 的安全、预定传输

java - 在 sshj v0.5.0 中上传和下载文件时设置文件过滤器

java - 来自文件的公钥验证的 SSHJ 示例