【问题标题】:Nginx Stream SSL Error 500 on Connection to SynologyNginx Stream SSL 连接到 Synology 时出现错误 500
【发布时间】:2019-11-08 14:32:51
【问题描述】:

大家好,我在使用 SSL 将 TCP 通信传递到 Synology NAS 时遇到问题。 我想将 Synology Drive Client 连接到 NAS,Drive Client 软件通过 TCP 端口 6690 与 NAS 通信。 当我尝试连接时,出现 500 错误。 如果没有 SSL,它可以正常工作,但 Synology 使用自己的不受信任的证书加密通信,这不应该是解决方案。

构建:

互联网| --> |路由器(端口转发6690)| --> |nginx| -->| NAS(192.168.10.2)|

Nginx:

stream{


        log_format log_stream '$remote_addr [$time_local] $protocol [$ssl_preread_server_name] [$ssl_preread_alpn_protocols]'
        '$status $bytes_sent $bytes_received $session_time';

         access_log /var/log/nginx/access.log log_stream;

         ssl_certificate /etc/letsencrypt/live/{mydomain}/fullchain.pem;
         ssl_certificate_key /etc/letsencrypt/live/{mydomain}/privkey.pem;
         ssl_protocols TLSv1.1 TLSv1.2;

   server {
         listen 6690 ssl;
         proxy_pass 192.168.10.2:6690;
       }
}

日志:

xx.xx.xxx.xxx [08/Nov/2019:15:09:37 +0100] TCP [-] [-]500 0 0 0.000
xx.xx.xxx.xxx [08/Nov/2019:15:09:37 +0100] TCP [-] [-]500 0 0 0.000
xx.xx.xxx.xxx [08/Nov/2019:15:10:37 +0100] TCP [-] [-]500 0 0 0.000
xx.xx.xxx.xxx [08/Nov/2019:15:10:37 +0100] TCP [-] [-]500 0 0 0.000
xx.xx.xxx.xxx [08/Nov/2019:15:11:37 +0100] TCP [-] [-]500 0 0 0.000
xx.xx.xxx.xxx [08/Nov/2019:15:11:37 +0100] TCP [-] [-]500 0 0 0.000

我还尝试通过以下方式检查 SSL 握手:

openssl s_client -host mydomain.net -port 6690

而且效果很好。

有人知道我的错误在哪里吗??? :-(

【问题讨论】:

    标签: ssl nginx nginx-reverse-proxy synology


    【解决方案1】:

    类似的设置旨在提供对“更安全”的 Rev-Proxy 后面的 Synology Drive 的访问。

    问题不在于 SSL 握手。

    问题是:没有运行 Synology Drive 等端口 6690 的 http 协议。(德语参考,包含关于 6690 上的非 http 协议的假设:https://www.synology-forum.de/showthread.html?74773-Cloud-Station-über-Reverse-Proxy/page3

    此外,我使用 Drive-Client 调用我的 NginxRevProxy(它通常工作)并从 access.log 中获取:

    172.18.0.1 - - [09/Nov/2019:10:17:26 +0000] "%R\x18\x14F\x0B\x00\x00" 400 157 "-" "-" "-"

    所以你的方法(和我的)是不够的。

    解决方案的可能路径,这超出了我目前的知识范围: “升级” Nginx 到反向 tcp-proxy,如果这适用于 Synology Drive,请使用 Nginx 的“fancyness”与 TCP-Proxy 内部和用于 TCP-Proxy 的自己的 auth-script。 (即“滥用”+ 扩展此处显示的 TCP-Loadbalancer:https://www.debinux.de/2014/12/nginx-als-tcp-proxy-beispiel-dovecot/

    【讨论】:

    • 您在 http 块中定义 Synology 的声音 ???
    猜你喜欢
    • 2014-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-10-07
    • 2018-10-12
    • 1970-01-01
    相关资源
    最近更新 更多