添加规则时的考量点:
(1)要实现哪种功能:判断添加在哪张表上;
(2)报文流经的路径:判断添加在哪个链上;

链上规则的次序:
(1)同类规则(访问同一应用),匹配范围小的放上面;
(2)不同类规则(访问不同应用),匹配到报文频率较大的放上面;

功能的优先级次序:raw --> mangle --> nat --> filter

安装:

[root@bogon ~]# yum install -y iptables-services

启动:

[root@bogon ~]# systemctl start iptables

[root@bogon ~]# systemctl enable iptables

查看所有规则:

[root@bogon ~]# iptables -vnL

[root@bogon ~]# cat /etc/sysconfig/iptables

常用选项:

-A:追加到规则的最后一条

-D:删除记录

-I:添加到规则的第一条

-P:修改表默认策略

-s:源ip地址或ip网段

--sport:源端口

-d:目的ip地址或ip网段

--dport:目的端口

-p:(proto)规定通信协议,常见的协议有:tcp、udp、icmp、all

-t:(table)指定表,不指定默认为filter表,可选的表有:filter,raw,mangle,nat

-i:进入的网卡,可配搭的链有:PREROUTING,INPUT, FORWARD

-o:出去的网卡,可配搭的链有:POSTROUTING,OUTPUT,FORWARD

-m:模块,可选模块有:state,mac

-j:(jump)指定要跳转的目标,常见的目标有:ACCEPT(接收数据包)、DROP(丢弃数据包)、REJECT(拒绝),LOG(记录日志)

增加规则

放通22端口:

[root@bogon ~]# iptables -A INPUT -p tcp --dport 22 -j ACCEPT

允许ping:

[root@bogon ~]# iptables -I INPUT -p icmp --icmp-type 8 -j ACCEPT

允许lo接口所有数据:

[root@bogon ~]# iptables -A INPUT -i lo -j ACCEPT

放通tcp10000-20000端口:

[root@bogon ~]# iptables -I INPUT -p tcp --dport 10000:20000

允许所有已建立连接或已建立连接相关连接的数据包:

[root@bogon ~]# iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

删除某个规则:

首先显示已有规则及序号:

[root@bogon ~]# iptables -vnL --line-numbers

删除序号为2的规则:

[root@bogon ~]# iptables -D INPUT 2

设置默认入站策略:

[root@bogon ~]# iptables -P INPUT DROP

清空规则:

清空规则之前先设置默认允许所有:

[root@bogon ~]# iptables -P INPUT ACCEPT

清空所有除默认规则以外的规则:

[root@bogon ~]# iptables -F

清空所有自定义链:

[root@bogon ~]# iptables -X

重置所有计数器

[root@bogon ~]# iptables -Z

保存规则:

[root@bogon ~]# service iptables save

保存规则版本:

[root@bogon ~]# iptables-save > /etc/sysconfig/iptables.20191018

恢复指定版本规则:

[root@bogon ~]# iptables-restore /etc/sysconfig/iptables.20191018

CentOS7 iptables安装及操作的更多相关文章

  1. CentOS7下安装Docker-Compose操作记录

    Docker-Compose是一个部署多个容器的简单但是非常必要的工具.安装Docker-Compose之前,请先安装 python-pip 一.安装 python-pip [root@workben ...

  2. centos7上安装iptables

    centos7上安装iptables的步骤 注意:CentOS7默认的防火墙不是iptables,而是firewalle. 安装iptable iptable-service #安装iptables ...

  3. centos 6x系统下源码安装mysql操作记录

    在运维工作中经常部署各种运维环境,涉及mysql数据库的安装也是时常需要的.mysql数据库安装可以选择yum在线安装,但是这种安装的mysql一般是系统自带的,版本方面可能跟需求不太匹配.可以通过源 ...

  4. CentOS7下安装MySQL并配置远程连接

    一.CentOS7下安装MySQL数据库 CentOS7默认的安装包里面已经没有 MySQL-Server安装包了,远程镜像中也没有了. 默认的是MariaDB (MySQL的一个分支,开发这个分支的 ...

  5. centos7.2安装完成的基本操作

    系统是centos7.2,安装完成的基本操作 1 修改网卡为eth02 更新系统3 给/etc/rc.local添加执行权限4 添加用户hequan5 禁用selinux6 关闭防火墙安装iptabl ...

  6. CentOS7.4安装部署openstack [Liberty版] (一)

    一.OpenStack简介 OpenStack是一个由NASA(美国国家航空航天局)和Rackspace合作研发并发起的,以Apache许可证授权的自由软件和开放源代码项目. OpenStack是一个 ...

  7. Centos7.4安装elasticsearch6.3+kibana6.3集群

    Centos7.4安装elasticsearch+kibana集群 Centos7.4安装elasticsearch+kibana集群 主机环境 软件环境 主机规划 主机安装前准备 安装jdk1.8 ...

  8. Centos7.5安装kafka集群

    Tags: kafka Centos7.5安装kafka集群 Centos7.5安装kafka集群 主机环境 软件环境 主机规划 主机安装前准备 安装jdk1.8 安装zookeeper 安装kafk ...

  9. Centos7.5安装分布式Hadoop2.6.0+Hbase+Hive(CDH5.14.2离线安装tar包)

    Tags: Hadoop Centos7.5安装分布式Hadoop2.6.0+Hbase+Hive(CDH5.14.2离线安装tar包) Centos7.5安装分布式Hadoop2.6.0+Hbase ...

随机推荐

  1. RabbitMQ发送消息成功,但是接受不到消息

    commom模块为mq配置模块 分了多模块后消息队列无法自动创建,发现原因竟然是SpringBoot没有扫描到common模块内的配置类. 我们在XxxApplication启动类上添加@Compon ...

  2. jvm slot复用

    如果当前字节码PC计数器的值已经超出了某个变量的作用域,那这个变量对应的Slot就可以交给其他变量使用. 字节码PC计数器就是程序计数器,程序计数器记录当前线程所执行的字节码的偏移地址.如果这个值超出 ...

  3. JMeter 性能测试实例

    一.性能测试分类: 1.基准测试 2.并发测试 3.负载测试 4.压力测试 1.基准测试: 也是单用户测试,测试环境确定以后,对业务模型中的重要业务做单独的测试,获取单用户运行时的各项性能指标,为多用 ...

  4. 关于web前端性能优化问题

    好久没有来博客写随笔了,可能是懒了吧,哈哈, 最近很想整理一篇关于前端性能优化的问题,毕竟能提高网站的观赏性对吧.提升网站性能,提升用户体验 那 什么是web性能优化? 可以这么理解:从用户访问资源到 ...

  5. 如何保证Redis与数据库的数据一致性

    一般来说,只要你用到了缓存,不管是Redis还是memcache,就可能会涉及到数据库缓存与数据的一致性问题,这里我们以Redis为例. 我们该如何保证Redis与数据库的一致性呢? So easy: ...

  6. 【GDOI2014模拟】服务器

    前言 直到比赛最后几分钟,才发现60%数据居然是一个水dp,结果没打完. 题目 我们需要将一个文件复制到n个服务器上,这些服务器的编号为S1, S2, -, Sn. 首先,我们可以选择一些服务器,直接 ...

  7. POI拆分单元格,并设置拆分后第一个cell的值为空cell的值

    // 从第A7开始,拆分单元格 CellReference ref = new CellReference("A7"); //遍历sheet中的所有的合并区域 for (int i ...

  8. CentOS 系统free命令

    CentOS 6 下free命令 各参数含义:total:总物理内存used:已使用内存free:完全未被使用的内存shared:应用程序共享内存buffers:缓存,主要用于目录方面,inode值等 ...

  9. Javascript面试题解析

    Javascript的一些面试题让很多同学感到头疼,下面就根据兄弟连教育 )毕业学员面试遇到的面试题,给大家做一个简单的分享,希望对初入职场的你们有一些帮助:Javascript面试题解析. 第一题 ...

  10. BFC、IFC、GFC和FFC

    基本概念 Box 是 CSS 布局的对象和基本单位, 直观点来说,就是一个页面是由很多个Box 组成的.元素的类型和 display 属性,决定了这个 Box 的类型. 不同类型的 Box, 会参与不 ...