linux 防火墙

防火墙定义

防火墙是一种高级访问控制设备,置于不同网络安全域之间,他通过相关的安全策略来控制(允许,拒绝,监视,记录)进出网络的访问行为。

防火墙是一组规则,当数据包进出受保护的网络区域时,进出内容(特别是关于其来源、目标和使用的协议等信息)会根据防火墙规则进行检测,以确定是否允许其通过。

防火墙分类

硬件防火墙
软件防火墙

主机防火墙
网络防火墙

功能(表)

filter:防火墙过滤数据包,默认表
nat:网络地址转换(network address translation)
mangle:拆分,做出修改
raw:关闭nat表上启用的连接追踪功能

PREROUTING      (previous  routing路由前)
INPUT
OUTPUT
FORWARD
POSTROUTING  (postpone routing路由后)

1436211-20190325160543315-894133012.png

功能(表)中的链

filter:INPUT,FORWARD,OUTPUT
nat:PREROUT(DNAT),INPUT,OUTPUT,POSTROUTING(SNAT)
mangle:PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING
raw:PREROUTING,OUTPUT

firewalld优先级

策略应用优先级:raw,mangle,nat,filter
策略常用优先级:filter,nat,mangle,raw

iptables

iptables工具:
    -t:指定表
    -L:查看规则 
    -n:以数字形式查看
    -F:清空所有规则
    -X:清除自定义链
    -P:指定链的默认规则
    -j:指定要执行的动作
        ACCEPT:接受
        DROP:丢弃
        REJECT:拒绝
        DNAT:目标地址转换
        SNAT:源地址转换
    -A:append追加策略
    -s:source源ip(网段)
    -d:destination目标ip(网段)
    -I:insert插入策略
    -p:protocol指定协议
    --dport:指定目标端口
    --sport:指定源端口
    --line-num:显示规则行号
    -D:按照行号删除某链中的规则
    -i:指定网卡

filter表为例

清空所有策略:                                        iptables -F
清空自定义链:                                        iptables -X
自定义一个链                                         iptables -N old_forward
修改自定义链的名字                                    iptables -E old_forward new_forward
把filter中forward链的默认策略打成drop                  iptables -P FORWARD DROP                
查看filter表中的策略并且显示行数:                      iptables -L -n --line-number    
删除filter表中forward链中的第9条策略:                 iptables -t filter -D FORWARD 9



限制所有主机(0.0.0.0)拒绝ping本主机                    
iptables -t filter -A INPUT -s 0.0.0.0 -d 192.168.254.24 -p icmp -j REJECT    

显示所有主机(0.0.0.0)拒绝通过ens33网卡ping本主机       
iptables -t filter -A INPUT -d 192.168.254.24 -i ens33 -p icmp -j REJECT

开启转发模式

╭─root@localhost.localdomain ~  
╰─➤  cat /proc/sys/net/ipv4/ip_forward 
0
╭─root@localhost.localdomain ~  
╰─➤  echo 1 > /proc/sys/net/ipv4/ip_forward

或者

vim /etc/sysctl.conf 
net.ipv4.ip_forward = 1
#源地址为192.168.250.0网段的ip地址经过防火墙都转换成192.168.31.100这个ip地址(SNAT:源地址转换)

iptables -t nat -A POSTROUTING -s 192.168.250.0/24  -d 192.168.250.0/24 -j SNAT --to-source 192.168.31.100
 
-------------------------------------------------------
   
#访问目标地址为192.168.31.200这个机器并且是tcp协议80号端口的都转发给192.168.250.1(DNAT目标地址转换)

iptables -t nat -A PREROUTING -d 192.168.31.200 -p tcp --dport 80 -j DNAT --to-destination 192.168.250.1:80

-------------------------------------------------------

#访问目标地址为192.168.31.200这个机器并且是tcp协议80号端口的都转发给192.168.31.100的9999号端口(DNAT目标端口地址转换)

iptables -t nat -A PREROUTING -d 192.168.31.200 -p tcp --dport 80 -j DNAT --to-destination 192.168.31.100:9999

1675881-20190626141343587-1852896672.jpg

转载于:https://www.cnblogs.com/du-z/p/11089983.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值