同一服务器上的 NAT 和 NGINX

同一服务器上的 NAT 和 NGINX

我正在为我的协作待办事项列表应用程序设置 VPC 集群www.getdoneapp.com

为了将我的服务器放在私有网络上,我需要一个 NAT 服务器,以便私有网络上的服务器可以连接到互联网来接收更新等等。

NAT 服务器将消耗一个弹性 IP 地址,所以我想知道是否可以让该 NAT 服务器运行 nginx 将流量引导至我的内部服务器以进行 HTTP 传输。

所以问题是,在同一台服务器上运行 NGINX 和 NAT 是不是一个坏主意,或者我应该选择使用 2 个弹性 IP 地址?

答案1

您可以轻松完成此操作而不会出现任何问题,只需为每个服务器使用如下所示的 nginx conf 文件即可

server {
    listen 80;
    server_name subdomain.domiain.com;

    location / {
        proxy_pass      http://internal-server;
        }
}

显然,你可以变得更复杂,做 ssl 和其他类似的事情,但它的核心是可以工作的,然后你只需打开端口 80,然后转到命名的主机(或者你可以打开多个端口,并为每个端口执行此操作而不是 URL)

答案2

我无法评论这对您的应用程序架构是否是个好主意,但是,从技术上讲,使用您自己的 NAT 实例是可行的。这很简单。

在 AWS 中:

1)禁用源/目标检查2)配置linux以启用内核和iptables规则中的nat功能。

对于第 2 点,您只需使用现有 amazon nat 中的 configure-pat.sh 脚本即可。我已将其粘贴这里如果这有帮助的话。

希望这可以帮助

安德鲁

相关内容