linux中iptables对防火墙的操作


Iptables教程
1. iptables防火墙简介
Iptables也叫netfilter是Linux下自带的一款免费且优秀的基于包过滤的防火墙工具,它的功能十分强大,使用非常灵活,可以对流入、流出、流经服务器的数据包进行精细的控制。iptables是Linux2.4及2.6内核中集成的模块。
2. Iptables服务相关命令
1.查看iptables状态
service iptables status
2.开启/关闭iptables
service iptables start
service iptables stop
3.查看iptables是否开机启动
chkconfig iptables –list
4.设置iptables开机启动/不启动
chkconfig iptables on
chkconfig iptables off
3. iptables原理简介
3.1. iptables的结构
在iptables中有四张表,分别是filter、nat、mangle和raw每一个表中都包含了各自不同的链,最常用的是filter表。

这里写图片描述
 filter表:
filter是iptables默认使用的表,负责对流入、流出本机的数据包进行过滤,该表中定义了3个链:
INPOUT 负责过滤所有目标地址是本机地址的数据包,就是过滤进入主机的数据包。
FORWARD 负责转发流经本机但不进入本机的数据包,起到转发的作用。
OUTPUT 负责处理所有源地址是本机地址的数据包,就是处理从主机发出去的数据包。


#查看帮助
iptables -h
man iptables列出iptables规则
iptables -L -n
列出iptables规则并显示规则编号
iptables -L -n --line-numbers列出iptables nat表规则(默认是filter表)
iptables -L -n -t nat清除默认规则(注意默认是filter表,如果对nat表操作要加-t nat)
#清楚所有规则
iptables -F #重启iptables发现规则依然存在,因为没有保存
service iptables restart#保存配置
service iptables save#禁止ssh登陆(若果服务器在机房,一定要小心)
iptables -A INPUT -p tcp --dport 22 -j DROP//静止22端口被访问
#删除规则
iptables -D INPUT -p tcp --dport 22 -j DROP-A, --append chain  追加到规则的最后一条
-D, --delete chain [rulenum]    Delete rule rulenum (1 = first) from chain 删除
-I, --insert chain [rulenum]    Insert in chain as rulenum (default 1=first) 添加到规则的第一条
-p, --proto  proto  protocol: by number or name, eg. 'tcp',常用协议有tcp、udp、icmp、all
-j, --jump target 常见的行为有ACCEPT、DROP和REJECT三种,但一般不用REJECT,会带来安全隐患注意:INPUT和DROP这样的关键字需要大写#禁止192.168.33.0网段从eth0网卡接入
iptables -A INPUT -p tcp -i eth0 -s 192.168.33.0 -j DROP
iptables -A INPUT -p tcp --dport 22 -i eth0 -s 192.168.33.61  -j ACCEPT#禁止ip地址非192.168.10.10的所有类型数据接入
iptables -A INPUT ! -s 192.168.10.10 -j DROP#禁止ip地址非192.168.10.10的ping请求
iptables -I INPUT -p icmp --icmp-type 8 -s 192.168.50.100 -j DROP#扩展匹配:1.隐式扩展 2.显示扩展#隐式扩展-p tcp--sport PORT 源端口--dport PORT 目标端口#显示扩展:使用额外的匹配规则-m EXTENSTION --SUB-OPT-p tcp --dport 22 与 -p tcp -m tcp --dport 22功能相同state:状态扩展,接口ip_contrack追踪会话状态NEW:新的连接请求ESTABLISHED:已建立的连接请求INVALID:非法连接RELATED:相关联的连接#匹配端口范围
iptables -I INPUT -p tcp --dport 22:80 -j DROP#匹配多个端口
iptables -I INPUT -p tcp -m multiport --dport 22,80,3306 -j ACCEPT#不允许源端口为80的数据流出
iptables -I OUTPUT -p tcp --sport 80 -j DROP%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

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

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

相关文章

读书--好书

说到好书,我觉得对于每一个人来说,都有自己人生中的一本好书,她的内容能够引起我们的共鸣,认识到自己的不足之处,并且能够指引我们如何去改变它,去战胜它,从而使自己获取进步,得到升…

Web Components入门不完全指北

目前流行的各类前端框架,不管是react, angular还是vue,都有一个共同点,那就是支持组件化开发,但事实上随着浏览器的发展,现在浏览器也原生支持组件式开发,本文将通过介绍Web Components 的三个主要概念&…

Flink 1.9 CDH 6.3 集成

目录 1.下载准备文件 2.felink csa jar包准备 3.将 Flink Parcel放入httpd目录下 4.配置CDH Flink Parcel 5.安装Flink 1.下载准备文件 https://archive.cloudera.com/csa/1.0.0.0/csd/FLINK-1.9.0-csa1.0.0.0-cdh6.3.0.jarhttps://archive.cloudera.com/csa/1.0.0.0/parc…

如何花两年时间面试一个人

http://blog.sina.com.cn/s/blog_4caedc7a0102dycr.html?tj1

ssh免密登陆机制示意图

ssh免密登陆机制示意图

CDH 6.x 安装 Phoenix 服务

最近有个新项目启动,版本升级到6.3,发现CDH6.2 版本已经支持Phoenix parcel安装 一、准备文件 下载 https://archive.cloudera.com/phoenix/6.2.0/csd/PHOENIX-1.0.jar 下载parcel #目录 https://archive.cloudera.com/phoenix/6.2.0/parcels/ #根据…

Kafka 集群数据备份 MirrorMaker 详解

什么是 MirrorMaker? MirrorMaker是Kafka附带的一个用于在Kafka集群之间制作镜像数据的工具。该工具主要动作就是从源集群中消费并生产到目标群集。 一个集群可以启动多个MirrorMaker配置到多个集群 运行 MirrorMaker方法 kafka-mirror-maker.sh --consumer.conf…

面试的态度

关于面试,如果到了面试现场,可能环境并不是自己所希望的那样,但是也不能消极对待,既然自己付出了时间来到这里, 公司对方也安排了时间给予你面试,不管是本着对自己的负责,还是对公司面试人员的…

域名服务的工作流程

域名服务的工作流程

Kafka 消费者组 Rebalance 详解

Rebalance作用 Rebalance 本质上是一种协议,主要作用是为了保证消费者组(Consumer Group)下的所有消费者(Consumer)消费的主体分区达成均衡。 比如:我们有10个分区,当我们有一个消费者时&…

C/C++程序员必须熟悉的开源库

作为一个经验丰富的Linux C/C程序员, 肯定亲手写过各种功能的代码, 比如封装过数据库访问的类, 封装过网络通信的类,封装过日志操作的类, 封装过文件访问的类, 封装过UI界面库等, 也在实际的项目…

CDH kafka JMX 启动

服务正常启动 telnet 127.0.0.1 9393 就可以,直接 telnet ip 9393 就不通 我们查看CDH broker_java_opts 配置项 原内容为 -server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:G1HeapRegionSize=16M -XX:MinMetaspaceFreeRatio=50 …

java基础之多线程笔记

多线程的优势: 多线程作为一种多任务,并发的工作方式,当然有其存在的优势。 1.线程之间不能共享内存,而线程之间共享内存(堆内存),则很简单。 2.系统创建进程(需要为该进程重新分…

提高C++程序运行效率的10个简单方法

本文以C/C程序为例讲述了程序运行效率的10个简单方法,分享给大家供大家参考之用。具体分析如下: 对于每一个程序员来说,程序的运行效率都是一个值得重视,并为之付出努力的问题。但是程序性能的优化也是一门复杂的学问,…

Kafka JMX 监控 之 jmxtrans + influxdb + grafana

目录 效果图 环境准备 安装 influxdb 安装我们刚刚下载 influxdb rpm文件 查看默认配置 修改参数 启动 influxdb 查看启动状态 设置基本配置 influxdb 其他命令扩展 安装 jmxtrans 可能遇到的异常 验证jmxtrans是否成功运行 安装 Grafana 安装 influxDB 与 Grafa…

如何解决多线程并发访问一个资源的安全性问题?

原子操作:所谓原子操作是指不会被线程调度机制打断的操作;这种操作一旦开始,就一直运行到结束,中间不会有任何 context switch (切[1] 换到另一个线程)。 关于我对原子操作的理解:原子操作就类…

实例浅析epoll的水平触发和边缘触发,以及边缘触发为什么要使用非阻塞IO

一.基本概念 我们通俗一点讲: Level_triggered(水平触发):当被监控的文件描述符上有可读写事件发生时,epoll_wait()会通知处理程序去读写。如果这次没有把数据一次性全部读写完(如…

Kafka开发指南之 如何Kafka 事务型生产者,保证生产者exactly once

目录 至少一次(at least once) 最多一次(at most once) 精确一次(exactly once) 幂等性 幂等性作用范围 实现方法 代码 事务 事务作用范围 实现方法 代码 我们知道Kafka的消息交付可靠性保障分为…

UML序列图

UML学习(三)-----序列图 UML的模型中可分为两种,动态模型和静态模型。用例图、类图和对象图都是UML中的静态结构模型。而在UML系统动态模型的其中一种就是交互视图,它描述了执行系统功能的各个角色之间相互传递消息的顺序关系。序…