Linux下的iptables配置

1、iptables的三张表、五条链
#三张表
         filter表:一般的过滤功能
         nat表:用于nat功能(端口映射,地址映射等)
         mangle表:用于对特定数据包的修改
#五条链
       PREROUTING:数据包进入路由表之前
       INPUT:通过路由表后目的地为本机
       FORWARDING:通过路由表后,目的地不为本机
       OUTPUT:由本机产生,向外转发
       POSTROUTIONG:发送到网卡接口之前

这里写图片描述

#iptables的启用
[root@desktop ~]# systemctl stop firewalld
[root@desktop ~]# systemctl disable firewalld
[root@desktop ~]# systemctl start iptables.service
[root@desktop ~]# systemctl enable iptables.service
2、iptables的策略设置
[root@desktop ~]# iptables -nL #查看防火墙策略
[root@desktop ~]# iptables -F #清空刷新火墙策略
[root@desktop ~]# service iptables save #保存策略信息
iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]
[root@desktop ~]# vim /etc/sysconfig/iptables #策略文件
#添加修改策略规则
[root@desktop ~]# iptables -P INPUT DROP #默认规则,只能修改DROP或ACCEPT
[root@desktop ~]# iptables -A INPUT -p tcp --dport 22 -j REJECT #-A增加,-dport目的端口,-j表示动作
[root@desktop ~]# iptables -A INPUT -s 172.25.254.68 -p tcp --dport 22 -j ACCEPT #250访问22端口时,是ACCEPT动作,-A添加默认添加到表最后
[root@desktop ~]# iptables -nL #iptables读表按顺序读,当读到第一条相关符合的命令便不再向下读了
[root@desktop ~]# iptables -R INPUT 1 -s 172.25.254.167 -p tcp --dport 22 -j ACCEPT #-R表示修改,1是INPUT第一条

这里写图片描述

注意:iptables读表按顺序读,当读到第一条相关符合的命令便不再向下读了
所以,当添加172.25.254.68主机对22端口是REJECT时,不再读取下一条相关规则,所以68主机ssh连接被拒绝,修改第一条规则后,可以连接

这里写图片描述

#插入修改策略规则
[root@desktop ~]# iptables -I INPUT 2 -p tcp --dport 80 -j ACCEPT #-I插入,2表示第二个策略

这里写图片描述
测试如下:
这里写图片描述

3、用户新建链
[root@desktop ~]# iptables -N westos #新建链
[root@desktop ~]# iptables -nL
[root@desktop ~]# iptables -E westos WESTOS #将链的名称由westos修改为WESTOS
[root@desktop ~]# iptables -X WESTOS #删除新建链
4、基于状态的匹配扩展
[root@desktop ~]# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT #正在连接、连接过的数据包,不用再次认证,速度快
[root@desktop ~]# iptables -A INPUT -m state --state NEW -p tcp --dport 22 -j ACCEPT #新连接使用22端口时需要认证
[root@desktop ~]# iptables -A INPUT -m state --state NEW -p tcp --dport 53 -j ACCEPT
[root@desktop ~]# iptables -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT
[root@desktop ~]# iptables -A INPUT -m state --state NEW -i lo -j ACCEPT #回环接口
[root@desktop ~]# iptables -nL
5、地址伪装
首先配置两个虚拟机ip及网关
#Desktop
eth0网卡IP:172.25.254.168
eth1网卡IP:172.25.0.168
路由后,通过SNAT将执行命令时的源地址均转换为172.25.254.168
[root@desktop ~]# iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 172.25.254.168 #-j 指定方式
[root@desktop ~]# iptables -t nat -nL
#sever
eth0网卡IP:172.25.0.167 网关:172.25.0.168
[root@desktop ~]# ping 172.25.254.68 #可以ping通
6、端口转发
#Desktop
路由前,通过DNAT将执行命令时的目标均转换为172.25.0.167
[root@desktop ~]# iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 22 -j DNAT --to-dest  172.25.0.167
#kiosk
[kiosk@foundation68 Desktop]$ ssh root@172.25.254.168#真机连接
[root@server ~]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.25.0.167 netmask 255.255.255.0 broadcast 172.25.0.167
#实际连接的是172.25.0.167
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yyyxxxs/article/details/80686759
想对作者说点什么? 我来说一句

iptables配置文档

2012年04月10日 26KB 下载

Linux下IpTables配置.txt

2008年11月20日 2KB 下载

iptables 讲义

2009年03月29日 285KB 下载

iptables详解

2011年08月15日 13.29MB 下载

iptables配置.mht

2010年01月05日 290KB 下载

linux下构造一个安全的iptables

2009年07月15日 2KB 下载

REH和Centos防火墙

2015年02月03日 3.63MB 下载

iptables配置文件 下载

2014年06月19日 6KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭