




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
关于limit hashlimit资料整理hashlimit是iptables的一个匹配模块,用它结合iptables的其它命令可以实现限速的功能。(注意,单独hashlimit模块是无法限速的)。不过首先必须明确,hashlimit本身只是一个“匹配”模块。我们知道,iptables的基本原理是“匹配-处理”,hashlimit在这个工作过程中只能起到匹配的作用,它本身是无法对网络数据包进行任何处理的。我看到网上有些hashlimit的例子里面说只用一条包含hashlimit匹配规则的iptables语句就可以实现限速,那是错误的。实际上,利用hashlimit来限速需要包括两个步骤。1.对符合hashlimit匹配规则包放行2.丢弃/拒绝未放行的包下面是一个简单的例子:iptables -A INPUT -p tcp -dport 22 -m hashlimit -hashlimit-name ssh -hashlimit 5/sec -hashlimit-burst 10 -hashlimit-mode srcip -hashlimit-htable-expire 90000 -j ACCEPT iptables -A INPUT -p tcp -dport 22 -j DROP 然后,我们来着重讲讲hashlimit模块具体是如何工作的。hashlimit的匹配是基于令牌桶(Token bucket)模型的。令牌桶是一种网络通讯中常见的缓冲区工作原理,它有两个重要的参数,令牌桶容量n和令牌产生速率s。我们可以把令牌当成是门票,而令牌桶则是负责制作和发放门票的管理员,它手里最多有n张令牌。一开始,管理员开始手里有n张令牌。每当一个数据包到达后,管理员就看看手里是否还有可用的令牌。如果有,就把令牌发给这个数据包,hashlimit就告诉iptables,这个数据包被匹配了。而当管理员把手上所有的令牌都发完了,再来的数据包就拿不到令牌了。这时,hashlimit模块就告诉iptables,这个数据包不能被匹配。除了发放令牌之外,只要令牌桶中的令牌数量少于n,它就会以速率s来产生新的令牌,直到令牌数量到达n为止。通过令牌桶机制,即可以有效的控制单位时间内通过(匹配)的数据包数量,又可以容许短时间内突发的大量数据包的通过(只要数据包数量不超过令牌桶n)。hashlimit模块提供了两个参数-hashlimit和-hashlimit-burst,分别对应于令牌产生速率和令牌桶容量。除了令牌桶模型外,hashlimit匹配的另外一个重要概念是匹配项。在hashlimit中,每个匹配项拥有一个单独的令牌桶,执行独立的匹配计算。通过hashlimit的-hashlimit-mode参数,你可以指定四种匹配项及其组合,即:srcip(每个源地址IP为一个匹配项),dstip( 每个目的地址IP为一个匹配项),srcport(每个源端口为一个匹配项),dstport(每个目的端口为一个匹配项)除了前面介绍的三个参数外,hashlimit还有一个必须要用的参数,即-hashlimit-name。hashlimit会在/proc/net/ipt_hashlimit目录中,为每个调用了hashlimit模块的iptables 命令建立一个文件,其中保存着各匹配项的信息。-hashlimit-name参数即用来指定该文件的文件名。好了,以上我们已经介绍了hashlimit的工作原理和相应的参数,下面我们来看几个例子。首先是前面的那个例子:iptables -A INPUT -p tcp -dport 22 -m hashlimit -hashlimit-name ssh -hashlimit 5/sec -hashlimit-burst 10 -hashlimit-mode -j ACCEPT iptables -A INPUT -p tcp -dport 22 -j DROP 在了解了hashlimit各参数的含义之后,我们现在就可以知道这两条iptables命令的作用。第一条的作用是,为所有访问本机22端口的不同IP建立一个匹配项,匹配项对应的令牌桶容量为10,令牌产生速率为5个每秒。放行通过匹配的数据包。第二条的作用是,丢弃所有其它访问本机22端口的数据包。通过这两条命令,我们就实现了限制其它机器对本机22端口(ssh服务)频繁访问的功能,再来我们看一个复杂点的限速。假设我们现在在一台NAT网关上,想限制内部网某个网段/24对外的访问频率。(这个的主要作用是限制内部中毒主机对外的flood攻击)那我们可以这么做:iptables -N DEFLOOD iptables -A FORWARD -s /24 -m state -state NEW -j DEFLOOD iptables -A DEFLOOD -m hashlimit -hashlimit-name deflood -hashlimit 10/sec -hashlimit-burst 10 -hashlimit-mode srcip -j ACCEPT iptables -P DEFLOOD -j DROP 第一条命令建立了一个自定义的处理链第二条命令,所有来自/24网段,并且打算新建网络连接的数据包,都进入DEFLOOD链处理第三条命令,在DEFLOOD链中,为每个IP建立一个匹配项,对应令牌桶容量为10,产生速率为10个每秒。放行通过匹配的数据包。第四条命令,在DEFLOOD链中丢弃所有其它的数据包以上我们介绍了hashlimit模块的原理和使用。希望能对大家有所帮助:)用iptables的limit或hashlimit模块,目标是ACCEPT。当你设置300/s时,它大约每3ms发出一个令牌,获得令牌的包可以发出去,没有获得令牌的包只能等待下一个令牌到来,这样不会造成一些包丢失,更不会造成所谓“断线”的。limit匹配:限制匹配数据包的频率或速率,看清楚了,它是用来限制匹配的数据包的频率和速率的. 这里“limit”这个词经常给别人“限制”的误解,其实准确说,应该是“按一定速率去匹配”至于“限制”还是“放行”是后面 -j 动作来实现的limit 仅仅是个 match 模块,他的功能是匹配,匹配方式是按一定速率以下2条是对icmp的burst限制iptables -A INPUT -p icmp -m limit -limit 1/sec -limit-burst 10 -j ACCEPTiptables -A INPUT -p icmp -j DROP第一条ipables的意思是限制ping包每一秒钟一个,10个后重新开始.同时可以限制IP碎片,每秒钟只允许100个碎片,用来防止DoS攻击.iptables -A INPUT -f -m limit -limit 100/sec -limit-burst 100 -j ACCEPTiptables limit 参数备忘? 限制特定封包传入速度? 限制特定端口口连入频率? iptables Log 记录参数备忘? 自定 Chain 使用备忘? 防治 SYN-Flood 碎片攻击限制 ping (echo-request) 传入的速度限制前, 可正常每 0.2 秒 ping 一次ping your.linux.ip -i 0.2限制每秒只接受一个 icmp echo-request 封包iptables -A INPUT -p icmp -icmp-type echo-request -m limit -limit 1/s -limit-burst 1 -j ACCEPTiptables -A INPUT -p icmp -icmp-type echo-request -j DROP-limit 1/s 表示每秒一次; 1/m 则为每分钟一次-limit-burst 表示允许触发 limit 限制的最大次数 (预设 5)再以每 0.2 秒 ping 一次, 得到的响应是每秒一次ping your.linux.ip -i 0.2限制 ssh 连入频率建立自订 Chain, 限制 tcp 联机每分钟一次, 超过者触发 Log 记录 (记录在 /var/log/messages)iptables -N ratelimitiptables -A ratelimit -p tcp -m state -state ESTABLISHED,RELATED -j ACCEPTiptables -A ratelimit -p tcp -syn -m limit -limit 1/m -limit-burst 1 -j ACCEPTiptables -A ratelimit -p tcp -j LOG -log-level NOTICE -log-prefix RATELIMITiptables -A ratelimit -p tcp -j DROP引用自订 Chain, 限制 ssh (tcp port 22) 连入频率iptables -A INPUT -p tcp -dport 22 -s /16 -j ACCEPT (特定 IP 来源不受限制)iptables -A INPUT -p tcp -dport 22 -j ratelimit参考数据: Mikes Blog - How to limit attack attempts in Linuxsshd_config 设定备忘:? LoginGraceTime 30 密码输入时限为 30 秒? MaxAuthTries 2 最多只能输入 3 次密码同理可证iptables -N pinglimitiptables -A pinglimit -m limit -limit 1/s -limit-burst 1 -j ACCEPTiptables -A pinglimit -j DROPiptables -A INPUT -p icmp -icmp-type echo-request -j pinglimit亦可达到每秒只接受一个 echo-request 封包补充: 清除自订 Chainiptables -L -n -line-numberiptables -D INPUT niptables -F ratelimitiptables -X ratelimit防治 SYN-Flood 碎片攻击iptables -N syn-floodiptables -A syn-flood -m limit -limit 50/s -limit-burst 10 -j RETURNiptables -A syn-flood -j DROPiptables -I INPUT -j syn-flood模拟攻击wget /tools/200102/naptha-1.1.tgzwget /linux/freshrpms/redhat/7.0/libnet/libnet-1.0.1b-1.src.rpmtar -zxf naptha-1.1.tgzrpmbuild -recompile libnet-1.0.1b-1.src.rpmcp -r /var/tmp/libnet-buildroot/usr/* /usr/local/cd naptha-1.1make./synsend your.linux.host.ip 80 local.host.eth0.ip 0.1若成功抵挡, 不久后会出现 Cant send packet!: Operation not permitted 的讯息iprange a.b.c.d-a.b.c.d 表示这一段地址还是分别表示每一个包含的地址?例 iptables -A -m iprange -src-range 0- -m limit -limit 300/second -j ACCEPT表示0-这段地址每秒一共匹配300个数据包还是表示0-地址中的每一个ip 分别匹配300个数据包?-iprange a.b.c.d-a.b.c.d 表示这一段地址还是分别表示每一个包含的地址?例 iptables -A -m iprange -src-range 0- -m limit -limit 300/second -j ACCEPT表示0-这段地址每秒一共匹配300个数据包还是表示0-地址中的每一个ip 分别匹配300个数据包?limitThis module must be explicitly specified with -m limit or -match limit. It is used to restrict the rate of matches, such as for suppressing log messages. It will only match a given number of times per second (by default 3 matches per hour, with a burst of 5). It takes two optional arguments:-limitfollowed by a number; specifies the maximum average number of matches to allow per second. The number can specify units explicitly, using /second, /minute, /hour or /day, or parts of them (so 5/second is the same as 5/s).-limit-burstfollowed by a number, indicating the maximum burst before the above limit kicks in.This match can often be used with the LOG target to do rate-limited logging. To understand how it works, lets look at the following rule, which logs packets with the default limit parameters:# iptables -A FORWARD -m limit -j LOGThe first time this rule is reached, the packet will be logged; in fact, since the default burst is 5, the first five packets will be logged. After this, it will be twenty minutes before a packet will be logged from this rule, regardless of how many packets reach it. Also, every twenty minutes which passes without matching a packet, one of the burst will be regained; if no packets hit the rule for 100 minutes, the burst will be fully recharged; back where we started.iptables -t filter -A INPUT -p icmp -icmp-type echo-request -m limit -limit 6/minute -limit-burst 6 -j LOG -log-prefix=filter INPUT:列:#!/bin/bashiptables -A INPUT -m state -state ESTABLISHED,RELATED -j ACCEPTiptables -N syn-floodiptables -A INPUT -i eth0 -p tcp -m state -state NEW -j syn-floodiptables -A syn-flood -m limit -limit 1/s -limit-burst 4 -j RETURNiptables -A INPUT -i eth0 -p tcp ! -syn -m state -state NEW -j DROPiptables -A INPUT -i eth0 -p tcp -d 0/0 -dport 80 -j ACCEPTiptables -A INPUT -i eth0 -p tcp -dport 22 -j ACCEPTiptables -A INPUT -f -m limit -limit 100/s -limit-burst 100 -j ACCEPTiptables -A INPUT -p icmp -m limit -limit 1/s -limit-burst 3 -j ACCEPTiptables -A INPUT -i eth0 -p tcp -dport 21 -j ACCEPTiptables -A INPUT -i eth0 -p tcp -dport 20 -j ACCEPTiptables -A INPUT -i eth0 -j DROP流量控制tc qdisc del dev eth0 root 2>/dev/null#定义上传总带宽(用tc语法,这里用的是htb过滤器)#define root and default ruletc qdisc add dev eth0 root handle 10: htb default 70#define uplink max ratetc class add dev eth0 parent 10: classid 10:1 htb rate 64kbps ceil 64kbps#对不同的业务进行分类,定义不同的数据流量#define second leaf#tc class add dev eth0 parent 10:1 classid 10:10 htb rate 2kbps ceil 4kbps prio 2#tc class add dev eth0 parent 10:1 classid 10:20 htb rate 2kbps ceil 4kbps prio 2#tc class add dev eth0 parent 10:1 classid 10:30 htb rate 32kbps ceil 40kbps prio 3tc class add dev eth0 parent 10:1 classid 10:40 htb rate 3kbps ceil 13kbps prio 0tc class add dev eth0 parent 10:1 classid 10:50 htb rate 1kbps ceil 11kbps prio 1tc class add dev eth0 parent 10:1 classid 10:60 htb rate 1kbps ceil 11kbps prio 1tc class add dev eth0 parent 10:1 classid 10:70 htb rate 2kbps ceil 5kbps prio 1#定义不同数据传输业务的优先级别和优化数据传输方法#define rule for second leaf#tc qdisc add dev eth0 parent 10:10 handle 101: pfifo#tc qdisc add dev eth0 parent 10:20 handle 102: pfifo#tc qdisc add dev eth0 parent 10:30 handle 103: pfifo#tc qdisc add dev eth0 parent 10:40 handle 104: pfifo#tc qdisc add dev eth0 parent 10:50 handle 105: pfifo#tc qdisc add dev eth0 parent 10:60 handle 106: pfifo#tc qdisc add dev eth0 parent 10:70 handle 107: pfifo#tc qdisc add dev eth0 parent 10:10 handle 101: sfq perturb 10 #tc qdisc add dev eth0 parent 10:20 handle 102: sfq perturb 10 #tc qdisc add dev eth0 parent 10:30 handle 103: sfq perturb 10 tc qdisc add dev eth0 parent 10:40 handle 104: sfq perturb 5 tc qdisc add dev eth0 parent 10:50 handle 105: sfq perturb 10 tc qdisc add dev eth0 parent 10:60 handle 106: sfq perturb 10 tc qdisc add dev eth0 parent 10:70 handle 107: sfq perturb 10#为netfilter链中的mangle链打标记做好准备(做句柄标示)#define fw for ipfilter #tc filter add dev eth0 parent 10: protocol ip prio 100 handle 10 fw classid 10:10#tc filter add dev eth0 parent 10: protocol ip prio 100 handle 20 fw classid 10:20#tc filter add dev eth0 parent 10: protocol ip prio 100 handle 30 fw classid 10:30tc filter add dev eth0 parent 10: protocol ip prio 100 handle 40 fw classid 10:40tc filter add dev eth0 parent 10: protocol ip prio 100 handle 50 fw classid 10:50tc filter add dev eth0 parent 10: protocol ip prio 100 handle 60 fw classid 10:60tc filter add dev eth0 parent 10: protocol ip prio 100 handle 70 fw classid 10:70#下载端口配置(方法同上传配置,只是在速率定义上有调整)echo Enabling downlink limit#downlink limit#clear dev eth1 ruletc qdisc del dev eth1 root 2>/dev/null#define root and default ruletc qdisc add dev eth1 root handle 10: htb default 70#define downlink max ratetc class add dev eth1 parent 10: classid 10:1 htb rate 128kbps ceil 128kbps#define second leaf#tc class add dev eth1 parent 10:1 classid 10:10 htb rate 2kbps ceil 32kbps prio 2#tc class add dev eth1 parent 10:1 classid 10:20 htb rate 2kbps ceil 32kbps prio 2#tc class add dev eth1 parent 10:1 classid 10:30 htb rate 32kbps ceil 212kbps prio 3tc class add dev eth1 parent 10:1 classid 10:40 htb rate 5kbps ceil 20kbps prio 0 tc class add dev eth1 parent 10:1 classid 10:50 htb rate 2kbps ceil 17kbps prio 1tc class add dev eth1 parent 10:1 classid 10:60 htb rate 2kbps ceil 17kbps prio 1tc class add dev eth1 parent 10:1 classid 10:70 htb rate 3kbps ceil 5kbps prio 1#define rule for second leaf#tc qdisc add dev eth1 parent 10:10 handle 101: pfifo#tc qdisc add dev eth1 parent 10:20 handle 102: pfifo#tc qdisc add dev eth1 parent 10:30 handle 103: pfifo#tc qdisc add dev eth1 parent 10:40 handle 104: pfifo#tc qdisc add dev eth1 parent 10:50 handle 105: pfifo#tc qdisc add dev eth1 parent 10:60 handle 106: pfifo#tc qdisc add dev eth1 parent 10:70 handle 107: pfifo#tc qdisc add dev eth1 parent 10:10 handle 101: sfq perturb 10 #tc qdisc add dev eth1 parent 10:20 handle 102: sfq perturb 10 #tc qdisc add dev eth1 parent 10:30 handle 103: sfq perturb 10 tc qdisc add dev eth1 parent 10:40 handle 104: sfq perturb 5 tc qdisc add dev eth1 parent 10:50 handle 105: sfq perturb 10 tc qdisc add dev eth1 parent 10:60 handle 106: sfq perturb 10 tc qdisc add dev eth1 parent 10:70 handle 107: sfq perturb 10#define fw for ipfilter#tc filter add dev eth1 parent 10: protocol ip prio 100 handle 10 fw classid 10:10#tc filter add dev eth1 parent 10: protocol ip prio 100 handle 20 fw classid 10:20#tc filter add dev eth1 parent 10: protocol ip prio 100 handle 30 fw classid 10:30tc filter add dev eth1 parent 10: protocol ip prio 100 handle 40 fw classid 10:40tc filter add dev eth1 parent 10: protocol ip prio 100 handle 50 fw classid 10:50tc filter add dev eth1 parent 10: protocol ip prio 100 handle 60 fw classid 10:60tc filter add dev eth1 parent 10: protocol ip prio 100 handle 70 fw classid 10:70echo Enabling mangle # uploads#iptables -t mangle -A PREROUTING -s -m layer7 -l7proto dns -j MARK -set-mark 10#iptables -t mangle -A PREROUTING -s -m layer7 -l7proto smtp -j MARK -set-mark 20#iptables -t mangle -A PREROUTING -s -m layer7 -l7proto http -j MARK -set-mark 30#为ip地址打标记以便进行流量控制-上传#iptables -t mangle -A PREROUTING -s 2 -j MARK -set-mark 40#iptables -t mangle -A PREROUTING -s /24 -j MARK -set-mark 70#iptables -t mangle -A PREROUTING -s -j MARK -set-mark 60# downloads#iptables -t mangle -A POSTROUTING -d -m layer7 -l7proto dns -j MARK -set-mark 10#iptables -t mangle -A POSTROUTING -d -m layer7 -l7proto smtp -j MARK -set-mark 20#iptables -t mangle -A POSTROUTING -d -m layer7 -l7proto http -j MARK -set-mark 30#为ip地址打标记以便进行流量控制-下载#iptables -t mangle -A POSTROUTING -d 2 -j MARK -set-mark 40#iptables -t mangle -A POSTROUTING -d /24 -j MARK -set-mark 70#iptables -t mangle -A POSTROUTING -d -j MARK -set-mark 60DDOS Protection Script#!/bin/sh# Firewall script made by Magarus for and adminzone.ro# Copyright 2007 - Saftoiu Mihai, All rights reserved.# The distribution of this script without Saftoiu Mihais# approval is a violation of copyright and will be persued to the# full extent of the law. You may use it ONLY for non-commercial use,# except without the authors explicit approval.# Define constants - Leave them aloneIPTABLES=which iptablesMODPROBE=which modprobe$MODPROBE ip_conntrack$MODPROBE ipt_recentNR_IP=IP_LOOP=PORT_LOOP=# Modify tcp/ip parameters# Reduce timeoutecho 15 > /proc/sys/net/ipv4/tcp_fin_timeout# Increase backlog and max connecho 3000 > /proc/sys/net/core/netdev_max_backlogecho 3000 > /proc/sys/net/core/somaxconn# Reduce timeouts and retransmissionsecho 300 > /proc/sys/net/ipv4/tcp_keepalive_timeecho 15 > /proc/sys/net/ipv4/tcp_keepalive_intvlecho 1 > /proc/sys/net/ipv4/tcp_keepalive_probesecho 1 > /proc/sys/net/ipv4/tcp_syncookiesecho 2 > /proc/sys/net/ipv4/tcp_synack_retriesecho 1 > /proc/sys/net/ipv4/tcp_syn_retries# Increase SYN backlogecho 28000 > /proc/sys/net/ipv4/tcp_max_syn_backlog# Decrease timeoutsecho 10 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_syn_recvecho 40 > /proc/sys/net/ipv4/netfilter/ip_conntrack_tcp_timeout_syn_sent# Check for spoofing / Use 2 instead of 1 bellow if it doesnt fix itecho 1 > /proc/sys/net/ipv4/conf/all/rp_filter# See that conntrack doesnt get overflowedecho 220000 > /proc/sys/net/ipv4/ip_conntrack_max# Use scalingecho 1 > /proc/sys/net/ipv4/tcp_window_scaling# Remove overhead and unnecessary tcp/icmp params.echo 0 > /proc/sys/net/ipv4/tcp_sackecho 0 > /proc/sys/net/ipv4/conf/all/accept_source_routeecho 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcastsecho 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responsesecho 1 > /proc/sys/net/ipv4/conf/all/log_martiansecho 0 > /proc/sys/net/ipv4/tcp_timestamps# Increase available memoryecho 16777216 > /proc/sys/net/core/rmem_maxecho 16777216 > /proc/sys/net/core/wmem_maxecho 4096 87380 16777216 > /proc/sys/net/ipv4/tcp_rmemecho 4096 87380 16777216 > /proc/sys/net/ipv4/tcp_wmemecho 1 > /proc/sys/net/ipv4/tcp_no_metrics_save# Increase number of ports available (this is a must for future apache fix)echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range# Function for protection/hub/ipprotect_hub()$IPTABLES -A OUTPUT -s $IP_LOOP -p tcp -sport $PORT_LOOP -tcp-flags ALL PSH,ACK -m string -algo bm -string Pk=version -to 300 -j RST_LOOP_OUT$IPTABLES -A INPUT -d $IP_LOOP -p tcp -dport $PORT_LOOP -syn -j SYN_CHECK$IPTABLES -A INPUT -d $IP_LOOP -p tcp -dport $PORT_LOOP -tcp-flags ALL PSH,ACK -m string -algo bm -string MyNick -to 100 -j REJECT -reject-with tcp-reset$IPTABLES -A INPUT -d $IP_LOOP -p tcp -dport $PORT_LOOP -m state -state RELATED,ESTABLISHED -j ACCEPT$IPTABLES -A INPUT -d $IP_LOOP -p tcp -dport $PORT_LOOP -j DROP$IPTABLES -A INPUT -d $IP_LOOP -p udp -dport $PORT_LOOP -j DROP$IPTABLES -A SYN_CHECK -d $IP_LOOP -p tcp -dport $PORT_LOOP -m hashlimit -hashlimit 2/min -hashlimit-mode srcip,dstip -hashlimit-name dcclients -hashlimit-burst 1 -hashlimit-htable-expire 30000 -hashlimit-htable-gcinterval 1000 -j ACCEPT$IPTABLES -A SYN
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 浙江省诸暨市荣怀小学2024-2025学年六年级上学期期末考试语文试题
- 汉字对话课件
- 网红经济现状与未来趋势分析
- 2025年农村土地转让协议模板
- 2024年秋新北师大版数学一年级上册教学课件 第二单元 5以内数加与减 第5课时 可爱的小猫
- 水表井安全知识培训课件记录
- 燃气设备紧急故障应急方案
- 混凝土施工过程中的温差控制技术方案
- 建筑工程项目施工现场物流与仓储方案
- 消防疏散指示标志设置方案
- 医院安保课件
- 文印员考试题库及答案
- 2025年涂料行业研究报告及未来发展趋势预测
- 2025年部编版新教材语文九年级上册教学计划(含进度表)
- 2025河北唐山某国有企业单位招聘劳务派遣工作人员44人笔试参考题库附带答案详解(10套)
- 班主任与家长沟通课件
- 2025年安庆怀宁县事业单位招聘考试试题【答案】
- 预防残疾知识讲座课件
- 浪漫七夕领证活动方案
- 大型活动策划组织与执行合同
- 培训机构教师如何做续费转介绍
评论
0/150
提交评论