天天看点

iptables

######################

#### iptables ########

 *iptables是一个工作于用户空间的防火墙应用软件

 *三表五链

 filter表  mangle表  nat表

 INPUT链  OUTPUT链  FORWARD链  PREROUTING链  POSTROUTING链

  1.实验之前关闭firewalld服务,开启iptables

<a href="https://s3.51cto.com/wyfs02/M02/97/7B/wKiom1kuv0-CZ2PfAABZ7m39UpQ371.jpg" target="_blank"></a>

  2.iptables命令

  * iptables  -t    ##指定表名称,默认是filter表

           -n    ##不作解析

           -L    ##列出指定表中的策略

  iptables -t filter -nL   ##查看filter表的策略

<a href="https://s2.51cto.com/wyfs02/M01/97/7B/wKiom1kuv7iAJOi4AABKrvHer5w853.jpg" target="_blank"></a>

<a href="https://s2.51cto.com/wyfs02/M01/97/7C/wKioL1kuv_Ci7pwjAAAzy6GMgxw089.jpg" target="_blank"></a>

 * iptables  -A      ##增加策略

          -i      ##向规则链中增加条目

          -p      ##网络协议

          --dport   ##端口

          -s      ##数据来源

          -j      ##动作

          ACCEPT    ##允许

          REJECT    ##拒绝

          DROP      ##丢弃

 iptables -A INPUT -i lo -j ACCEPT  ##允许回环接口通过

 iptables -A INPUT -p tcp --dport 22 -j ACCEPT  ##允许访问22端口

 iptables -A INPUT -s 172.25.254.234 -j ACCEPT  ##允许234主机访问本机所有端口

 iptables -A INPUT -j REJECT   ##拒绝所有主机数据来源

<a href="https://s1.51cto.com/wyfs02/M01/97/7D/wKioL1kuwCbQDMgjAABykZ-uUPw941.jpg" target="_blank"></a>

*测试

  * iptables   -N  ##增加链

            -E  ##修改链名称

            -X  ##删除链

            -D  ##删除指定策略

            -I  ##插入

            -R  ##修改策略

            -P  ##修改默认策略

<a href="https://s5.51cto.com/wyfs02/M00/97/7B/wKiom1kuwITQBI1pAABGY67g4ow535.jpg" target="_blank"></a>

   iptables -N redhat    ##添加redhat链

<a href="https://s1.51cto.com/wyfs02/M00/97/7D/wKioL1kuwKGDcHAuAAAyR22DSEA133.jpg" target="_blank"></a>

   iptables -E redhat westos  ##修改redhat链为westos

<a href="https://s2.51cto.com/wyfs02/M00/97/7D/wKioL1kuwMPxeE7TAAAtvc9kXio473.jpg" target="_blank"></a>

   iptables -X westos  ##删除westos链

<a href="https://s2.51cto.com/wyfs02/M00/97/7B/wKiom1kuwTeTdrcAAACErKnRgaY086.jpg" target="_blank"></a>

   iptables -D INPUT 2   ##删除INPUT 链中的第二条策略

<a href="https://s4.51cto.com/wyfs02/M01/97/7C/wKiom1kuwVHzoxFuAABqErzFcaQ637.jpg" target="_blank"></a>

   iptables -I INPUT -p tcp --dport 80 -j REJECT  ##INPUT链第一条插入策略

<a href="https://s3.51cto.com/wyfs02/M01/97/7D/wKioL1kuwW-BNE3QAABFuFJelyI844.jpg" target="_blank"></a>

   iptables -R INPUT 1 -p tcp --dport 80 -j ACCEPT   ##修改INPUT链中的第一条策略

   iptables -P INPUT DROP  ##修改默认策略

   iptables -F  ##刷掉所以策略,临时生效

<a href="https://s3.51cto.com/wyfs02/M02/97/4C/wKiom1ktARrSmhLoAAA7sALXGtQ054.png" target="_blank"></a>

   service iptables save  ##保存设置到配置文件,重启后也生效

  3. 提高访问速度,缓解访问压力方法

<a href="https://s4.51cto.com/wyfs02/M01/97/7C/wKiom1kuwafTd2sNAABGMEvQl9I881.jpg" target="_blank"></a>

<a href="https://s1.51cto.com/wyfs02/M02/97/7C/wKiom1kuwdvAukvrAACNXqqSbxM082.jpg" target="_blank"></a>

  iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT  、

  ##允许RELATED,ESTABLISHED状态通过防火墙

  iptables -A INPUT -i lo -m state --state NEW -j ACCEPT   ##允许回环接口访问

  iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT  

  ##允许状态是NEW访问22端口

  iptables -A INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT  

  ##允许访状态是NEW问80端口

  iptables -A INPUT -p tcp --dport 443 -m state --state NEW -j ACCEPT 

  ##允许状态是NEW访问443端口

  iptables -A INPUT -p tcp --dport 53 -m state --state NEW -j ACCEPT  

  ##允许状态是NEW访问53端口 

  iptables -A INPUT -j REJECT   ##拒绝所有主机数据来源

  4.路由

  sysctl -a | grep forward  ##查看forward状态

<a href="https://s5.51cto.com/wyfs02/M02/97/4C/wKiom1ktA9WwK8efAAEJ7OJML3s950.png" target="_blank"></a>

<a href="https://s2.51cto.com/wyfs02/M01/97/7C/wKiom1kuwh-CAQCDAABw0uQY71U737.jpg" target="_blank"></a>

  echo "net.ipv4.ip_forward = 1" &gt;&gt;/etc/sysctl.conf  ##打开net.ipv4.ip_forward

  sysctl -p   ##设置生效

<a href="https://s3.51cto.com/wyfs02/M02/97/4D/wKioL1ktBB3h83v1AAA88fJ-AiE010.png" target="_blank"></a>

  iptables -t nat -A PREROUTING -i eth0 -j DNAT --to-dest 172.25.0.11  ##进入路由

 测试

 用172.25.0.11主机ssh连接172.25.254.174主机

  iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to-source 172.25.254.174  ##出路由设置

 连上172.25.254.174主机,显示的IP是172.25.254.11

本文转自  夏梨巴人  51CTO博客,原文链接:http://blog.51cto.com/12774035/1931119

继续阅读