iptables的基本配置

㈠ 基本操作

列出现有iptables策略
iptables -L

插入一条策略
iptables -I INPUT 3 -p tcp --dport 22 -j ACCEPT
注释:所有使用TCP协议并且目标端口是22的流量全部允许通过的顺序为3的策略

删除一条策略
iptables -D INPUT 3

删除所有策略(临时生效)

iptables -F

策略组成表:


㈡ 匹配参数

基于IP地址
-s 192.168.1.1(源地址)
-d 192.168.1.0/24(目标地址)

基于接口
-i eth0(从eth0上接收的流量)
-o eth1(从eth1上发送的流量)

排除参数
-s '!' 192.168.1.0/24(除192.168.1.0/24之外的所有网段)

基于协议以及端口
-p tcp --dport 23 (目标端口)
-p udp --sport 53 (源端口)
-p lcmp

㈢ 例子

① 控制到本机的网络流量

iptables -A INPUT -s 192.168.1.100 -j DROP
iptables -A INPUT -p tcp --dport 80 -j DROP
iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport 22 -j DROP
iptables -A INPUT -i eth0 -j ACCEPT

② 当使用linux作为路由(进行数据转发)设备使用时,可以在过滤点FORWARD设置策略进行转发控制
如:禁止所有192.168.1.0/24到10.1.1.0/24的流量
iptables -A FORWARD -s 192.168.1.0/24 -d 10.1.1.0/24 -j DROP

③ NAT(网络地址转换)用来对数据包的IP地址进行修改的机制,NAT分为两种:

● SNAT:源地址转换,通常用于伪装内部地址
● DNAT:目标地址转换,通常用于跳转(负载均衡或者伪装保护)

iptables中实现NAT功能的是NAT表
DNAT只能作用在PROROUTING这个过滤点上
SNAT只能作用在POSTROUTING这个过滤点上

★ 通过NAT进行跳转:
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-dest 192.168.1.10

★ 通过NAT对出向数据进行跳转:
iptables -t nat -A OUTPUT -p tcp --dport 80 -j DNAT --to-dest 192.168.1.100:8080

★ 通过NAT对数据流进行伪装:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

★ 通过NAT隐藏源IP地址
iptables -t nat -A POSTROUTING -j SNAT --to-source 1.3.1.4


㈣ 配置文件

通过iptables添加的策略并不会永久保存
如果需要永久保存策略,则需要将此记录在配置文件中
/etc/sysconfig/iptables
通过以下命令可以把内存中的iptables策略全部写入配置文件
service iptables save


㈤ 小结

如果是远程管理一个linux主机并修改iptables策略,则必须先允许来自客户端主机的ssh流量确保这是第一条iptables策略,
否则,可能由于配置失误将自己锁在外面
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值