ssl - ERR_SSL_VERSION_OR_CIPHER_MISMATCH 从 AWS API 网关到 Lambda

标签 ssl aws-lambda aws-api-gateway amazon-route53

我已经设置了一个 lambda 并将 API 网关部署附加到它。网关控制台中的测试一切正常。我为 *.hazeapp.net 创建了一个 AWS 证书。我在 API 网关中创建了一个自定义域并附加了该证书。在 Route 53 区域中,我创建了别名记录并使用了 API 网关下出现的目标(唯一可用的)。我将别名命名为 rest.hazeapp.net。我的客户端收到 ERR_SSL_VERSION_OR_CIPHER_MISMATCH 错误。 curl 表示 TLS 服务器握手失败,与 SSL 错误一致。 curl表示证书CA check out 。

我做错了什么吗?

最佳答案

当我的 DNS 条目直接指向 API 网关部署而不是支持自定义域名时,我遇到了这个问题。

要找到要指向的域名:

aws apigateway get-domain-name --domain-name "<YOUR DOMAIN>"

响应包含要使用的域名。在我的例子中,我有一个 Regional 部署,所以结果是:

{
    "domainName": "<DOMAIN_NAME>",
    "certificateUploadDate": 1553011117,
    "regionalDomainName": "<API_GATEWAY_ID>.execute-api.eu-west-1.amazonaws.com",
    "regionalHostedZoneId": "...",
    "regionalCertificateArn": "arn:aws:acm:eu-west-1:<ACCOUNT>:certificate/<CERT_ID>",
    "endpointConfiguration": {
        "types": [
            "REGIONAL"
        ]
    }
}

关于ssl - ERR_SSL_VERSION_OR_CIPHER_MISMATCH 从 AWS API 网关到 Lambda,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54683022/

相关文章:

amazon-web-services - Lambda 和 DynamoDB : is not authorized to perform: dynamodb:Scan

android - 如何在android中添加aws签名并调用aws api网关

python - AWS Lambda 函数在 python 中误解了事件字典?

ssl - 在 Jelastic 上托管的 Docker 容器中的 nginx 上使用 SSL

swift - 在 Swift 4 中尝试 POST 请求给出 "TIC SSL Trust Error"

amazon-web-services - 使用 AWS CDK 将 Lambda 触发器添加到导入的 Cognito 用户池

javascript - 将语音字符串映射到可能的备用字符串以与 dynamoDB 匹配

node.js - AWS Lambda - 在 lambda 函数中获取 API 网关路径

wordpress - 混合内容/不安全内容 SSL

docker - 使用 nginx 的动态 ssl 证书