Linux防火墙

手把手教你用gym训练宇树GO2机器人模型(附完整配置文件) 本文提供了一份详细的实战指南,教你如何使用Gym框架为宇树GO2四足机器人搭建强化学习训练环境。文章深入解析了环境配置、参数调试、奖励函数设置等关键步骤,并分享了避开常见陷阱的经验,旨在帮助开发者高效完成模型训练。 阅读详情

防火墙,简单的说,就是针对源IP或域进行允许或拒绝的设置,以决定该连接是否能够成功实现连接的一种方式。

这里我把Linux防火墙管理分成两类

  1. 通过管理/etc/hosts.allow, /etc/hosts.deny来实现,在另外一篇博文关于Linux计划任务at和crontab的时候,也设计到了类似的管理
  2. 通过管理iptables来实现

/etc/hosts.allow, /etc/hosts.deny管理

基本上只要一个服务受到xinetd管理(通常情况可以查看/etc/xinetd.d/的内容来判断),或者是该服务的程序支持TCP wrapper函数的功能时,那么该服务的防火墙的设置就可以通过以/etc/hosts.{allow,deny}来处理

#通过该命令就可以查看该服务的程序是否支持TCP wrapper函数的功能
[root@rhel6164 ~]# ldd $(which sshd)|grep wrap libwrap.so.0 => /lib64/libwrap.so.0 (0x00007feb26191000)
配置文件语法:两个文件设置语法都一样,基本上,看起了应该像下面这个样子,其中'<' '>'是不存在于配置文件中的

<service (program_name)> : <IP,domain, hostname> : <action>
#注意,第一个字段里面的是启动服务的程序,而不是服务本身,例如ssh服务的启动程序应该为sshd
例子:阻止下面两个IP使用rsync程序

[root@rhel6164 ~]# vim /etc/hosts.deny
rsync:127.0.0.100 127.0.0.200:deny
注意事项:
  1. 在两个文件中默认的action都是可以省略的,/etc/hosts.allow默认的action为allow,/etc/hosts.deny默认action为deny
  2. 两个文件的判断依据是,以/etc/hosts.allow为优先,若分析到IP或网段不在/etc/hosts.allow,则以/etc/hosts.deny来判断

一些在第一、第二字段里面的特殊字符

  1. ALL:代表全部的program_name或者IP都接受的意思,例如ALL:ALL:deny
  2. LOCAL:代表来自本机的意思,例如ALL:LOCAL:allow
  3. UNKNOWN:代表不知道的IP或者是domain或者是服务时
  4. KNOWN:代表为可以解析的IP, domain等信息时

还可以使用TCP Wrapper功能来进行更多的设置,但是前提必须要安装好了tcp_wrapper包,这里就暂时不扩展开

[root@rhel6164 ~]# rpm -qa | grep tcp_wrapper
tcp_wrappers-7.6-56.3.el6.x86_64
tcp_wrappers-libs-7.6-56.3.el6.x86_64
tcp_wrappers-libs-7.6-56.3.el6.i686

iptables

和上面讲解的/etc/hosts.*一样,iptables也是Linux自带的软件防火墙,iptables是利用封装包过滤的机制,所以他会分析封装包的表头数据,根据表头数据与定义的规则来决定该封包是否可以进入主机或者被丢弃,意思就是,根据封包的分析资料“对比”你预先定义的规则内容,若封包数据与规则内容相同则进行动作,否则就继续下一条规则的比对,重点是对比是有顺序的

iptables有三个重要的表

1. filter:主要跟Linux本机有关,这个是预设的table

  • INPUT:主要与封包想要进入我们Linux本机有关
  • OUTPUT:主要与我们Linux本机所要送出的封包有关
  • FORWARD:这个与Linux本机比较没有关系,他可以封包‘转递’到后端的计算机中,与nat这个table相关性很高

2. nat:这个表格主要在用作来源与目的之IP或port的转换,与Linux本机无关,主要与Linux主机后的局域网内的计算机有关

  • PREROUTING:在进行路由判断之前要进行的规则(DNAT/REDIRECT)
  • POSTROUTING:在进行路由判断之后要进行的规则(SNAT/MASQUERADE)
  • OUTPUT:与发送出去的封包有关
3. mangle:这个表格主要是与特殊的封包的路由旗标有关

命名格式:更多详细的信息可以参考man iptables页面

  • iptables [-t tables] [-L] [-nv]
  • iptables [-t tables] [-FXZ]
  • iptables [-t nat] -P [INPUT, OUTPUT, FORWARD] [ACCEPT, DROP]:定义预设策略(policy)
  • iptables [-AI 链] [-io 网络接口] [-p 协议] [-s 来源IP/网域] [-d 目标IP/网域] -j [ACCEPT|DROP]:封包的基础对比IP/netmask I/O 装置
  • iptables [-AI 链] [-io 网络接口] [-p tcp,udp] [-s 来源IP/网域] [--sport 端口范围] [-d 目标IP/网域] [--dport 端口范围] -j [ACCEPT|DROP]
  • iptables -A INPUT -m state --state 状态
  • iptables -A INPUT -p icmp --icmp-type 类型 -j ACCEPT

参数说明:

  • -t:后面接table,例如nat或filer,若省略,默认是filter
  • -L:列出目前的table规则
  • -n:不进行IP与HOSTNAME的反查,显示信息的速度会很快
  • -v:列出更多信息
  • -F:清除所有的已制定的规则
  • -X:杀掉所有使用者“自订”的chain/tables
  • -Z:将所有的chain的计数与流量统计都归零
  • -P:定义策略(Policy),ACCEPT,封包可接受;DROP,封包直接丢弃,不会让client端知道为何丢弃
  • -AI 链:针对某链进行规制的“插入”或"累加“,-A,新增加一条规制,该规则增加在原本规则的最后面,-I:插入一条规制,如果没有指定此规则的顺序,预设是插入变成第一条规则,链,有INPUT, OUTPUT, FORWARD等
  • -io 网络接口:设定封包进出的接口规范
  • --sport:端口范围,限制来源的端口号号码,端口号码可以是连连续的,例如1024:65535
  • --dport:端口范围,限制目标端口号码
  • -m:一些iptables的模块,主要有state(状态模块)和mac(网络卡硬件模块hardware address)
  • --state:一些封包的状态,INVALID,无效的封包,例如数据破损的封包状态;ESTABLISHED,已经联机成功的联机状态;NEW,想要新建立联机的封包状态;RELATED,表示封包是与我们主机发送出去的封包有关
  • --icmp-type:后面必须要接ICMP的封包类型,也可以使用代号,例如8代表echo request的意思

例子:

1. 列出filter table三条链的规则

[root@rhel6164 ~]# iptables -L -n #观察防火墙的规则
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:53
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:53
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:67
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:67
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  0.0.0.0/0            192.168.122.0/24    state RELATED,ESTABLISHED
ACCEPT     all  --  192.168.122.0/24     0.0.0.0/0
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-port-unreachable
REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-port-unreachable
REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
2. 列出nat table三条链的规则

[root@rhel6164 ~]# iptables -t nat -L -n
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination
MASQUERADE  tcp  --  192.168.122.0/24    !192.168.122.0/24    masq ports: 1024-65535
MASQUERADE  udp  --  192.168.122.0/24    !192.168.122.0/24    masq ports: 1024-65535
MASQUERADE  all  --  192.168.122.0/24    !192.168.122.0/24

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
3. 将本机的INPUT设定为DROP,其他设定为ACCEPT
[root@rhel6164 ~]# iptables -P INPUT DROP
[root@rhel6164 ~]# iptables -P OUTPUT ACCEPT
[root@rhel6164 ~]# iptables -P FORWARD ACCEPT
[root@rhel6164 ~]# iptables -L -n #可以与例1比较
Chain INPUT (policy DROP)
target     prot opt source               destination
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:53
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:53
ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:67
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:67
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           state NEW tcp dpt:22
REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  0.0.0.0/0            192.168.122.0/24    state RELATED,ESTABLISHED
ACCEPT     all  --  192.168.122.0/24     0.0.0.0/0
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0
REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-port-unreachable
REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-port-unreachable
REJECT     all  --  0.0.0.0/0            0.0.0.0/0           reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

4. 将要进入本机port 21的封包全都挡住

[root@rhel6164 ~]# iptables -A INPUT -i eth0 -p tcp --dport 21 -j DROP
[root@rhel6164 ~]# iptables -A INPUT -i eth0 -p udp --dport 127:128 -j ACCEPT #放行udp 127 128端口
5. 只要已建立或相关封包就予以通过,只要不合法封包就丢弃

[root@rhel6164 ~]# iptables -A INPUT -m state --state RELATED,ESABLISHED -j ACCEPT
[root@rhel6164 ~]# iptables -A INPUT -m mac --mac-source aa:bb:cc:dd:ee:ff -j ACCEPT
#上面例子是针对局域网内的aa:bb:cc:dd:ee:ff主机开放其联机
6. 将防火墙规则保存下来和恢复防火墙规则

[root@rhel6164 ~]# iptables-save > filename
[root@rhel6164 ~]# iptables-restore < filename

 

自动驾驶领域自动化数据标注应用 自动驾驶领域自动化数据标注应用 1. 背景介绍 1.1 自动驾驶技术的发展 自动驾驶技术近年来取得了长足的进步,吸引了众多科技公司和传统车企的投入。自动驾驶系统需要感知周围环境、做出决策并控制车辆,是一个极具挑战的任务。其中,环境感知是自 阅读详情

相关推荐

深度学习之常用算子介绍

打开 onnx 模型图,可以看到它是一个有向无环图。除了 Input、Output ,其他都是算子(是操作,而不是节点)在ONNX(Open Neural Network Exchange)模型中,除了输入和输出,其他都是算子(Operations)。算子是表示神经网络模型中的不同操作或层的元素。一个ONNX模型由一系列算子组成,通过连接这些算子来定义模型的计算流程。

ueke1的博客 8459

简单的状态防火墙

https://wiki.archlinux.org/index.php/Simple_stateful_firewall#Port_knocking 先决条件 注意:您的内核需要使用iptables支持进行编译。所有股票Arch Linux内核都有iptables支持。 首先,安装userland实用程序iptables或验证它们是否已经安装。 本文假设当前没有设置i

leoysq的博客 1万+

不止是回退SDK:深入解读UE5.2编译时那个烦人的C4756警告与INFINITY宏的变迁

本文深入解析了UE5.2源码编译时出现的C4756警告及其背后的技术原因,探讨了Windows SDK中INFINITY宏的变迁对Unreal Engine的影响。文章详细介绍了微软修改INFINITY定义的技术考量,并提供了UE5.2应对此类问题的灵活解决方案,包括通过BuildConfiguration.xml文件精确控制工具链版本,确保构建系统的可重复性和可配置性。

weixin_27180827的博客 311

ufw/firewald防火墙的基本应用

/////////////////////////////ufw sudo ufw deny from 192.16.25.20to any ufw deny from 192.16.25.20to any port 22 ufw delete deny from 192.16.25.20 ufw insert 1 deny from 192.16.25.20 ufw insert 1 deny from 10.20.0.1 port 23 to 10.20.0.130 port 24 //////..

heguangsui123的博客 1369

FreeRTOS实战:STM32CubeMX配置USART+DMA实现高效串口通信(附完整代码)

本文详细介绍了如何使用FreeRTOS和STM32CubeMX配置USART与DMA实现高效串口通信。通过对比轮询、中断和DMA三种模式的性能差异,提供完整的STM32CubeMX配置步骤和代码实现,帮助开发者优化嵌入式系统的串口通信性能,显著提升数据吞吐量和系统响应速度。

weixin_29190169的博客 455

【VAE学习笔记】全面通透地理解VAE(Variational Auto Encoder)

完整笔记:http://www.gwylab.com/note-vae.html 李宏毅老师的教程视频:https://www.bilibili.com/video/av15889450/?p=33 —————————————————————————————————   依据李宏毅老师的讲解,我整理了一番VAE的笔记。先简单介绍一下VAE,VAE作为一个生成模型,其基本思路是很容易理解的:把一堆真...

a312863063的博客 14万+

linux防火墙

linux防火墙软件iptables的相关信息和使用方法

m0_71518373的博客 3778

SAP Fiori Launchpad 上看不到任何 tile 应该怎么办?

中心UI组件是一个框架,为所有SAPFiori应用程序提供公共基础设施SAPFiorilaunchpad是所有SAPFioriUI的基础,并为SAPFiori应用程序提供基本功能,如登录,界面大小,应用程序之间的导航,和基于角色的应用程序目录。ABAP前端服务器包含所有基础设施组件,用于为客户端生成SAPFiori应用程序特定的UI,并与SAPBusinessSuite后端系统通信。SAPFiori应用程序的处理过程如下首先,客户端加载SAPFiori应用程序的界面。...

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 941

Linux系统——防火墙

防火墙 iptables的具体介绍

一坨小橙子的博客 5023

ardupilot 获取避障传感器数据

本节主要记录自己学ardupilot的避障代码过程,首先看下怎么注册避障传感器,然后怎么获取避障数据。

陌城烟雨 5524

Sigrity SystemSI仿真分析教程文件路径

为了方便读者能够快速上手和学会Sigrity SystemSI 的功能,将Sigrity SystemSI仿真分析教程专栏所有文章对应的实例文件上传至以下路径。

weixin_54787054的博客 711

【Linux】如何关闭Linux防火墙

在访问linux时,如果linux防火墙是开启状态,则无法访问其提供的服务,为此,需要将Linux的防火墙关闭,命令如下: 查看防火墙状态 firewall -cmd --state 关闭防火墙 systemctl stop firewalld.service 开启防火墙 systemctl start firewalld.service 禁止开机启动启动防火墙= systemctl disable firewalld.service 建议自己学习使用的Linux虚拟机可以

不想睡觉的橘子君的博客 2万+

使用MATLAB和Simulink来设计并仿真一个智能家居多传感器数据融合系统

智能家居多传感器数据融合系统旨在通过集成来自多种不同类型的传感器的数据,以提供更精确和可靠的环境信息或用户状态监测。例如,将温度、湿度、光照强度、运动检测等多种传感器的数据结合起来,可以更好地了解家庭内部的状态,并做出相应的调整或响应。在这个教程中,我们将使用MATLAB和Simulink来设计并仿真一个智能家居多传感器数据融合系统。

amy_mhd的博客 189

Windows防火墙及Linux防火墙

网络防火墙>

Palpitate_LL的博客 1831

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

linux下防火墙配置

** 简介 ** 简单来说Netfilter管网络,selinux管本地。SELinux则可以理解为是作为Linux文件权限控制(即我们知道的rwx)的补充存在的 1、iptables是Linux下功能强大的应用层防火墙工具。iptables是用于设置防火墙,防范来自网络的入侵和实现网络地址转发、QoS等功能。说到iptables必然提到Netfilter,iptables是应用层的,其实质是一个...

weixin_41038905的博客 6366

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

Linux之防火墙

irewalld(Dynamic Firewall Manager of Linux systems,Linux 系统的动态防火墙管理器)服务是默认的防火墙配置管理工具,从RHEL 7开始,用firewalld服务替代了iptables服务RHEL 9采用firewalld管理netfilter子系统,默认情况,firewalld则是交由内核层面的nftables包过滤框架来处理firewalld特点firewalld可以动态修改单条规则。

qq_57289939的博客 2050

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

linux之防火墙

一,何为防火墙 是防止火灾发生时,火势烧到其它区域,使用由防火材料砌的墙。后来这个词语引入到了网络中,把从外向内的网络入侵行为看做是火灾,防止这种入侵的策略叫做防火墙 二,防火墙分类 1.从构造上分类 硬件防火墙: 深信服,联想的网御,华为 软件防火墙 个人防火墙 定义:个人防火墙运行在 PC 上,用于监控 PC 和外网的通信信息 如windows自带的防火墙 网关防火墙 定义:在网络中的网关上配置防火墙的功能,能对网络中的流量进行策略控制,这就是网关防火墙 软件网关防火墙:如li.

笨笨的博客 8047

Linux查看防火墙

本文介绍了Linux中防火墙的相关知识。

专注Java和MySQL领域知识分享 7976

linux 怎么开启防火墙,linux 开启防火墙操作

1)在/etc/sysconfig/ 下新建iptables文件,添加如下代码:*filter:INPUT ACCEPT [0:0]:FORWARD ACCEPT [0:0]:OUTPUT ACCEPT [4:528]-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT-A INPUT -p icmp -j ACCEPT-A INPUT ...

weixin_39611754的博客 1226

Linux中的防火墙

防火墙是一种网络安全设备,它能够:监控和过滤进出网络的流量阻止不安全的连接保护计算机和网络免受未授权访问创建一个安全边界简单来说,防火墙就像是电脑的"安全门卫",决定谁能进、谁能出。Nginx(发音为"engine-x")是一个高性能的开源Web服务器和反向代理服务器。轻量级:占用资源少,内存消耗低高并发:能够同时处理数万个连接高性能:处理静态文件的速度非常快可扩展性:丰富的模块系统反向代理:可以作为前端服务器分发请求。

2501_91617137的博客 1178

linux 防火墙文件路径,linux防火墙设置

手机评站网今天精心准备的是《linux防火墙设置》,下面是详解!linux如何关闭防火墙一.Linux下开启/关闭防火墙命令1) 永久性生效,重启后不会复原开启: chkconfig iptables on关闭: chkconfig iptables off2) 即时生效,重启后复原开启: service iptables start关闭: service iptables stop需要说明的是对...

weixin_31879641的博客 2084

linux防火墙在哪个位置,linux防火墙设置在哪

linux防火墙设置位置在哪里呢?你找不找的到?下面由学习啦小编给你做出详细的linux防火墙设置方法介绍!希望对你有帮助!linux防火墙设置方法一:首先你要知道你的linux系统的版本是属于哪个分发版的。当然如果你对自己的linux系统版本不知道的话也没关系。linux系统它的防火墙名为“iptables”如果你打开linux的话是黑色的话,那么你是处在终端阶段,这样如果需要打开你的防火墙的话...

weixin_42375011的博客 2383
上一篇: Linux管理默认系统开机启动服务
下一篇: Linux trap命令
Clef
博客等级 码龄12年 125粉丝 121原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值