Authorize.net gem TLS 1.2兼容性

问题描述 投票:0回答:1

我正在使用authorizent gem 1.8.2

我想知道它是否兼容TLS 1.2。

ruby authorize.net
1个回答
1
投票

对于authorize.net的TLS升级,它基于您服务器的OpenSSL库版本。要查看您是否兼容,请运行以下命令:

openssl s_client -connect secure.authorize.net:443

如果您收到如下所示的单行错误消息:

6641:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:s23_clnt.c:586:

那你就不兼容了。要修复,您需要在Linux中更新OpenSSL或从此处获取最新的OpenSSL - https://www.openssl.org/source/

对于构建,您可能需要配置如下:

export CFLAGS=-fPIC
./config shared
make
make install     # this one as root

理论上,在更新之后,最好从源代码重建ruby。然而,如果没有,你可以做一个技巧:

创建一个新文件,我在ruby的同一目录中调用了我的ruby_openssl。该文件应具有以下内容:

#!/bin/sh
export LD_PRELOAD=/lib64/libssl.so.1.0.0:/lib64/libcrypto.so.1.0.0
exec /opt/ruby-1.8.7-p352/bin/ruby $*

LD_PRELOAD应该转到通过安装OpenSSL安装的共享文件,无论您何时安装它们。

然后,在您的apache配置中,在引用ruby的任何地方引用新的ruby_newopenssl。

© www.soinside.com 2019 - 2024. All rights reserved.