Linux:iptables和firewalld基础j解析
创始人
2024-01-18 11:09:17
0

目录

1、四表五链概念:

2、数据报文流程

 3、iptables 与 firewalld 区别

4、DROP 和 REJECT策略的区别:

5、iptables命令参数

6、iptables基本的命令使用

7.firewalld:基于CLI(命令行界面)和基于GUI(图形用户界面)的两种管理方式。

8、firewalld命令示例:


1、四表五链概念:

filter表  过滤数据包
Nat表    用于网络地址转换(IP、端口)
Mangle表  修改数据包的服务类型、TTL、并且可以配置路由实现QOS
Raw表    决定数据包是否被状态跟踪机制处理INPUT链     进来的数据包应用此规则链中的策略
OUTPUT链     外出的数据包应用此规则链中的策略
FORWARD链    转发数据包时应用此规则链中的策略
PREROUTING链  对数据包作路由选择前应用此链中的规则(所有的数据包进来的时侯都先由这个链处理)
POSTROUTING链  对数据包作路由选择后应用此链中的规则(所有的数据包出来的时侯都先由这个链处理)

2、数据报文流程

数据报文从进入服务器到出来会经过5道关卡,分别为Preouting(路由前),input(输入),outing(输出),Forward(转发),Postrouting(路由后)

 iptables服务策略

  • ACCEPT(允许流量通过)
  • REJECT(拒绝流量通过)
  • LOG(记录日志信息)
  • DROP(拒绝流量通过)

 

 3、iptables 与 firewalld 区别

相同点:都是用来定义防火墙策略的防火墙管理工具
区别:iptables服务会把配置好的防火墙策略,交由内核层面的 netfilter 网络过滤器来处理firewalld服务则是把配置好的防火墙策略,交由内核层面的 nftables 包过滤框架来处理

4、DROP 和 REJECT策略的区别:

防火墙策略:设置为REJECT拒绝动作后,流量发送方会看到端口不可达的响应修改成DROP拒绝动作后,流量发送方会看到响应超时的提醒

5、iptables命令参数

-t<表>   指定要操纵的表 
--line-numbers  显示规则的序号
-n    以数字格式显示地址和端口号
-P      设置默认策略
-F      清空规则链
-L      查看规则链
-A      在规则链的末尾加入新规则
-I num   在规则链的头部加入新规则
-D num   删除某一条规则
-s      匹配来源地址IP/MASK,加叹号“!”表示除这个IP外
-d      区配目标地址
-i 网卡名称     匹配从这块网卡流入的数据
-o 网卡名称     匹配从这块网卡流出的数据
-p          匹配协议,如TCP、UDP、ICMP
--sport num    匹配来源端口号
--dport num    匹配目标端口号 

6、iptables基本的命令使用

1.查看防火墙规则iptables -nvL --line-numbers2.清空防火墙规则iptables -F 清空所有的防火墙规则iptables -X 删除用户自定义的空链iptables -Z 清空计数   
3.把INPUT规则链的默认策略设置为拒绝/允许iptables -P INPUT REJECT/ACCEPT4.删除INPUT规则链中刚刚加入的那条策略iptables -D INPUT 15.保存当前的数据包计算器和字节计数器的值iptables-save -c > /etc/sysconfig/iptables指定要保存的表的名称iptables-save -t filter > filter.bak
6.还原防火墙规则
  iptables-restore7.将INPUT规则链设置为只允许指定网段的主机访问本机的22端口,拒绝来自其他所有主机的流量:iptables -I INPUT -s 0.0.0.0/0 -p tcp --dport 22 -j REJECT8.向INPUT规则链中添加拒绝所有人访问本机12345端口的策略规则:iptables -I INPUT -p tcp --dport 12345 -j REJECT  iptables -I INPUT -p utp --dport 12345 -j REJECT
9.向INPUT规则链中添加拒绝192.168.8.105主机访问本机80端口(Web服务)的策略规则:iptables -I INPUT -s 192.168.8.105 -p tcp --dport 80 -j REJECT 10.向INPUT规则链中添加拒绝所有主机访问本机1000~1024端口的策略规则:iptables -I INPUT -p all --dport 1000:1024 -j REJECT11.配置允许ssh端口连接 iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport 22 -j ACCEPT12.允许本地回环地址可以正常使用 iptables -A INPUT -i lo -j ACCEPTiptables -A OUTPUT -o lo -j ACCEPT13.允许已建立的或相关连的通行iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
***14.启动网络转发规则,公网 210.14.67.7 让内网 192.168.188.0/24 上网iptables -t nat -A POSTROUTING -s 192.168.188.0/24 -j SNAT --to-source 210.14.67.7
15.端口映射:本机的 2222 端口映射到内网 虚拟机的22 端口
  iptables -t nat -A PREROUTING -d 210.14.67.127 -p tcp --dport 2222 -j DNAT --to-dest 192.168.188.115:2216.阻止Windows蠕虫的攻击iptables -I INPUT -j DROP -p tcp -s 0.0.0.0/0 -m string --algo kmp --string "cmd.exe"
17.防止SYN洪水攻击iptables -A INPUT -p tcp --syn -m limit --limit 5/second -j ACCEPT

7.firewalld:基于CLI(命令行界面)和基于GUI(图形用户界面)的两种管理方式。

firewalld中常用的区域名称及策略规则:

    trusted 允许所有的数据包
    home拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh、mdns、ipp-client、amba-client与dhcpv6-client服务相关,则允许流量
    internal等同于home区域
    work拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh、ipp-client与dhcpv6-client服务相关,则允许流量
    public拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh、dhcpv6-client服务相关,则允许流量
    external拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh服务相关,则允许流量
    dmz拒绝流入的流量,除非与流出的流量相关;而如果流量与ssh服务相关,则允许流量
    block拒绝流入的流量,除非与流出的流量相关
    drop拒绝流入的流量,除非与流出的流量相关

firewall-cmdfirewalld防火墙配置管理工具的CLIfirewall-cmd命令正常设置防火墙策略时添加--permanent参数,这样配置的防火墙策略就可以永久生效

    参数|作用
    --get-default-zone|查询默认的区域名称
    --set-default-zone=<区域名称>|设置默认的区域,使其永久生效
    --get-zones|显示可用的区域
    --get-services|显示预先定义的服务
    --get-active-zones|显示当前正在使用的区域与网卡名称
    --add-source=|将源自此IP或子网的流量导向指定的区域
    --remove-source=|不再将源自此IP或子网的流量导向某个指定区域
    --add-interface=<网卡名称>|将源自该网卡的所有流量都导向某个指定区域
    --change-interface=<网卡名称>|将某个网卡与区域进行关联
    --list-all|显示当前区域的网卡配置参数、资源、端口以及服务等信息
    --list-all-zones|显示所有区域的网卡配置参数、资源、端口以及服务等信息
    --add-service=<服务名>|设置默认区域允许该服务的流量
    --add-port=<端口号/协议>|设置默认区域允许该端口的流量
    --remove-service=<服务名>|设置默认区域不再允许该服务的流量
    --remove-port=<端口号/协议>|设置默认区域不再允许该端口的流量
    --reload|让“永久生效”的配置规则立即生效,并覆盖当前的配置规则
    --panic-on|开启应急状况模式
    --panic-off|关闭应急状况模式

8、firewalld命令示例:

1.查看firewalld服务当前所使用的区域:firewall-cmd --get-default-zone2.查询eth0网卡在firewalld服务中的区域:firewall-cmd --get-zone-of-interface=eth03.让“永久生效”的配置规则立即生效,并覆盖当前的配置规则firewall-cmd --reload4.把firewalld服务的当前默认区域设置为public:firewall-cmd --set-default-zone=public5.启动/关闭firewalld防火墙服务的应急状况模式,阻断一切网络连接(当远程控制服务器时请慎用):firewall-cmd --panic-on/off6.查询public区域是否允许请求SSHHTTPS协议的流量firewall-cmd --zone=public --query-service=sshfirewall-cmd --zone=public --query-service=https7.把firewalld服务中请求HTTPS协议的流量设置为永久允许,并立即生效:firewall-cmd --permanent --zone=public --add-service=httpsfirewall-cmd --reload把firewalld服务中请求HTTP协议的流量设置为永久拒绝,并立即生效:firewall-cmd --permanent --zone=public --remove-service=http8.端口:把在firewalld服务中访问8080和8081端口的流量策略设置为允许,但仅限当前生效:firewall-cmd --zone=public --add-port=8080-8081/tcpfirewall-cmd --zone=public --list-port  //查看当前的端口9.把原本访问本机888端口的流量转发到22端口,要且求当前和长期均有效:firewall-cmd --permanent --zone=public --add-forward-port=port=888:proto=tcp:toport=22:toaddr=192.168.10.10

上一篇:送华大人参文光(2)

下一篇:送我哥哥易

相关内容

热门资讯

爱的教育作文 爱的教育作文爱的教育看到这个书名,我不禁开始思考一个问题:在这个缤纷多彩的世界里,爱究竟是什么含义?...
梁衡《把栏杆拍遍》读书笔记 梁衡《把栏杆拍遍》读书笔记梁衡《把栏杆拍遍》读书笔记这是一篇写得很美的散文,有以下特点:一、联想丰富...
【每日一题Day150】LC1... 分割两个字符串得到回文串【LC1616】 给你两个字符串 a 和 b ,它们长度相同...
一年级春游日记 一年级春游日记一年级春游日记1  今天是春游,我作天就去买许多零食和矿泉水,打算在春游的时候干掉,我...
课外读书笔记摘抄 课外读书笔记摘抄(精选12篇)  导语:舍弃就是这样,它也许出于无奈,可在无奈之后是另一份希望,它也...
蚂蚁观察日记 【热门】蚂蚁观察日记4篇蚂蚁观察日记 篇1  我家有一个后院,我经常到后院去观察那些鹭绿上得小精灵—...
ImageView(图像视图) 本节介绍的UI基础控件是:ImageView(图像视图),就是用来显示图像的一个View或者说控件!...
关于接口测试——自动化框架的设... 一、自动化测试框架 在大部分测试人员眼中只要沾上“框架”,就感觉非常神秘,...
【2023.3.8】数据结构复... 【2023.3.8】数据结构复习笔记 文章目录【2023.3.8】数据结构复习笔记序言一、绪论二、线...
数学周记 【精华】数学周记范文(通用20篇)  不经意间,一个星期已经结束了,想必有很多难忘的瞬间吧,是时候仔...
男生贾里全传读书笔记 男生贾里全传读书笔记(通用24篇)  当品读完一部作品后,相信大家一定领会了不少东西,不能光会读哦,...
1.计算机网络和因特网 1.因特网的描述1.1 具体构成描述根据底层实现(硬件软件)端系统(主机...
使用YOLO部署哨岗相机 流程 一.模型选取 将YOLO和Faster RCNN进行搭配,通过多次实验ÿ...
大蒜观察日记 大蒜观察日记3篇  【导语】大蒜虽然是一种很不起眼的植物,但是它的生命力很强,无论在任何的环境下都可...
四年级观察植物的日记 四年级观察植物的日记范文  观察植物的日记需要怎么写呢?同学们是否有观察过植物的生长过程呢?不妨写下...
同一片天空共眠,同一个梦想奋斗... 同一片天空共眠,同一个梦想奋斗《大抠车始歌》(1) Eng...
Vue 3.0 Data选项 #概览 非兼容:data 组件选项声明不再接收纯 JavaScript object...
Java中原子操作的实现原理 Java中原子操作的实现原理1. 什么是原子操作2. 处理器如何是实现操作的原子性2.1 使用总线锁...
春节的街头小学日记 春节的街头小学日记  今天是大年初一,天气晴朗,妈妈带着我一早来到了兴宁路。  街上可热闹了,车水马...
通用实习日记 通用实习日记集合10篇通用实习日记 篇1  4 月18 日  今天是为期三周实习的第一天,心情有点紧...