ant - SCP/SSHEXEC - 连接尝试次数

标签 ant connection scp

我在 ant build.xml 中使用 scp 任务,然后使用 sshexec。我从屏幕上的密码字段中获取密码值。在任务成功完成之前,用户无法检查密码是否正确。

因此,如果输入的密码不正确,Scp/sshexec是否会重试连接?有没有什么句柄可以限制连接重试次数?

最佳答案

sshexecscp 任务使用 Java 安全通道 JSch ,参见ant手册library dependencies .
我遇到了类似的问题,因为 JSch 尝试对 com.jcraft.jsch.JSch 类中配置的 6 次进行身份验证。当使用错误的密码时,用户帐户被锁定。
只需像这样修补 com.jcraft.jsch.JSch 类即可:

来自:

config.put("MaxAuthTries", "6");

至:

config.put("MaxAuthTries", "3");

意味着 JSch 只会尝试 3 次进行身份验证。

-- 评论后编辑--

  1. 下载 JSch 发行版 zip here - 最新版本是0.1.51

  2. 解压

  3. 打开jsch-0.1.51/src/main/java/com/jcraft/jsch/JSch.java

  4. 更改第 124 行
    来自
    config.put("MaxAuthTries", "6");

    config.put("MaxAuthTries", "3");

  5. 保存

  6. 根据您的操作系统运行 jsch-0.1.51/build.bat 或 build.sh

  7. 使用jsch-0.1.51/dist/lib/jsch-0.1.5.jar

关于ant - SCP/SSHEXEC - 连接尝试次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22611440/

相关文章:

java - Ivy 无法解析依赖项 : What to check, 怎么办?

linux - 如何解决字符编码问题

linux - SCP 在两个远程服务器之间传输文件而不提示输入密码

java - 当报告任务中包含 jar 时,Jcoco 不会生成报告

java - 在 JSF 项目中包含 JPA 项目

python - 从 Python 管理与 redis 的连接

java小程序socket连接问题

android - 无法从 Android 连接到 Firebird 服务器

linux - pscp中的“ignoring potentially dangerous server-supplied filename”

java - Ant 与 JavaMail : authentication required