1

我无法让 ColdFusion 连接到使用自签名证书的安全 FTP 服务器。连接只是超时。我已经在 FTP 客户端中测试了该设置并且它可以工作,但您必须接受“未知证书”。

该代码虽然不是很有帮助:

<cfftp
    connection="ftp"
    action="open"
    server="server"
    username="username"
    password="password"
    port="23456"
    passive="true"
    secure="true"
/>

这是我从 ColdFusion 得到的错误:

Verify your connection attributes: username, password, server, fingerprint, port, key, connection, proxyServer, and secure (as applicable). Error: Session.connect: java.net.SocketTimeoutException: Read timed out.

有谁知道是否可以接受证书?或者如果这甚至是问题?

4

1 回答 1

5

我不确定,cfftp但对于cfhttp具有自签名证书的站点的请求,您必须将其证书导入 ColdFusion 服务器上的 Java 密钥库。因此,您可能想尝试一下。

我总是以 DER 格式导出证书

导入的命令应该是这样的:

keytool -import -v -alias giveUniqueName -file filename.cer -keystore cacerts -storepass thePassword

这是验证导入证书的命令行:

keytool -list -v -keystore cacerts -alias giveUniqueName -storepass thePassword

我没有在这里包含密码,但我很确定你可以谷歌它。如果没有,给我发消息,我可以给你。

此外,您可能需要提供路径信息,具体取决于您从哪里运行 keytool 命令以及证书文件所在的位置。

另请注意,请确保您正在更新 ColdFusion 正在使用的正确 cacerts 文件。如果您在该服务器上安装了多个 JRE。您可以在“系统信息”下从管理员那里验证 JRE ColdFusion 是否正在使用。寻找Java Home线。

哦 - 你必须在导入后重新启动 ColdFusion。

CF10 更新

我发现一个论坛讨论(这里)谈论在 CF10 上安装证书。这些keytool命令在它们的示例中似乎略有不同。如果它与 CF9 有点不同,他们是这样说的:

keytool -importcert -alias giveUniqueName -trustcacerts -file filename.cer -keystore cacerts -storepass thePassword
Trust this certificate? [no]:  y

看起来验证命令行没有改变。

于 2013-10-03T16:03:51.310 回答