文章目录

  • 1.火墙介绍
  • 2.火墙管理工具切换
  • 3.iptables 的使用
  • 4.火墙默认策略
  • 5.iptables命令

1.火墙介绍

  • netfilter:真正的防火墙,位于内核空间。
  • iptables:它其实不是真正的防火墙,可以将其理解成一个客户端代理,用户通过iptables这个代理,将用户的安全设定执行到对应的“安全框架”中,这个安全框架才是真正的防火墙,这个框架的名字就是netfilter
  • iptables|firewalld(两个工具)

2.火墙管理工具切换

  • 在rhel8中默认使用的是firewalld
  • firewalld----->iptables
  • dnf install iptables-services -y安装iptables服务
  • systemctl stop firewalld停止firewalld
  • systemctl disable firewalld 开机也不启动firewalld
  • systemctl mask firewalld 冻结firewalld
  • systemctl enable --now iptables打开iptables
  • iptales -------> fiewalld
  • systemctl stop iptables停止iptables
  • systemctl disable iptables开机也不启动iptables
  • systemctl mask iptables冻结iptables
  • systemctl enable --now firewalld打开firewalld

3.iptables 的使用

  • /etc/sysconfig/iptables iptables 策略记录文件

  • 永久保存策略

  • iptales-save > /etc/sysconfig/iptables

  • service iptables save

  • -这两种方法都是更改/etc/sysconfig/iptables这个文件

  • 如果不改文件,你对火墙进行操作之后,restart,它又会恢复原样

4.火墙默认策略

  • 默认策略中的5条链
input 输入
output 输出
forward 转发
postrouting 路由之后
prerouting 路由之后

  • 默认的3张表
filter 经过本机内核的数据(input output forward)
nat 不经过内核的数据(postrouting,prerouting,input,output)
mangle 当filter和nat表不够用时使用(input, output ,forward, postrouting,prerouting,)

5.iptables命令

  • iptables
参数 作用
-t 指定表名称
-n 不做解析
-L 查看
-A 添加策略
-p 协议
–dport 目的地端口
-s 来源
-j 动作
-j ACCEPT 允许
-j DROP 丢弃
-j REJECT 拒绝
-j SNAT 源地址转换
-j DNAT 目的地地址转换
-N 新建链
-E 更改链名称
-X 删除链
-D 删除规则
-I 插入规则
-R 更改规则
-P 更改默认规则


  • iptables是按规则一条一条执行的,遇到匹配的规则时,就不再继续执行下一条了,所以要想让其执行第二条规则,应该将其插入到第一条中
  • 例子:


  • 数据包状态:
  • RELATED 建立过连接的
  • ESTABLISHED 正在连接的
  • NEW 新的
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
##允许已经认证过的
iptables -A INPUT -m state --state NEW -i lo -j ACCEPT
##允许回环
iptables -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -m state --state NEW -p tcp --dport 53 -j ACCEPT
##允许 80 443 53 端口访问
iptables -A INPUT -m state --state NEW ! -s 192.168.1.15 -p tcp --dport 22 -j ACCEPT
##允许除了192.168.1.15之外的主机通过22端口访问
iptables -A INPUT -m state --state NEW -j REJECT
service iptables save

  • 如下图设置也可以虽然也可以通过之前的方法设置,但是会大大降低火墙的效率
  • 实验准备:VMware下一台双网卡主机,两台单网卡主机
  • 在本机设置双网卡,ip分别为192.168.1.33和172.25.254.33
  • 一台单网卡主机ip为172.25.254.20,网关设置为172.25.254.33
  • 一台单网卡主机ip是192.168.1.15(作为测试主机)
  • 保证双网卡主机的内核路由功能是开启的(双网卡主机充当路由)
  • nat表中的dnat snat
  • SNAT
iptables -t nat -A POSTROUTING -o ens160 -j SNAT --to-source 192.168.1.33
##所有从ens160出去的所有数据都伪装成192.168.1.33这个ip
  • 这样做,可以使172.25.254.20访问到192.168.1.15
  • DNAT
iptables -t nat -A PREROUTING -i ens160 -j DNAT --to-dest 172.25.254.30
##所有从ens160进来的数据都伪装成172.25.254.33这个ip
  • 这样做,可以使192.168.1.15访问到172.25.254.20

Linux中的火墙(1)(iptables)相关推荐

  1. Linux中的火墙 - iptables

    Linux中的火墙 - iptables 1.火墙介绍 2.火墙管理工具切换 3.iptables 的使用 4.火墙默认策略 5.iptables命令 1.火墙介绍 1.火墙技术 防火墙技术是通过有机 ...

  2. 如何进行Linux中的火墙策略设计优化

    Linux中的火墙策略设计 一.关于火墙的基础知识 1.火墙介绍 2.火墙管理工具切换 二.iptables 1. iptables 的使用 2.火墙默认策略 三.firewalld 1.关于fire ...

  3. Linux中的火墙策略优化(iptables,firewalld)

    一.火墙介绍 1.netfilter 2.iptables 3.iptables | firewalld 二.火墙管理工具切换 在rhel8中默认使用的是firewalldfirewalld----- ...

  4. 详细总结Linux中的火墙策略优化

    文章目录 前言 一.火墙介绍 二.火墙管理工具切换 三.iptables 1.火墙策略的永久保存 2.火墙默认策略 (1)iptables命令 (2)filter 表 (3)nat表 四.firewa ...

  5. Linux中的火墙管理

    火墙作用 将对系统有威胁的进程阻塞,Linux火墙主要分为firewall和iptables,默认火墙为firewall 火墙的默认策略 默认的五条链 input:输入 output:输出 forwa ...

  6. 第七章 LINUX中的火墙策略

    火墙管理工具切换 firewalld----->iptables dnf install iptables-services -y systemctl stop firewalld system ...

  7. Linux中的火墙策略

    1.火墙介绍 netfilter iptables iptables | firewalld  这个两个工具是用来管理火墙的 dnf install iptables-services -y 安装ip ...

  8. LINUX学习------3.6 Linux中的火墙策略优化

    3.6.1 火墙介绍和火墙管理工具切换 1.netfilter 2.1iptables 2.2firewalld 2.1和2.2 都是为1服务 两者不可共存,有功能上的优劣 firewalld---- ...

  9. Linux中can't initialize iptables table `nat': Table does

    原文地址:http://blog.sina.com.cn/s/blog_654a4e8b0100ii3y.html modprobe ip_tables modprobe ip_conntrack m ...

最新文章

  1. java mvc数据库 封装_Springmvc对就jdbc封装的操作
  2. mac上的终端bash命令
  3. 性能调优-SQL TRACE
  4. 第一章 初识Mysql
  5. ubuntu16.04编译boost for Android(boost 1.65)
  6. 轻轻一扫立刻扣款,付款码技术原理大揭秘 | 原力计划
  7. php gd support not found.,安装php71w-gd并获取错误GD库扩展不适用于此PHP安装
  8. CSS选择器优先级排列
  9. 全国地图poi数据下载
  10. Xshell6已过期的解决方案
  11. 【error】RuntimeError: size mismatch
  12. python中类名(..)(..)的情况及_call_函数解析
  13. 关于INTERVAL 函数的使用
  14. list.sort() 方法可以用函数作 key 的参数
  15. 做PPT总也做不好怎么办?掌握一些PPT制作小技巧
  16. Vue 适配iOS、Android顶部状态栏(沉浸式,混合APP开发)
  17. Kubernetes基础:问题排查方法示例:结合使用kubectl get event
  18. 斐讯K2无法运行KCPTUN占用CPU特别高的问题
  19. Java自学基础 常用类
  20. 视电阻率正演matlab,大地电磁测深一维正演——地电学实验报告分析.doc

热门文章

  1. stata 空间杜宾模型_利用STATA创建空间权重矩阵及空间杜宾模型计算命令
  2. k-近邻算法实现手写数字识别系统
  3. html 调用tcpdump,抓包工具:tcpdump抓包命令详解
  4. [推荐]美名腾Beta版
  5. USB驱动始终不能成功下载安装
  6. 全球及中国学生显微镜行业市场调查及投资战略研究报告2022-2028年
  7. 二进制,八进制,十进制,十六进制相互转换的快速记忆法
  8. POP3协议命令原始码及工作原理-PHP教程,邮件处理
  9. linux网卡驱动重装操作
  10. 【开关电源】LLC在学习路上疑惑和答案