如何处理 Camel FTP 的“主机尝试数据连接 x.x.x.x 与服务器 y.y.y.y 不同”错误?

2024-01-07

我正在尝试使用 Camel FTP Producer 将文件发送到第三方 ftp 服务器(似乎由 Amazon 托管),并且遇到了一个问题Writing File failed with: File operation failed... Host attempting data connection x.x.x.x is not the same as server y.y.y.y我以前没见过。

生产者配置为被动模式,根据 TRACE 级别的日志,该模式已启用。 (尽管错误消息听起来更多地与活动模式问题相关)

The y.y.y.yIP 地址是 nslookup 为目标域列出的地址之一,因此该位有意义。但是,那x.x.x.xIP 与不同的 Amazon 托管服务器相关,因此我推测已经执行了某种交接或负载平衡,而 FTP 客户端不喜欢这样。

是否有某种方法可以配置 Camel FTP 以允许此操作(我假设这是一项安全功能),或者被动模式是否应该允许此操作?

我对 ftp 服务器提供商没有任何影响,因此不幸的是,除了我的客户端选项之外,我无法更改任何内容。

感谢您的关注!


经过一番挖掘和 grep Apache Commons FTP 的源代码后,出现问题的消息是由客户端中的验证引起的,该验证检查被动模式连接是否与初始服务器连接相同。

鉴于这似乎是一个负载平衡系统,被动模式数据连接是与目标 IP 不同的 IP,因此验证失败。

可以使用 Camel FTP 通过创建 FTPClient 的特定实例并设置删除验证来修复此问题。

FTPClient ftp = new FTPClient();
ftp.setRemoteVerificationEnabled(false);
registry.put("FTPClient", ftp);

然后在 FTP 的 URI 中引用该对象

ftp://user@host:21/path?password=xxxx&passiveMode=true&tempPrefix=part.&ftpClient=#FTPClient

显然,通过禁用此远程验证测试,您会更容易受到 FTP 数据被重定向或拦截的影响,并且您的数据会被发送到您不希望的地方,但我猜您是否担心您不会使用首先仍然使用未加密的 FTP。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何处理 Camel FTP 的“主机尝试数据连接 x.x.x.x 与服务器 y.y.y.y 不同”错误? 的相关文章

  • 用 @DataJpaTest 注释的测试不是用 @Autowired 注释的自动装配字段

    我有一个 Spring Boot 应用程序 其中包含 Spring Data Jpa 存储库 我需要围绕这个存储库运行单元 或组件 测试 我对 Spring Data Jpa 没有太多经验 这是我的测试 这很简单 我无法让它通过 impor
  • java.lang.Class: 在 java 程序中初始化 log4j 属性文件时出错

    我正在尝试使用 log4j 运行独立的 java 程序 但在调试时收到以下消息 控制台上没有 log4j 相关日志 log Logger 1343 java lang Class ERROR in 18b4aac2 有人可以建议这里出了什么
  • 如何对 IntStream 进行逆序排序

    我正在使用 txt 文件读取数字BufferedReader 我想颠倒该流中元素的顺序 以便在收集它们时 它们将从最高到最低排列 我不想在构建数组后进行排序 因为我不知道其中可能有多少元素 我只需要最高的 N 个元素 in new Buff
  • Java 泛型/类型调度问题

    考虑以下程序 import java util List import java util ArrayList public class TypeTest public static class TypeTestA extends Type
  • Java 重写 hashCode() 得到 StackOverflowError

    所以我不太熟悉重写 hashCode 并且我似乎在 hashCode 方法中以某种方式进行了一些无限递归 这是我的场景 我有一个 DuplicateCache 类 它是一个缓存对象 用于检查系统中的重复对象 我有一个静态内部类 Duplic
  • cucumber-junit-platform-engine 中的功能文件发现

    In cucumber junit我使用的库 CucumberOptions定义功能文件位置 package com mycompany cucumber import cucumber api CucumberOptions import
  • 想要开发像 Facebook 这样的网站 - 处理数百万个请求 - 高性能 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我想用 Java 开发一个像 Fac
  • @EnableTransactionManagement 的范围是什么?

    我试图了解正确的放置位置 EnableTransactionManagement多个 JavaConfig 上下文的情况下的注释 考虑以下场景 我在 JPAConfig java 和 AppConfig java 中有 JPA 配置以及一组
  • Install4j:如何在安装结束时执行命令行 java -jar filename.jar

    在 Intall4j 中 在安装结束时 我只想通过执行如下命令行来初始化某些内容 java jar filename jar 我怎样才能归档这个任务install4j Thanks 将 运行可执行文件或批处理文件 操作添加到 安装屏幕 并设
  • 具有多种值类型的 Java 枚举

    基本上我所做的是为国家编写一个枚举 我希望不仅能够像国家一样访问它们 而且还能够访问它们的缩写以及它们是否是原始殖民地 public enum States MASSACHUSETTS Massachusetts MA true MICHI
  • 覆盖 MATLAB 默认静态 javaclasspath 的最佳方法

    MATLAB 配置为在搜索用户可修改的动态路径之前搜索其静态 java 类路径 不幸的是 静态路径包含相当多非常旧的公共库 因此如果您尝试使用新版本 您可能最终会加载错误的实现并出现错误 例如 静态路径包含 google collectio
  • SSH 主机密钥指纹与模式 C# WinSCP 不匹配

    我尝试通过 WinSCP 使用 C 连接到 FTPS 服务器 但收到此错误 SSH 主机密钥指纹 与模式不匹配 经过大量研究 我相信这与密钥的长度有关 当使用 服务器和协议信息 下的界面进行连接时 我从 WinSCP 获得的密钥是xx xx
  • tomcat 过滤所有 web 应用程序

    问题 我想对所有网络应用程序进行过滤 我创建了一个过滤器来监视对 apache tomcat 服务器的请求 举例来说 它称为 MyFilter 我在 netbeans 中创建了它 它创建了 2 个独立的目录 webpages contain
  • 从 html 页面和 javascript 调用 java webservice

    我正在尝试从 javascript 调用 java 实现的 Web 服务 使用 NetBeans IDE 我读过很多关于 jQuery 和 AJAX 的内容 但我似乎无法掌握它 假设我的 Web 服务 WSDL 位于 http localh
  • 在 Selenium WebDriver 上如何从 Span 标签获取文本

    在 Selenium Webdriver 上 如何从 span 标记检索文本并打印 我需要提取文本UPS Overnight Free HTML代码如下 div id customSelect 3 class select wrapper
  • 如何移动图像(动画)?

    我正在尝试在 x 轴上移动船 还没有键盘 我如何将运动 动画与boat png而不是任何其他图像 public class Mama extends Applet implements Runnable int width height i
  • 重写Object类的finalize()方法有什么用?

    据我所知 在java中如果我们想手动调用垃圾收集器 我们可以执行System gc 1 我们在重写的finalize 方法中做了哪些操作 2 如果我们想手动调用JVM垃圾收集器 是否需要重写finalize 方法 我们在重写的 Finali
  • 从一个文本文件中获取数据并将其移动到新的文本文件

    我有一个文件 里面有数据 在我的主要方法中 我读入文件并关闭文件 我调用另一种方法 在原始文件的同一文件夹内创建一个新文件 所以现在我有两个文件 原始文件和通过我调用的方法生成的文件 我需要另一种方法 从原始文件中获取数据并将其写入创建的新
  • MongoDB Java 驱动程序:MongoCore 驱动程序与 MongoDB 驱动程序与 MongoDB 异步驱动程序

    MongoDB Java 驱动程序有三种不同的驱动程序选项 核心驱动 MongoDB 驱动程序 MongoDB 异步驱动程序 The 驱动程序描述页面 https docs mongodb org ecosystem drivers jav
  • 使用 eclipse IDE 配置 angularjs

    我想开始使用 AngularJs 和 Java Spring 进行开发 我使用 Eclipse 作为 IDE 我想配置我的 Eclipse 以使这些框架无缝工作 我知道我可能要求太多 但相信我 我已经做了很多研究 你们是我最后的选择 任何帮

随机推荐

  • 如何隐藏每组的最后一行?

    使用VB 6和Crystal Report 8 5 如何隐藏每组的最后一行 我需要使用 Crystal Report 公式吗 我不想显示每个组的最后一行 这个公式该怎么写 应该写在哪里 您可以为要作为分组依据的字段创建一个组 然后在部分专家
  • 单元测试文件 I/O

    通读 Stack Overflow 上现有的单元测试相关线程 我找不到关于如何对文件 I O 操作进行单元测试的明确答案 我最近才开始研究单元测试 之前已经意识到单元测试的优点 但很难习惯先编写测试 我已经将我的项目设置为使用 NUnit
  • 插入项目或将它们添加到排序列表后对列表进行排序是否更快

    如果我有一个排序列表 比如快速排序来排序 如果我有很多值要添加 那么最好暂停排序 并将它们添加到末尾 然后排序 或者使用二进制排正确地放置项目 同时添加它们 如果项目是随机的 或者已经或多或少按顺序排列 会有什么不同吗 如果您添加了足够的项
  • Python串口监听器

    我已经开始使用 PySerial 编写一些代码来向串行设备发送和接收数据 到目前为止 我只致力于从终端启动事务并接收来自串行设备的响应 pseudo main loop message get message send to serial
  • 如何使用 psql 命令行界面显示表中的数据?

    有没有办法使用 psql 命令行界面显示表中的所有内容 我可以用 list显示所有数据库 d显示所有表格 但是如何显示表格中的所有数据呢 较新版本 从 8 4 发行说明中提到 https www postgresql org docs re
  • android proguard,跳过jar

    我想知道是否可以跳过 proguard 中的 jar 以便它不会混淆它们 我正在尝试使用以下命令来做到这一点 libraryjars myjar jar 但我的代码一直存在问题 我正在尝试导出一个具有适用于 Android 的 javama
  • 有番石榴概述吗?

    Guava 库很强大 但我不确定这个库的所有可能性是什么 我发现了一些有趣的教程 例如http scaramoche blogspot com search label guava http scaramoche blogspot com
  • 如何修复响应式数据表的最后一列

    我有一个数据表 最后一列是两个按钮 我正在实现响应式数据表 但我需要最后一列 列 Opciones 不隐藏 并且始终显示 无论其他列如何 如果您需要更多信息 请告诉我 HTML ASP NET 视图 model PagedList IPag
  • Azure DevOps - 自定义构建任务可见性

    我正在学习 Azure DevOps 我有兴趣创建一个自定义构建任务 https learn microsoft com en us azure devops extend develop add build task view vsts
  • 计算两个字符串之间的差异

    我试图计算两个导入的字符串 seq1 和 seq2 导入代码未列出 之间的差异数量 但在运行程序时没有得到任何结果 我希望输出显示为 2 个差异 之类的内容 不知道我哪里错了 def difference seq1 seq2 count 0
  • 计算另一个模型 Django 的点赞数

    实现一个用户可以喜欢宠物的相似模型 如果用户按下like isLike将为true 而like则为true isLike为false 模型 class pet models Model name models CharField max l
  • 如何将 printf 的输出存储在变量中并格式化? [复制]

    这个问题在这里已经有答案了 我想存储的输出printf在变量中进行格式化 但由于某种原因它删除了格式化 这是正确的输出 printf 40s 8s 9s 7s File system Free Refquota Free File syst
  • 如何使用 jQuery 动态地从具有相同名称的多个输入、输入字段中获取值?

    我想通过单击按钮动态添加金额 数量 小计字段作为发票项目 但问题是当我想获得的价值quantity and amount每次计算输入字段值时 由于 id 名称相同 我无法使用 jquery 获取该值 如何获取动态字段值来计算小计 这是代码
  • Zoomooz ZoomContainer 移开

    我正在尝试使用 Zoomooz jquery mouse wheel 和 jquery kinetic js 在表单设计器中实现自由拖动 滚动功能的缩放 这是该功能的演示 http jsfiddle net mVf8Z http jsfid
  • 将输入流转换为文件输入流

    我读过这篇文章如何将InputStream转换为FileInputStream https stackoverflow com questions 2353057 how to convert inputstream to fileinpu
  • 从 Google 趋势下载 .csv 文件

    我希望从我通过代码创建的网址下载 Google 趋势数据 这些 URL 当放入浏览器 我使用 Firefox 时会显示一个保存提示 我可以在浏览浏览器时选择打开或保存文件 但是 我希望通过代码获得包含 Google 趋势数据的同一个 csv
  • Python IDLE 相当于 R 中的 CTRL-R

    如果您在 Windows 版本的 R 中打开了一个脚本 则可以通过按 CTRL R 相信在苹果版本中是 command enter 在 shell 中运行一行 或突出显示的代码部分 IDLE 有类似的功能吗 非常感谢 No 在IDLE的快捷
  • Scala:如何按元组的第一个元素合并列表

    假设我有一个清单 A a A b A c B a B d 我如何将该列表变成 A a b c B a d 具有单一功能 Thanks The groupBy http www scala lang org api 2 12 x scala
  • 真正删除 XMLParser Object Groovy 中的节点

    如何通过 XMLParser 真正删除节点 x
  • 如何处理 Camel FTP 的“主机尝试数据连接 x.x.x.x 与服务器 y.y.y.y 不同”错误?

    我正在尝试使用 Camel FTP Producer 将文件发送到第三方 ftp 服务器 似乎由 Amazon 托管 并且遇到了一个问题Writing File failed with File operation failed Host