iptables速查
时间:2022-07-22
本文章向大家介绍iptables速查,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
iptables规则链
- PREROUTE
- INPUT
- FORWARD
- OUTPUT
- POSTROUTING
防火墙策略
- 默认关闭,只有指定数据放行
- 默认开启,只有指定的开启
动作
- DEOP 丢弃
- REJECT 明示拒绝
- ACCEPT 接受
- custom_chain 转向一个自定义的链
- DNAT
- SNAT
- MASQUERADE 源地址伪装
- REDIRECT 端口重定向
- MARK 打防火墙的标志
- RETURN 返回在自定义链执行完毕后返回 来返回原规则链
iptables默认三个表
- filter
- nat
- manage
iptables基本命令
- 这些配置就像用命令配置IP一样,重起就会失去作用,所以我们需要去保存这个配置
/etc/rc.d/init.d/iptables save
- 这样就可以写到
/etc/sysconfig/iptables
文件里了. - 写入后记得把防火墙重起一下,才能起作用.
service iptables restart
iptables -L -n
查询当前iptables的规则
iptables -F
清除预设表fliter中的所有规则链的规则
iptabl e -X (OUTPUT)
可以指定链清理 清除预设表filter中使用者自定链中的规则
设置预设规则
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
- 上面命令的意思就是 输入的和转发的 如果不在我们定义的规则里面就丢弃掉
(INPUT FORWARD)
而对于OUTPUT
我们没有过多的限制 如果输出的不在我们的规则里面即通过
添加规则
- 详细限制某个ip访问
iptables -t filter -A OUTPUT -s 192.168.31.210 -d 192.168.31.211 -p tcp --dport 22 -j ACCEPT
参数效果 -t指定表-s指定输入源-d指定接收-p tcp指定协议--dport指定端口-j指定规则
- 开启ping
iptables -A OUTPUT -p icmp -j ACCEPT (OUTPUT设置成DROP的话)
iptables -A INPUT -p icmp -j ACCEPT (INPUT设置成DROP的话)
- 关闭一下不必要端口
iptables -A OUTPUT -p tcp --sport 31337 -j DROP
这个是可以任何ip访问 只是开放了端口
开启ftp服务
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
- 如果一个ip访问web服务并发20以上就拒绝该连接
iptables -I INPUT -p tcp --dport 80 -m connlimit --connlimit-above 20 -j REJECT
ipset
- ipset安装 yum安装: yum install ipset
- 创建一个
ipset
ipset create xxx hash:net
(也可以是hash:ip ,这指的是单个ip,xxx是ipset名称)
ipset
默认可以存储65536
个元素,使用maxelem
指定数量
ipset create blacklist hash:net maxelem 1000000
#黑名单
ipset create whitelist hash:net maxelem 1000000
#白名单
- 查看已创建的
ipset
ipset list
- 加入一个名单
ip
ipset add blacklist 10.60.10.xx
- 去除名单
ip
ipset del blacklist 10.60.10.xx
- 创建防火墙规则,与此同时,
allset
这个IP
集里的ip
都无法访问80
端口(如:CC攻击可用
)
iptables -I INPUT -m set –match-set blacklist src -p tcp -j DROP
iptables -I INPUT -m set –match-set whitelist src -p tcp -j DROP
service iptables save
iptables -I INPUT -m set –match-set setname src -p tcp –destination-port 80 -j DROP
- 将
ipset
规则保存到文件ipset save blacklist -f blacklist.txt
ipset save whitelist -f whitelist.txt
- 删除
ipset
ipset destroy blacklist
ipset destroy whitelist
- 导入
ipset
规则ipset restore -f blacklist.txt
ipset restore -f whitelist.txt
ipset
的一个优势是集合可以动态的修改,即使ipset
的iptables
规则目前已经启动,新加的入ipset
的ip
也生效
本文为作者原创,手码不易,允许转载,转载后请以链接形式说明文章出处。
- Python项目实战——开发网易云音乐插件
- 将已有项目代码通过命令行方式上传到github,简易傻瓜教程(图文)将已有项目代码通过命令行方式上传到github,傻瓜教程(图文)1. 创建一个github项目2. 在Repository name
- mac执行git命令出现xcrun: error: invalid active developer path解决方法
- centos修改主机名
- SSH免密登录,RSA认证登录
- Zookeeper安装部署调试命令
- Facebook 直播是如何承受海量压力的?
- 将 Redis 作为图数据库
- 爬取 Stackoverflow 100 万条问答并简单分析
- Python: 早点知道这些就不会这样了
- 第一个参数:initScans(job)
- Mysql 高可用 InnoDB Cluster 多节点搭建过程
- 用MapReduce分析Hbase将结果插入mysql中
- 敲敲级简单的鉴别H图片的小程序
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Android 动态添加view或item并获取数据的实例
- Centos7实现MySQL基于日志还原数据的示例代码
- Android 三种延迟操作的实现方法
- 基于Android在布局中动态添加view的两种方法(总结)
- Android向node.js编写的服务器发送数据并接收请求
- Android startActivityForResult和setResult的区别
- Linux系统使用Fuser命令的方法
- Android实现地理定位功能
- Android实现在ServiceManager中加入自定义服务的方法详解
- Android studio so库找不到问题解决办法
- Android使用ViewPager实现屏幕滑动效果
- Android 自定义view实现进度条加载效果实例代码
- Android电池电量监听的示例代码
- Android 解决ScrollView嵌套CridView显示问题
- Android利用zxing快速集成二维码扫描的实例教程