AWS SNS通知未通过HTTPS到达服务器

主要的

我们有一个PHP平台作为AWS SNS服务的客户端。我们使用NGINX作为后端Apache 2的代理。

通过端口80(HTTP)发送通知时,此方法工作正常。我们最近实施了SSL证书,以更好地模拟我们的生产环境。我们在AWS SNS控制台中使用HTTPS协议进行了新的订阅,但是订阅消息从未到达PHP后端。它在途中某处被阻塞。

从NGINX访问日志中,我们无法获取任何答案。我们看到以下几行我们怀疑来自SNS(IP解析到Amazon网络内部的某个位置)

54.240.197.67 - - [10/Feb/2014:10:49:42 +0000] "-" 400 0 "-" "-"
54.240.197.2 - - [10/Feb/2014:10:50:03 +0000] "-" 400 0 "-" "-"
62.75.187.88 - - [10/Feb/2014:10:50:07 +0000] "-" 400 0 "-" "-"
54.240.197.65 - - [10/Feb/2014:10:50:23 +0000] "-" 400 0 "-" "-"   
54.240.197.35 - - [10/Feb/2014:10:51:48 +0000] "-" 400 0 "-" "-"
54.240.197.66 - - [10/Feb/2014:10:52:09 +0000] "-" 400 0 "-" "-"
54.240.197.35 - - [10/Feb/2014:10:52:30 +0000] "-" 400 0 "-" "-"
54.240.197.33 - - [10/Feb/2014:10:52:51 +0000] "-" 400 0 "-" "-"

我们的NGINX配置看起来像这样

 listen 443;

    root /var/www/example_dev/public/;
    index index.php index.html index.htm;
    server_name dev.example.com;

    client_max_body_size 20M;

    ssl on;
    ssl_certificate /etc/nginx/ssl/dev.example.com/dev.example.com.crt;
    ssl_certificate_key /etc/nginx/ssl/dev.example.com/dev.example.com.key;

    ssl_protocols SSLv3 TLSv1;
    ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv3:+EXP;
    ssl_prefer_server_ciphers on;

    access_log /var/log/nginx/nginx.dev_example_com.access.log;
    error_log /var/log/nginx/nginx.dev_example_com.error.log;

    location / {
            proxy_set_header X-Real-IP  $remote_addr;
            proxy_set_header X-Forwarded-For $remote_addr;
            proxy_set_header Host $host;
            proxy_pass http://127.0.0.1:8080;

    }

    location ~ /\.ht {
            deny all;
    }

我们有一种预感,我们使用的证书的CA可能不受AWS信任,但是您如何确认呢?CA PositiveSSL CA 2,根CA AddTrust外部CA根

也许问题出在NGINX配置中?

提前致谢!

更新

看来这是SSL证书问题。在将CA Root证书添加(连接)到域证书之后,SNS通知可能会到达服务器。但是,它仅命中了NGINX配置中首先列出的子域。弄乱了域的顺序后,我在配置文件中较低的子域中发现了一个错误。现在一切正常。我怀疑如果未提供,则AWS SNS不会查找CA Root证书。

主要的

看来这是SSL证书问题。在将CA Root证书添加(连接)到域证书之后,SNS通知可能会到达服务器。但是,它仅命中了NGINX配置中首先列出的子域。弄乱了域的顺序后,我在配置文件中较低的子域中发现了一个错误。现在一切正常。我怀疑如果未提供,则AWS SNS不会查找CA Root证书。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

无服务器框架未通过配置在AWS上部署API网关

使用AWS通过无服务器处理大量数据

如何通过无服务器创建AWS StateMachine活动

如何在部署在 Beanstalk 上的 Django Web 服务器中配置 AWS SNS 订阅?

从AWS Lambda发送https到AWS Elastic beantalk服务器

AWS SNS HTTP / HTTPS通知的源IP是什么?

微服务未通过AWS Fargate在Eureka中注册

AWS Lambda SNS事件未使用无服务器yml绑定到正确的SNS主题ARN

如何通过 AWS Step Functions 在 AWS SNS 通知中传递 AWS Lambda 错误?

使用AWS SNS(简单通知服务)发送附件

可以通过DataGrip中的AWS Explorer配置AWS Aurora无服务器群集吗?

通过AWS SNS发送和接收推送通知

通过AWS SES发送后,“传递”和“退回” SNS通知

AWS SNS收到多个通知

当两个Lambda通过AWS SNS(简单通知服务)进行通信时,保护传输中的数据

是否有任何代码示例可用于 AWS Freertos 来实现 DHCP 服务器和 HTTPS 服务器?

AWS 移动中心 - 无服务器?

AWS与Niginx服务器的关系

AWS专用tomcat服务器

AWS中的UDP / TCP服务器

AWS NTP服务器的安全组

在AWS上启动节点服务器

AWS 部署无服务器限制?

使用AWS估算服务器成本

AWS中的灾难恢复服务器

AWS中的Python服务器

无法通过AWS负载均衡器HTTPS访问气流Web服务器,因为气流将我重定向到HTTP

AWS EC2 Apache 服务器正在运行,无法 ping/无法通过 Web 服务器访问

使用来自AWS服务器的自签名证书在Android上设置HTTPS连接