通过域重定向连接:端口到 nginx 中的子域

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

i 在 docker 环境中托管一个应用程序。此应用程序在端口 3030 下侦听我的 IP 地址或域。连接工作正常。但没有 SSL。

我在 nginx 中创建了一个子域来为应用程序提供 SSL 证书。这个子域指向我的 ip 地址和端口。通过子域 application.domain.com 的连接可以通过 SSL 正常工作。

但现在我想阻止通过 ip/domain:3030 访问应用程序。 分别最好将这种请求重定向到子域以确保 SSL。

我有什么可能的选择来阻止通过域访问:端口以始终确保 SSL?

我试图在 ufw 中阻止这个端口。但无论如何都可以访问应用程序。 我将我的应用程序配置为仅在本地主机上侦听,但它可以通过域访问:没有 SSL 的端口。因为一些 docker 配置?

谢谢你的建议

docker nginx ssl routes subdomain
1个回答
0
投票

如果 Nginx 和您的应用程序在 Docker 中运行,那么您可以将两个容器放在同一个 Docker 网络中,并且只发布 Nginx 容器的 HTTPS 端口。 Nginx 将能够通过端口 3030 连接到应用程序,即使当两个容器都在同一网络上时它没有发布。 Docker 文档

示例码头工人组成:

services:
  app:
    build: .
    networks:
      - internal_network

  nginx:
    image: nginx
    ports:
      - "443:443"
    networks:
      - internal_network

networks:
  internal_network:

如果 Nginx 没有在 Docker 中运行,那么您可以尝试使用 Docker 主机防火墙将来自 Nginx IP 地址的流量列入白名单到容器 https://docs.docker.com/network/iptables/

我觉得第一个更好

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