Linux--RH254---unit 10 iptables

本文介绍 iptables 的基本概念、配置方法及常见命令。包括如何设置防火墙策略、地址转换、数据包过滤等核心功能。通过实例演示了如何使用 iptables 进行网络管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

####iptables####

1.防火墙策略

       防火墙策略一般分为两种,一种叫“通”策略,一种叫“堵”策略,通策略,默认门是关着的,必须要定义谁能进。堵策略则是,大门是洞开的,但是你必须有身份认证,否则不能进。所以我们要定义,让进来的进来,让出去的出去,所以通,是要全通,而堵,则是要选择。当我们定义的策略的时候,要分别定义多条功能,其中:定义数据包中允许或者不允许的策略,filter过滤的功能,而定义地址转换的功能的则是nat选项。为了让这些功能交替工作,我们制定出了“表”这个定义,来定义、区分各种不同的工作功能和处理方式。

我们现在用的比较多个功能有3个:

1.filter 定义允许或者不允许的
2.nat 定义地址转换的 
                3.mangle功能:修改报文原数据
对于filter来讲一般只能做在3个链上:INPUT ,FORWARD ,OUTPUT
对于nat来讲一般也只能做在3个链上:PREROUTING ,OUTPUT ,POSTROUTING
而mangle则是5个链都可以做:PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING
 
iptables/netfilter(这款软件)是工作在用户空间的,它可以让规则进行生效的,本身不是一种服务,而且规则是立即生效的。而我们iptables现在被做成了一个服务,可以进行启动,停止的。启动,则将规则直接生效,停止,则将规则撤销。 
iptables还支持自己定义链。但是自己定义的链,必须是跟某种特定的链关联起来的。在一个关卡设定,指定当有数据的时候专门去找某个特定的链来处理,当那个链处理完之后,再返回。接着在特定的链中继续检查。

注意:规则的次序非常关键,谁的规则越严格,应该放的越靠前,而检查规则的时候,是按照从上往下的方式进行检查的。

2.配置

把firewalld关闭然后启用iptables

iptables
     -t     ##指定表名称
     -n    ##不作解析
     -L    ##列出指定表中的策略
     -A    ##增加策略
     -p    ##网络协议
     --dport    ##端口
     -s    ##数据来源
     -j    ##动作
     ACCEPT    ##允许
     REJRCT    ##拒绝
     DROP    ##丢弃
     -N    ##增加链
     -E    ##修改链名称
     -X    ##删除链
     -D    ##删除指定策略
     -I    ##插入
     -R    ##修改策略
     -P    ##修改默认策略

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


iptables -F    ##刷掉filter表中的所有策略,当没有用-t指定表名称时默认是filter

service iptables save    ##保存当前策略


iptables -A INPUT -i lo -j ACCEPT    ##允许lo回环接口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT    ##允许访问22端口
iptables -A INPUT -s 172.25.254.31 -j ACCEPT    ##允许31主机访问本机所有端口

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


iptables -N redhat    ##增加链redhat


iptables -E redhat westos    ##改变链名称


iptables -X westos    ##删除westos链


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


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


iptables -R INPUT 1 -p tcp --dport 80 -j REJECT    ##修改第一条策略


iptables -P INPUT DROP    ##把INPUT表中的默认策略改为drop


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

iptables -A INPUT -i lo -m state --state NEW -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -m state --state NEW -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -m state --state NEW -j ACCEPT

iptables -A INPUT -j REJECT



sysctl -a | grep forward
echo "net.ipv4.ip_forward = 1" >>/etc/sysctl.conf

sysctl -p    ##生效


iptables -t nat -nL
iptables -t nat -A PREROUTING -i eth1 -j DNAT --to-dest 172.25.31.231

iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to-source 172.25.254.131


vim /etc/sysconfig/network-scripts/ifcfg-eth0

systemctl restart network

route -n



测试

ping 172.25.254.131


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值