Linux防火墙Centos6的常用命令iptables

文章目录

  • 一、iptables基础知识
  • 二、作者玩玩的配置文件
  • 三、iptables中常用的参数以及作用
    • -j参数的动作类型
  • 四、安装iptables
  • 五、iptables启动命令
  • 六、iptables命令结构
    • 命令例子
    • 默认执行方式
    • 执行iptables命令和写入配置文件两种方式的对比
  • 相对常用的命令
  • 参考文档

一、iptables基础知识

  • 学习使用iptables

二、作者玩玩的配置文件

  • 文件地址为/etc/sysconfig,文件名为iptables
cd /etc/sysconfig
vim iptables
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -s 192.168.1.1 -p tcp --dport 22 -j ACCEPT
-A INPUT -s 192.168.2.0/24 -p tcp --dport 22 -j ACCEPT
-A INPUT -s 185.23.234.219/24 -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 6666 -j ACCEPT
-A INPUT  -p tcp  -m  multiport --dports  18848,16501:16800  -j  ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

三、iptables中常用的参数以及作用

  • -A 在规则链的末尾加入新规则
  • -d 匹配目标地址
  • –dport num 匹配目标端口号
  • -D num 删除某一条规则
  • -F 清空规则链
  • -j 动作 匹配数据包后执行的动作
  • -I num 在规则链的头部加入新规则
  • -L 查看规则链
  • -m 用于指定扩展模块
  • -i 网卡名称 匹配从这块网卡流入的数据
  • -o 网卡名称 匹配从这块网卡流出的数据
  • -p 匹配协议,如TCP、UDP、ICMP
  • -P 设置默认策略
  • -s 匹配来源地址IP/MASK,加叹号“!”表示除这个IP外
  • –sport num 匹配来源端口号

-j参数的动作类型

  • ACCEPT 允许
  • DROP 丢弃(无响应)
  • REJECT 拒绝(回应请求者明确的拒绝)
  • MASQUERADE 伪装上网使用
  • SNAT 共享地址上网
  • DNAT 目标地址改写

四、安装iptables

yum install iptables-services

五、iptables启动命令

  • 查看防火墙状态
service iptables status
  • 启动防火墙
service iptables start
  • 关闭防火墙
service iptables stop
  • 开机启动防火墙
chkconfig iptables on
  • 开机禁用防火墙
chkconfig iptables off

六、iptables命令结构

iptables [-t table]  command CHAIN [match] [target/jump]
  • [-t table] 用来指定要操作的表。一般情况下不是必须要指定使用的表,因为 iptables 不指定 table 就默认使用 filter 表来执行所有的命令。
  • command 告诉程序该做什么,比如插入一条规则还是追加一条规则,或者是删除一条规则。
  • CHAIN 说明了要操作哪一条链
  • match 来根据包的特点来匹配数据包,其中会细致地描述包的某个特点,比如来源 IP 地址,网络接口,端口,协议类型等,以使这个包区别于其它所有的包。
  • target/jump 说明了对 match 到的数据包做什么操作,或者告诉数据包它应该去往何处。若数据包符合所有的 match,内核就用 target 来处理它,或者说把包发往 target。比如我们可以让内核把包发送到当前表中的其他链(可能是自定义链),或者只是丢弃这个包而没有什么处理,或者向发送者返回某个特殊的应答信息。非常重要的一点是 target 指令必须在最后。

命令例子

iptables -t filter -A INPUT -s 192.168.2.0/24 -p tcp --dport 22 -j ACCEPT
  • iptables对应iptables
  • -A对应command
  • INPUT对应CHAIN
  • -t filter 对应 [-t table]
  • -s 192.168.2.0/24 -p tcp --dport 22 -j ACCEPT 对应的是[target/jump]

默认执行方式

  • 不指定表名时,默认指filter表
  • 不指定链名时,默认指定表内的所有链
  • 除非设置链的默认策略,否则必须指定匹配标记
  • 选项、链名、控制类型使用大写字母,其余均为小写

执行iptables命令和写入配置文件两种方式的对比

  • 执行命令立即生效,写入配置文件需要将iptables重启才能生效
  • 直接使用iptables命令修改防火墙配置的时候,防火墙规则只是保存在内存中,重启后就会失效。
  • 如果要使内存的命令保存到配置文件中使用下面这条命令,但是要注意,这个命令会格式化你原来的配置文件,导致你写的注释会丢失。原配置文件会备份命令为iptables-save
    service iptables save
    
  • 执行下面的命令
    iptables -t filter -A INPUT -s 192.168.2.0/24 -p tcp --dport 22 -j ACCEPT
    
  • 等同于写入配置文件filter表下的这段话
    -A INPUT -s 192.168.2.0/24 -p tcp --dport 22 -j ACCEPT
    
  • 差别,写入配置文件不用写iptables、表名,其他都一样

相对常用的命令

参考文档

  • iptables中常用的参数以及作用
  • iptables 防火墙(filter表)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/115741.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

leetcode做题笔记200. 岛屿数量

给你一个由 1(陆地)和 0(水)组成的的二维网格,请你计算网格中岛屿的数量。 岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。 此外,你可以假设该网格的四条边…

数据安全与PostgreSQL:最佳保护策略

在当今数字化时代,数据安全成为了企业不可或缺的一环。特别是对于使用数据库管理系统(DBMS)的组织来说,确保数据的完整性、保密性和可用性至关重要。在众多DBMS中,PostgreSQL作为一个强大而灵活的开源数据库系统&#…

表存储数据模型:宽列和时间序列

表格存储是阿里云第一个分布式多模型数据库,是一种NoSQL数据库。目前,很多应用系统底层不再单纯依赖关系型数据库,而是根据不同的业务场景使用不同的数据库。例如,缓存KeyValue数据将存储在Redis中,文档数据将存储在Mo…

MySQL中的表操作,配置文件,储存引擎,数据类型

MySQL中的表操作 1 查库(已密码登陆mysql) show databases; 2 添加库 create database t1; 3 表操作 1选定操作库 use t1 2在库里添加表格式 create table t1(id int, name varchar(32), gender varchar(32),age int); 3往表里添加具体元素 insert…

webgis开发参考资料

一、ArcGIS相关 1、ArcGIS for Server 10.3.X 新型紧凑型缓存的解读和应用 http://zhihu.geoscene.cn/article/1038 2、arcgis server 紧促(bundle)格式缓存文件的读取 https://blog.csdn.net/abc553226713/article/details/8668839 3、ArcGIS 10.0紧…

智慧燃气巡检管理系统

我们知道燃气设施的巡检、巡查是运维工作中一项重要的基础工作,而巡检人员主要靠手动记录,回到公司后还得再进行录入归档、导入照片,然后打印装订等,涉及工作量也是不小的;还有人员更替,易造成人员对燃气设…

GPT-2源码实现及GPT-3、GPT-3.5、GPT-4及GPT-5内幕解析

GPT-2源码实现及GPT-3、GPT-3.5、GPT-4及GPT-5内幕解析 Gavin大咖微信:NLP_Matrix_Space 5.1 ChatGPT提示词流程解析 本节主要是跟大家剖析 GPT内部的源码,在进入源码及运行项目之前,我们先思考一下ChatGPT的机制,ChatGPT默认情况下使用的模型是GPT-3.5,作者在日常工作中使…

模型部署笔记--Pytorch-FX量化

目录 1--Pytorch-FX量化 2--校准模型 3--代码实例 3-1--主函数 3-2--prepare_dataloader函数 3-3--训练和测试函数 1--Pytorch-FX量化 Pytorch在torch.quantization.quantize_fx中提供了两个API,即prepare_fx和convert_fx。 prepare_fx的作用是准备量化&#…

supervisor的使用

一、supervisor简介 Supervisor是用Python开发的一套通用的进程管理程序,能将一个普通的命令行进程变为后台daemon,并监控进程状态,异常退出时能自动重启。它是通过fork/exec的方式把这些被管理的进程当作supervisor的子进程来启动&#xff…

Leetcode 2909. Minimum Sum of Mountain Triplets II

Leetcode 2909. Minimum Sum of Mountain Triplets II 1. 解题思路2. 代码实现 题目链接:2909. Minimum Sum of Mountain Triplets II 1. 解题思路 这一题思路上就是一个累积数组的思路。 我们要找一个山峰结构,使得其和最小,那么我们只需…

【GWO-KELM预测】基于灰狼算法优化核极限学习机回归预测研究(matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

Dapper中使用字符串作为动态参数查询时,结果不是预期的问题

1、如下图,c.industryId作为string类型当作参数传递,解析时会加单引号,即:”c.industryId“, 生成的查询语句就会变成 -- 这里把c.IndustryGroup 当成实际的值所以会查询不出数据 select b.Name,COUNT(c.Id) Num …

爬虫模拟用户登录

使用爬虫模拟用户登录过程一般包括以下几个步骤: 导入所需的库:一般需要导入requests和BeautifulSoup库来发送HTTP请求和解析HTML。 import requestsfrom bs4 import BeautifulSoup 发送GET请求获取登录页面:使用requests库发送GET请求&#…

Spring Boot OAuth 2.0整合详解

目录 一、Spring Boot 2.x 示例 1、初始化设置 2、设置重定向URI 3、配置 application.yml 4、启动应用程序 二、Spring Boot 2.x 属性映射 二、CommonOAuth2Provider 三、配置自定义提供者(Provider)属性 四、覆盖 Spring Boot 2.x 的自动配置…

数学建模——最大流问题(配合例子说明)

目录 一、最大流有关的概念 例1 1、容量网络的定义 2、符号设置 3、建立模型 3.1 每条边的容量限制 3.2 平衡条件 3.3 网络的总流量 4、网络最大流数学模型 5、计算 二、最小费用流 例2 【符号说明】 【建立模型】 (1)各条边的流量限制 &a…

Java赋值运算符(=)

赋值运算符是指为变量或常量指定数值的符号。赋值运算符的符号为“”,它是双目运算符,左边的操作数必须是变量,不能是常量或表达式。 其语法格式如下所示: 变量名称表达式内容 在 Java 语言中,“变量名称”和“表达式…

执行autoreconf -fi的过程报错

https://xie.infoq.cn/article/6bba9dd34fb49b7adacb4aacd https://github.com/curl/curl/blob/master/docs/HTTP3.md#quiche-version curl配置quiche的过程中报错, configure:7902: error: possibly undefined macro: AC_LIBTOOL_WIN32_DLLIf this token and ot…

Linux常用的调试工具

在开发和调试Linux的过程中,经常会遇到各种各样的问题,如程序崩溃、性能低下、内存泄漏等。这时候,调试就显得尤为重要。调试技巧和工具能够帮助开发人员快速定位问题并快速解决。在本文中,我们将介绍一些常用的Linux调试技巧和工…

acwing第 126 场周赛 (扩展字符串)

5281. 扩展字符串 一、题目要求 某字符串序列 s0,s1,s2,… 的生成规律如下: s0 DKER EPH VOS GOLNJ ER RKH HNG OI RKH UOPMGB CPH VOS FSQVB DLMM VOS QETH SQBsnDKER EPH VOS GOLNJ UKLMH QHNGLNJ Asn−1AB CPH VOS FSQVB DLMM VOS QHNG Asn−1AB,其…