首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IPtables:转发

IPtables:转发
EN

Server Fault用户
提问于 2013-02-14 20:28:16
回答 1查看 472关注 0票数 0

我有一台Ubuntu机器作为防火墙运行。这台机器在eth1上配置了我们的静态IP。它通过eth0连接到我们的网络。

我有一台运行Server2012的新服务器,安装了IIS。它是sharepoint服务器。我需要sharepoint服务器可以通过域名访问internet和本地网络。即"awesomebox.net“

我需要什么IPTables规则才能做到这一点?

我所处的地方:

我在nat表中有一条规则,可以将传入的请求重定向到sharepoint服务器。它在我们大楼外面工作。当我试图从我们的大楼内访问它时,我会在本地防火墙上获得apache服务器。

代码语言:javascript
复制
sudo iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to 10.100.XX.XX:80
sudo iptables -A FORWARD -i eth1 -p tcp --dport 80 -d 10.100.XX.XX -j ACCEPT
sudo iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 443 -j DNAT --to 10.100.XX.XX:443
sudo iptables -A FORWARD -i eth1 -p tcp --dport 443 -d 10.100.XX.XX -j ACCEPT

我在这里错过了什么?

EN

回答 1

Server Fault用户

回答已采纳

发布于 2013-02-14 20:33:20

您的规则仅适用于从互联网在eth1上输入的数据包,因此不会应用于从局域网在eth0上输入的数据包。或者添加另一组指定eth0的规则,或者从当前规则中删除该条件:

代码语言:javascript
复制
iptables -t nat -A PREROUTING -d 1.2.3.4 -p tcp --dport 80 -j DNAT --to 10.100.XX.XX:80
iptables -A FORWARD -p tcp --dport 80 -d 10.100.XX.XX -j ACCEPT
iptables -t nat -A PREROUTING -d 1.2.3.4 -p tcp --dport 443 -j DNAT --to 10.100.XX.XX:443
iptables -A FORWARD -p tcp --dport 443 -d 10.100.XX.XX -j ACCEPT

如果SharePoint服务器连接到eth0,就会遇到发夹NAT问题。要解决这个问题,如果源是LAN子网,则需要对传出数据包进行SNAT:

代码语言:javascript
复制
iptables -t nat -A POSTROUTING -p tcp --dport 80 -d 10.100.XX.XX -s 10.100.XX.0/24 -j MASQUERADE
iptables -t nat -A POSTROUTING -p tcp --dport 443 -d 10.100.XX.XX -s 10.100.XX.0/24 -j MASQUERADE
票数 1
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/478981

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档