设为首页 收藏本站
查看: 1181|回复: 0

[经验分享] centos 7 nat-Gravir une hauteur-运维网 博客

[复制链接]
发表于 2019-2-15 17:08:18 | 显示全部楼层 |阅读模式
  iptables -t nat -A POSTROUTING -s 192.168.18.0/24 -o eth0 -j SNAT --to-source 172.18.210.77
  用一个CentOS虚拟机提供NAT服务。
  参照了howtoforge上面的文章,发现本身并不复杂,但是几个基本概念必须搞清,不然看的就不太明白。
  最重要的也就是这么两步:
  iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
  iptables --append FORWARD --in-interface gre10 -j ACCEPT
  这里eth0是外部接口,eth1是内部接口。
  然后把/proc/sys/net/ipv4/ip_forward内容改为1 就可以了。  这之前当然还要查一查iptables的规则,看看是否有和NAT规则冲突的,就把它改掉。
  howtoforge网站没有对此做什么解释,所以设置好了也只是知其然不知其所以然。 后来查了文档,原来iptables规则中有三个表, filter,nat,mangle, 默认都是在filter表上操作,所以平时一般的规则修改不怎么用到nat表和mangle 表,也不会用到 -- table 选项,难怪一开始看到howtoforge的文章会感到没有头绪。
  在Linux nat中,被转发的包实际经过了以下几个 表-链 的组合
  1.  mangle  -- PREROUTING
  2. nat -- PREROUTING                ;用于外部访问内部网站的NAT
  3. mangle -- FORWARD
  4. filter -- FORWARD
  5. mangle -- POSTROUTING
  6. nat - POSTROUTING               ;用于内部浏览外部的NAT
  一般来说都是在 filter -- FORWARD 和 nat -- POSTROUTING 这两个组合中作规则的设定。所以在这里设置用eth0作为出口路由,对于进入eth1的转发包一律允许,当然也可以结合具体情况做一些过滤。
  centOS本身的system-config-securitylevel工具不适合做这种配置,修改了nat以后也不要再用这个工具来检查配置了, 好像是无法识别的。
  filter 表里面有3个chain,FORWARD, INPUT  和 OUTPUT。
  iptables的常见选项:
  -p 指定协议  -s 指定源地址 -d 指定目的地址 -i 指定入接口  -o 指定出接口
  -p 指定协议后,可接着用 --sport  --dport 指定端口号 --syn 表示syn 包后面可接 -m limit --limit n/s 来限定每秒SYN数量。
  扩展选项:
  -m multiport --sports
  端口号同逗号分隔,不一定是连续的
  -m mulitport --dports
  -m multiport --ports

  -m --state   状态可以是 ESTABLISHED  NEW >  如果要让外部访问内部的某一个服务器如Web 服务器:
  iptables -t nat -A PREROUTING -p tcp -i eth0  -d 119.23.42.3 --dport 3389 --sport 1024:65535 -j DNAT --to 192.168.60.253:3389
  iptables -A FORWARD -p tcp -i eth0 -o gre10 -d  192.168.60.253 --dport 3389 --sport 1024:65535 -m state --state NEW -j ACCEPT
  iptables -A FORWARD -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-672704-1-1.html 上篇帖子: centos7 LVM逻辑卷管理 下篇帖子: Centos7.x 编译安装全功能的Nginx
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表