我的 Ubuntu 服务器有两个接口。
1) Public - eth0
2) Internal - eth1
Run Code Online (Sandbox Code Playgroud)
如何将网络流量(端口 80)从公共接口 eth0 转发到在 eth1 上运行的 nginx ?我不知道确切的 ufw 规则来完成这个。
谢谢
ufw不会解决您允许转发的问题,但不会进行转发。如果你想转发你的流量,那么你必须编写NAT规则,将来自公共 ip 的流量转发到私有 ip。
如果你想允许从特定网络转发到另一个网络,那么你可以使用:
sudo ufw route allow in on eth0 out on eth1 to 10.0.0.0/8 port 80 from 192.168.0.0/16
Run Code Online (Sandbox Code Playgroud)
或者
如果要转发所有网络请求,则可以使用 like
sudo ufw route allow in on eth0 out on eth1 to any port 80 from any
Run Code Online (Sandbox Code Playgroud)
它会显示如下:
sudo ufw status
Status: active
To Action From
-- ------ ----
10.0.0.0/8 80 on eth1 ALLOW FWD 192.168.0.0/16 on eth0
Run Code Online (Sandbox Code Playgroud)
有关更多信息,您可以查看
man ufw
Run Code Online (Sandbox Code Playgroud)