科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网网络频道iptables在网络中的两个经典应用(1)

iptables在网络中的两个经典应用(1)

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

下面将我的方法讲一下:思想:利用端口转发,当服务器接收到881端口请求以后,将其转到 10.10.2.200:881上,10.10.2.200再将数据返回给请求连接。

作者:51CTO.COM 来源:chinawin 2007年11月8日

关键字: 防火墙 Linux iptables

  • 评论
  • 分享微博
  • 分享邮件

  一.端口转发:

  在详述端口转发之前,先讲一下我日前遇到的一件事情。本人是搞测试的,有一厂家拿了一个服务器软件叫我测试。基于win2k的,端口号为881,服务器直接连接外部网络,客户端通过服器ip来访问,而他们没有基于linux的服务器软件,照他们意思就必须将服务器换成windows的。作为一个linux爱好者,我想大家明白这种痛苦。我翻了一下资料,发现iptables的端口转发功能可以解决,折腾了一下午,终于完成任务。下面将我的方法讲一下:思想:利用端口转发,当服务器接收到881端口请求以后,将其转到 10.10.2.200:881上,10.10.2.200再将数据返回给请求连接

  Eth0:连接ADSL,即ppp0接口

  Eth1:连接内部网络,ip为10.10.1.1

  10.10.2.200为win2k服务器,其端口881提供网络服务。

  iptbles脚本:

  iptables -t nat -A PREROUTING -p tcp -m tcp --dport 881 -j DNAT --to-destination 10.10.2.200:881 ;将881请求发至10.10.2.00:881端口

  iptables -t nat -A POSTROUTING -s 10.10.0.0/16 -d 10.10.2.200 -p tcp -m tcp --dport 881 -j SNAT --to-source 10.10.1.1 ;返回a.b.b.d时数据源来自同一子网,就将其源地址更改为10.10.1.1,从eth0发出,并在连接跟踪表中查出a.b.c.d 从ppp0进来的,又由ppp0将此数据发出。

  当然不要忘了加一条允许881端口访问的语句。 iptables –A INPUT –p tcp –dport 881 –i ppp0 –j ACCEPT

  可不可把服务器放在局域内,用端口转发来实现呢?答案当然是肯定的,既然能把881端口转发,那么21,80这些个端口更不在话,而且很多服务器软件都可以自定义端口,那就在得玩了,只要有合适的端口,即使给局域网每一个用户开一个ftp服务器也是可的。你想要实现什么服务都可以,当然是基于端口转发的。

  局域网内10.10.2.101是win2k,提供www服务,端口为800

  通过服务器http://serverip:800 进行访问。

  iptables -t nat -A PREROUTING -p tcp -m tcp --dport 800 -j DNAT --to-destination 10.10.2.101:800

  iptables -t nat -A POSTROUTING -s 10.10.0.0/16 -d 10.10.2.101 -p tcp -m tcp --dport 800 -j SNAT --to-source 10.10.1.1

  iptables –A INPUT –p tcp –dport 800 –i ppp0 –j ACCEPT

  由于是基于端口转发实现的,所以服务器上只需装个iptables来转发数据就行了,一切服务由内部服务器完成,这样的话,我 linux服务器才真正的算是个防火墙。

  二.IPTABLES防火墙使用经验一谈

  最近架设了一台LINUX的小型服务器 因为需要把LINUX的机子作为软路由器来使用 所以把使用的一些经验谈一下。

  iptables的功能十分的强大 例如IP转发和伪装 防御DoS,扫描和嗅探试的攻击等等 在这里就不阐述了

  我的系统环境: redhat 7.2, adsl 2m, 8139fast 网卡

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章