Linux 网络访问控制[通俗易懂]

Linux 网络访问控制[通俗易懂]网络访问控制

大家好,又见面了,我是你们的朋友全栈君。

网络访问控制:netfilter模块,可以对数据进行允许、丢弃、修改操作
数据包分类:源IP地址、目标IP地址、使用接口、使用协议、端口号、连接状态
过滤点:input、forward、output、prerouting、postrouting
功能点:filter、nat、mangle
这里写图片描述

规则:
iptables的基本语法格式
iptables [-t 表名] 命令选项 [链名] [条件匹配] [-j 目标动作或跳转]

防火墙处理数据包的四种方式
ACCEPT 允许数据包通过
DROP 直接丢弃数据包,不给任何回应信息
REJECT 拒绝数据包通过,必要时会给数据发送端一个响应的信息。
LOG 在/var/log/messages文件中记录日志信息,然后将数据包传递给下一条规则

IPTables配置
最好配置第一条iptables规则为允许来自客户端主机的SSH。
iptables配置文件:/etc/sysconfig/iptables
通过iptables添加的规则不会永久保存。如果需要永久保存,可以执行service iptables save将iptables规则保存在/etc/sysconfig/iptables。
CentOS/RHEL系统会带有默认iptables规则,保存自定义规则会覆盖这些默认规则。

iptables通过规则对数据进行访问控制
一个规则使用一行配置
规则按顺序排列
当收到、发出、转发数据包时,使用规则对数据包进行匹配,按规则顺序进行逐条匹配
数据包按照第一个匹配上的规则执行相关动作:丢弃、放行、修改
没有匹配规则,则使用默认动作(每个chain拥有各自的默认动作)

常用功能:
做为服务器使用:过滤到本机的流量、过滤到本机发出的流量
作为路由器使用:过滤转发的流量、对转发数据的源/目标IP进行修改

基本操作:
列出现有iptables规则:iptables -L
插入一个规则:iptables -I INPUT 3 -p tcp –dport 22 -j ACCEPT
删除一个iptables规则:iptables -D INPUT 3 iptables -D INPUT -s 192.168.1.1 -j DROP
删除所有规则:iptables -F

匹配参数:
基于IP地址:-s 192.168.0.1 -d 192.168.0.2
基于接口:-i eth0 -o eth1
基于协议及端口:-p tcp –dport 22 -p udp –sport 53 -p icmp
取反参数:’l’ -s ‘l’ 192.168.1.1/24

常用NAT:
通过NAT进行跳转:iptables -t nat -A PREROUTING -p tcp –dport 80 -j DNAT –to-dest 192.168.1.10
通过NAT对出向数据进行跳转:iptables -t nat -A OUTPUT -p tcp –dport 80 -j DNAT –to-dest 192.168.1.10:8080
通过NAT对数据流进行伪装:iptables -t nat -A PREROUTING -o eth0 -j MASQUERADE
通过NAT隐藏源IP地址:iptables -t nat -A PREROUTING -j SNAT –to-source 1.2.3.4

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/163422.html原文链接:https://javaforall.net

(0)
上一篇 2022年7月23日 下午6:00
下一篇 2022年7月23日 下午6:16


相关推荐

  • 用php做一个网站,教你如何用PHP开发一个完整网站

    用php做一个网站,教你如何用PHP开发一个完整网站原标题 教你如何用 PHP 开发一个完整网站作为世界上最好的语言 PHP 在 2017 年发展依然一路凯歌 PHP 语言受到众多企业家们的喜爱 众所周知 PHP 技术主要用于一个网站的后台开发 那么如何用 PHP 开发一个完整的网站呢 本文创客学院 web 全栈培训讲师和学员分享 PHP 开发教程之如何用 PHP 开发一个完整网站呢 PHP 开发教程之如何用 PHP 开发一个完整网站 PHP 支持的系统平台包括 UNIX UNIX 类操

    2026年3月17日
    2
  • 详述 hosts 文件的作用及修改 hosts 文件的方法

    详述 hosts 文件的作用及修改 hosts 文件的方法1 什么是 hosts 文件 hosts 是一个没有扩展名的系统文件 其基本作用就是将一些常用的网址域名与其对应的 IP 地址建立一个关联 数据库 当用户在浏览器中输入一个需要登录的网址时 系统会首先自动从 hosts 文件中寻找对应的 IP 地址 一旦找到 系统就会立即打开对应网页 如果没有找到 则系统会将网址提交 DNS 域名解析服务器进行 IP 地址的解析 2hosts 文件的作用 2 1

    2026年3月18日
    2
  • js 洗牌算法_数据库洗牌算法

    js 洗牌算法_数据库洗牌算法概念洗牌算法即是把一组数组里的元素随机组合生成一个新数组。实现constshuffle=([…arr])=>{letm=arr.length;while(m){consti=Math.floor(Math.random()*m–);[arr[m],arr[i]]=[arr[i],arr[m]];}returnarr;};//测试consttes

    2026年2月8日
    8
  • mknod指令详解

    mknod指令详解mknod makeblockorc OPTION NAMETYPE MAJORMINOR nbsp nbsp option 有用的就是 m 了 nbsp nbsp name nbsp 自定义 nbsp nbsp type nbsp 有 b 和 c 还有 p nbsp nbsp 主设备号 nbsp nbsp 次设备号主设备号是由 linux major

    2026年3月18日
    2
  • C++多线程函数CreateThread()详解

    C++多线程函数CreateThread()详解采用CreateThread()创建多线程程序原创2012年12月10日11:44:5936683…

    2022年7月11日
    21
  • phpstorm永久激活码2021【注册码】「建议收藏」

    phpstorm永久激活码2021【注册码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月20日
    135

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号