Linux防DDOS攻击一些方法总结linux操作系统

时间:2023-11-27 03:33:27 作者:EE 其他工作总结 收藏本文 下载本文

【导语】“EE”通过精心收集,向本站投稿了6篇Linux防DDOS攻击一些方法总结linux操作系统,下面是小编为大家整理后的Linux防DDOS攻击一些方法总结linux操作系统,欢迎阅读与收藏。

篇1:Linux防DDOS攻击一些方法总结linux操作系统

在linux中要防ddos攻击我们最常用的办法就是安装DDoS deflate来防止或减轻ddos攻击了,但还有使用其它方法,下面我来介绍一下,

DDoS deflate介绍

DDoS deflate是一款免费的用来防御和减轻DDoS攻击的脚本。它通过netstat监测跟踪创建大量网络连接的IP地址,在检测到某个结点超过预设的限 制时,该程序会通过APF或IPTABLES禁止或阻挡这些IP.

DDoS deflate :deflate.medialayer.com/

如何确认是否受到DDOS攻击?执行:

代码如下复制代码

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

执行后,将会显示服务器上所有的每个IP多少个连接数。

以下是我自己用VPS测试的结果:

代码如下复制代码

li88-99:~# netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

1 114.226.9.132

1 174.129.237.157

1 58.60.118.142

1 Address

1 servers)

2 118.26.131.78

3 123.125.1.202

3 220.248.43.119

4 117.36.231.253

4 119.162.46.124

6 219.140.232.128

8 220.181.61.31

2311 67.215.242.196

每个IP几个、十几个或几十个连接数都还算比较正常,如果像上面成百上千肯定就不正常了。

1、安装DDoS deflate123 wget www.inetbase.com/scripts/ddos/install.sh  //下载DDoS deflate

代码如下复制代码chmod 0700 install.sh   //添加权限

./install.sh            //执行

2、配置DDoS deflate下面是DDoS deflate的默认配置位于/usr/local/ddos/ddos.conf ,内容如下:

代码如下复制代码##### Paths of the script. and other files

PROGDIR=“/usr/local/ddos”

PROG=“/usr/local/ddos/ddos.sh”

IGNORE_IP_LIST=“/usr/local/ddos/ignore.ip.list” //IP地址白名单

CRON=“/etc/cron.d/ddos.cron”   //定时执行程序

APF=“/etc/apf/apf”

IPT=“/sbin/iptables”

##### frequency in minutes for running the script

##### Caution: Every time this setting is changed, run the script. with --cron

#####         option so that the new frequency takes effect

FREQ=1  //检查时间间隔,默认1分钟

##### How many connections define a bad IP? Indicate that below.

NO_OF_CONNECTIONS=150    //最大连接数,超过这个数IP就会被屏蔽,一般默认即可

##### APF_BAN=1 (Make sure your APF version is atleast 0.96)

##### APF_BAN=0 (Uses iptables for banning ips instead of APF)

APF_BAN=1       //使用APF还是iptables,

推荐使用iptables,将APF_BAN的值改为0即可。

##### KILL=0 (Bad IPs are'nt banned, good for interactive execution of script)

##### KILL=1 (Recommended setting)

KILL=1  //是否屏蔽IP,默认即可

##### An email is sent to the following address when an IP is banned.

##### Blank would suppress sending of mails

EMAIL_TO=“root”  //当IP被屏蔽时给指定邮箱发送邮件,推荐使用,换成自己的邮箱即可

##### Number of seconds the banned ip should remain in blacklist.

BAN_PERIOD=600   //禁用IP时间,默认600秒,可根据情况调整

用户可根据给默认配置文件加上的注释提示内容,修改配置文件。

查看/usr/local/ddos/ddos.sh文件的第117行 (部分需要个性,当发现默认的无效时再修改此处)

代码如下复制代码

netstat -ntu | awk `{print $5}` | cut -d: -f1 | sort | uniq -c | sort -nr >$BAD_IP_LIST

修改为以下代码即可!

代码如下复制代码

netstat -ntu | awk `{print $5}` | cut -d: -f1 | sed -n `/[0-9]/p` | sort | uniq -c | sort -nr >$BAD_IP_LIST

喜欢折腾的可以用Web压力测试软件测试一下效果,相信DDoS deflate还是能给你的VPS或服务器抵御一部分DDOS攻击,给你的网站更多的保护。

除了这种办法我们再推荐自己使用的一种防ddos攻击的方法

脚本

代码如下复制代码

wget www.inetbase.com/scripts/ddos/install.sh

chmod +x install.sh

./install.sh

如需卸载则

代码如下复制代码

wget www.inetbase.com/scripts/ddos/uninstall.sh

chmod +x uninstall.sh

./uninstall.sh

然后就安装成功了.对于一般的ddos应该没问题了.

篇2:Linux防止ARP攻击一些方法总结linux操作系统

Linux防止ARP攻击我主要总结了三种,分别是:直接绑定网关方法,使用相关软件如Libnet与arpoison ,还有一种是利用arptables防arp攻击,最后自己写的shell脚本了,下面我们一起来看看,

方法一,最常用的绑定网关

一般服务器的网关是不会变动的,且vps也适用。

一、查看当前网关

[root@local@xiaohuai ~]# arp -a

? (218.65.22.122) at 80:fb:06:f2:4a:f4 [ether] on eth0

SSH执行以上命令,可查看到网关主机名、网关IP、网关MAC地址和对应的网卡。

二、绑定网关MAC

1)绑定

[root@local@xiaohuai ~]# echo “218.65.22.122 80:fb:06:f2:4a:f4” >/etc/safe

#ip、mac部分请根据实情修改。格式:网关IP(空格)MAC地址

2)激活使其生效

[root@local@xiaohuai ~]# arp -f /etc/safe

SSH执行以上命令,使其生效。

三、检查是否生效

[root@local@xiaohuai ~]# arp -a

? (218.65.22.122) at 80:fb:06:f2:4a:f4 [ether] PERM on eth0

再次执行arp -a命令,如下图,若句尾多了一个:PERM,则表示手动绑定生效

方法二,利用软件Libnet与arpoison

备软件

Libnet 自己去

arpoison 自己去

安装方法(FC下成功,其他发行版可参考):

先安装libnet

tar -xvzf libnet.tar.gz

cd libnet

./configure

make

make install

安装arpoison

tar -xvzf arpoison-0.6.tar.gz

cd arpoison

gcc arpoison.c /usr/lib/libnet.a -o arpoison

mv arpoison /usr/sbin

用法:

Usage: -i device -d dest_IP -s src_IP -t target_MAC -r src_MAC [-a] [-w time between packets] [-n number to send]

示例:

arpoison -i eth0 -d 172.16.18.254 -s 172.16.18.19 -t ff:ff:ff:ff:ff:ff -r 00:11:09:E8:78:DD

解释:

-i eth0 指定发送arp包的网卡接口eth0

-d 172.16.18.254 指定目的ip为172.16.18.254

-s 172.16.18.19 指定源ip为172.16.18.19

-t ff:ff:ff:ff:ff:ff 指定目的mac地址为ff:ff:ff:ff:ff:ff(arp广播地址)

-r 00:11:09:E8:C8:ED 指定源mac地址为00:11:09:E8:C8:ED

写了一个小脚本,根据注释,相信聪明智慧的各位可以搞定linux下的arp攻击了:

#!bash

#arpDefend.sh

#######

#yk103#

#######

#网关mac地址

GATEWAY_MAC=00:D0:F8:FF:4A:23

#目的mac地址

DEST_MAC=ff:ff:ff:ff:ff:ff

#目的ip地址

DEST_IP=172.16.18.254

#本地网卡接口

INTERFACE=eth0

#$INTERFACE的mac地址

MY_MAC=00:11:09:E8:78:DD

#$INTERFACE的ip地址

MY_IP=172.16.18.19

#在本机建立静态ip/mac入口 $DEST_IP–$GATEWAY_MAC

arp -s $DEST_IP $GATEWAY_MAC

#发送arp reply ,使$DEST_IP更新$MY_IP的mac地址为$MY_MAC

arpoison -i $INTERFACE -d $DEST_IP -s $MY_IP -t $DEST_MAC -r $MY_MAC 1>/dev/null &

方法三,arptables防arp攻击

Centos5安装:

#www.111cn.net

wget superb-sea2.dl.sourceforge.net/project/ebtables/arptables/arptables-v0.0.3/arptables-v0.0.3-4.tar.gz

tar zxvf arptables-v0.0.3-4.tar.gz

cd arptables-v0.0.3-4

make

make install

arptables规则设置:

arptables -F

arptables -P INPUT ACCEPT

#默认策略

arptables -A INPUT --src-ip 192.168.1.1 --src-mac 7A:31:14:42:10:01 -j ACCEPT

#允许本网段特定MAC可进入,且IP与MAC相符

arptables -A INPUT --src-mac ! 74:8E:F8:53:DC:C0 -j DROP

#拒绝非网关MAC

arptables -A INPUT --src-ip ! 192.168.1.1 -j DROP

#拒绝非网关IP

保存规则并开机加载:

iptables-save >/etc/sysconfig/arptables

/etc/init.d/arptables save

chkconfig arptables on

规则保存后重新加载会出错,去除以下文件内-o any字段,

/etc/sysconfig/arptables

方法四,shell脚本防arp攻击

代码如下复制代码

#!/bin/bash

declare gw=`route -n | grep -e '^0.0.0.0'`

declare gwname=`echo $gw | grep -oe 'w*$'`

declare gwip=`echo $gw | grep -oe '[0-9]{2,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}'`

declare gwmac=`arp -n | grep -e $gwip | grep -oe '[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-F]{2}:[0-9A-

F]{2}:[0-9A-F]{2}:[0-9A-F]{2}'`

echo “switch $gwname arp: $gwip - $gwmac to static”

arp -s $gwip $gwmac

echo “done, off arp reuqest ..”

ifconfig $gwname -arp

echo “all done.”

篇3:linux 防御小规模DDOS攻击配置方法linux操作系统

本文章来给大家介绍linux 防御小规模DDOS攻击配置方法,这里我们介绍一个ddos工具,DDoS deflate是一款运行于Linux下,专门用于防止/减轻类DDOS攻击的程序,下面大家可参考,

防御原理

DDoS deflate的原理是通过netstat命令找出 发出过量连接的单个IP,并使用iptables防火墙将这些IP进行拒绝。由于iptables防火墙拒绝IP的连接远比从Apache层面上来得高效,因此iptables便成了运行在Apache前端的“过滤器”。同样的,DDoS deflate也可以设置采用APF(高级防火墙)进行IP阻止。

如何确定DDOS攻击?

执行:

Shell

netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n

每个IP几个、十几个或几十个连接数都还算比较正常,如果像上面成百上千肯定就不正常了。

1、安装DDoS deflate

代码如下复制代码

wget www.inetbase.com/scripts/ddos/install.sh  //下载DDoS deflate

chmod 0700 install.sh   //添加权限

./install.sh            //执行

2、配置DDoS deflate

下面是DDoS deflate的默认配置位于/usr/local/ddos/ddos.conf ,内容如下:

代码如下复制代码

##### Paths of the script. and other files

PROGDIR=“/usr/local/ddos”

PROG=“/usr/local/ddos/ddos.sh”

IGNORE_IP_LIST=“/usr/local/ddos/ignore.ip.list” //IP地址白名单

CRON=“/etc/cron.d/ddos.cron”   //定时执行程序

APF=“/etc/apf/apf”

IPT=“/sbin/iptables”

##### frequency in minutes for running the script

##### Caution: Every time this setting is changed, run the script. with --cron

#####         option so that the new frequency takes effect

FREQ=1  //检查时间间隔,默认1分钟

##### How many connections define a bad IP? Indicate that below.

NO_OF_CONNECTIONS=150    //最大连接数,超过这个数IP就会被屏蔽,一般默认即可

##### APF_BAN=1 (Make sure your APF version is atleast 0.96)

##### APF_BAN=0 (Uses iptables for banning ips instead of APF)

APF_BAN=1       //使用APF还是iptables,

推荐使用iptables,将APF_BAN的值改为0即可。

##### KILL=0 (Bad IPs are'nt banned, good for interactive execution of script)

##### KILL=1 (Recommended setting)

KILL=1  //是否屏蔽IP,默认即可

##### An email is sent to the following address when an IP is banned.

##### Blank would suppress sending of mails

EMAIL_TO=“root”  //当IP被屏蔽时给指定邮箱发送邮件,推荐使用,换成自己的邮箱即可

##### Number of seconds the banned ip should remain in blacklist.

BAN_PERIOD=600   //禁用IP时间,默认600秒,可根据情况调整

用户可根据给默认配置文件加上的注释提示内容,修改配置文件。

卸载

代码如下复制代码

wget www.inetbase.com/scripts/ddos/uninstall.ddos

chmod 0700 uninstall.ddos

./uninstall.ddos

/usr/local/ddos/ddos.sh -k 30 强行屏蔽连接数大于30的IP

更多使用说明,请直接 more /usr/local/ddos/ddos.sh 查看

篇4:linux中Iptables限制同一IP连接数防CC/DDOS攻击方法linux操作系统

本文章来给大家介绍linux中Iptables限制同一IP连接数防CC/DDOS攻击方法,这个只是最基于的防止方法,如果真正的攻击我们还是需要硬件耿防止哦,

1.限制与80端口连接的IP最大连接数为10,可自定义修改。

代码如下复制代码

iptables -I INPUT -p tcp --dport 80 -m connlimit --connlimit-above 10 -j DROP

2.使用recent模块限制同IP时间内新请求连接数,recent更多功能请参考:Iptables模块recent应用。

代码如下复制代码

iptables -A INPUT -p tcp --dport 80 --syn -m recent --name webpool --rcheck --seconds 60 --hitcount 10 -j LOG --log-prefix 'DDOS:' --log-ip-options

#60秒10个新连接,超过记录日志。

iptables -A INPUT -p tcp --dport 80 --syn -m recent --name webpool --rcheck --seconds 60 --hitcount 10 -j DROP

#60秒10个新连接,超过丢弃数据包。

iptables -A INPUT -p tcp --dport 80 --syn -m recent --name webpool --set -j ACCEPT

#范围内允许通过。

上面的相对比较简单,下面我来分析更具体的配置方法。CentOS/Redhat/Fedora

在服务器执行

代码如下复制代码vi /etc/sysconfig/iptables

删除原来的内容输入如下内容 保存

# Generated by iptables-save v1.3.5 on Sun Dec 12 23:55:59 2010

*filter

:INPUT DROP [385263:27864079]

:FORWARD ACCEPT [0:0]

:OUTPUT ACCEPT [4367656:3514692346]

-A INPUT -i lo -j ACCEPT

-A INPUT -m state –state RELATED,ESTABLISHED -j ACCEPT

-A INPUT -p icmp -j ACCEPT

-A INPUT -s 127.0.0.1 -j ACCEPT

-A INPUT -p tcp -m tcp –dport 80 -m state –state NEW -m recent –set –name WEB –rsource

-A INPUT -p tcp -m tcp –dport 80 -m state –state NEW -m recent –update –seconds 5 –hitcount 20 –rttl –name WEB –rsource -j DROP

-A INPUT -p tcp -m multiport –ports 21,22,80 -j ACCEPT

-A INPUT -p tcp -m tcp –tcp-flags SYN,RST,ACK SYN -m ttl –ttl-eq 117 -j DROP

-A INPUT -p tcp -m tcp –tcp-flags SYN,RST,ACK SYN -m length –length 0:40 -j DROP

-A INPUT -p tcp -m tcp ! –tcp-flags SYN,RST,ACK SYN -m state –state NEW -j DROP

COMMIT

# Completed on Sun Dec 12 23:55:59 2010

说明此设定仅对外开放21(FTP),22(SSH),80(http网站)三个TCP端口,

设置80端口5秒内20个连接

重启iptables服务 /etc/init.d/iptables restart

设定iptables随机启动chkconfig iptables on

篇5:linux下利用iptables防Ddos攻击配置linux操作系统

在linux中iptables防火墙比windows防火墙要强大我了,iptables可以直接防ddos攻击哦,下面我来给大家介绍几种在linux中利用防火墙防ddons攻击脚本,

使用iptables 设定单个客户机的指定时间内发起最大连接数请求,超过限制的直接DROP

代码如下复制代码

iptables -A INPUT -p tcp –dport 80 -m state –state NEW -m recent –set –name WEB

iptables -A INPUT -p tcp –dport 80 -m state –state NEW -m recent –update –seconds 30 –hitcount 20 –rttl –name WEB -j DROP

上例??0秒内20次

配置相应的iptables脚本

代码如下复制代码

#!/bin/sh

## define some vars

MAX_TOTAL_SYN_RECV=“1000”

MAX_PER_IP_SYN_RECV=“20”

MARK=“SYN_RECV”

PORT=“80”

LOGFILE=“/var/log/netstat_$MARK-$PORT”

LOGFILE_IP=“/var/log/netstat_connect_ip.log”

DROP_IP_LOG=“/var/log/netstat_syn_drop_ip.log”

## iptables default rules: accept normailly packages and drop baleful SYN* packages

iptables -F -t filter

iptables -A INPUT -p TCP ! --syn -m state --state NEW -j DROP

iptables -A INPUT -p ALL -m state --state INVALID -j DROP

iptables -A INPUT -p ALL -m state --state ESTABLISHED,RELATED -j ACCEPT

## initialize

if [ -z $MARK ];then

MARK=“LISTEN”

fi

if [ -z $PORT ];then

SPORT=“tcp”

else

SPORT=“:$PORT”

fi

######################## end

## save the results of command netstat to specifal file

netstat -atun|grep $MARK|grep $SPORT 2>/dev/null >$LOGFILE

REPEAT_CONNECT_IP=`less $LOGFILE|awk '{print $5}'|cut -f1 -d ':'|sort|uniq -d |tee >$LOGFILE_IP`

if [ -f $DROP_IP_LOG ];then

for i in `less $DROP_IP_LOG`;do

iptables -A INPUT -p ALL -s $i -j DROP

done

fi

for i in `less $LOGFILE_IP`;do

REPEAT_CONNECT_NUM=`grep $i $LOGFILE|wc -l`

## count repeat connections ,if the accout is large than default number,then drop packages

if [ $REPEAT_CONNECT_NUM -gt $MAX_PER_IP_SYN_RECV ];then

echo “$i####$REPEAT_CONNECT_NUM” >>$DROP_IP_LOG

iptables -A INPUT -p ALL -s $i -j DROP

fi

done

ALL_CONNECT=`uniq -u $LOGFILE|wc -l`

#echo $ALL_CONNECT

## count repeat connections ,if the accout is large than default number,then drop packages

if [ $ALL_CONNECT -gt $MAX_TOTAL_SYN_RECV ];then

#echo $ALL_CONNECT

exit

fi

3.利用shell脚本

1、Shell脚本

代码如下复制代码

#!/bin/bash

/bin/netstat -na |grep ESTABLISHED |awk ‘{print $5}’ |awk -F : ‘{print $1}’ | sed ‘/^$/d’ |sort|uniq -c|sort -rn|head -n 10|grep -v -E ’192.168|127.0′ |sed ‘/^$/d’ |awk ‘{if ($2!=null && $1>10);{print $2}}’>/tmp/dropip

for i in $(cat /tmp/dropip)

do

/sbin/iptables -A INPUT -s $i -j DROP

echo “$i kill at `date`”>>/var/log/ddos

done

2.增加执行权限

代码如下复制代码chmod +x /root/bin/dropip.sh

3.添加到计划任务,每分钟执行一次

代码如下复制代码crontab -e

*/1 * * * * /root/bin/dropip.sh

说明:

以上脚本比较简单,但很实用,最重要的是第二行,获取ESTABLISHED连接数最多的前10个ip并写入临时文件/tmp/dropip,排除了内部ip段192.168|127.0开头的.通过for循环将dropip里面的ip通过iptables全部drop掉,然后写到日志文件/var/log/ddos

篇6:Windows系统防ARP攻击的几种方法总结Windows服务器操作系统

我想很多朋友都碰到过ARP攻击这种情况,导致流量大增或网站电脑打不开,下面我来给大家总结了常用见的解决ARP攻击的方法,有需要的朋友可参考,

防止ARP攻击方法一 设置权限文件方法

一、常规方式:

开始——运行,输入“regedit”,回车,通过“注册表——查找”,输入“AntiARP”,一个一个删除“AntiARP”注册表信息。

二、非常规方式(通过“安全模式”进入系统,关闭网络连接,拔掉网线):

根据ARP攻击原理:删除调用系统里的npptools.dll文件。如果你把这个DLL文件删除了,之后随便弄个DLL改名为npptools.dll即可。

防攻击文件:C:/WINDOWS/system32/ npptools.dll

处理方法:新建一个空文本文档,改名为npptools.dll然后把它复制到system32文件夹里,覆盖原有的npptools.dll,如果没关闭文件保护,先关闭。再把system32/dllcache里的npptools.dll也覆盖了,然后把它们的属性改为只读、隐藏,最后再把它们的everyone权限都去掉,即可!

npptools.dll文件的属性改为只读、隐藏后,再把它们的everyone的权限去掉,病毒就不能替换也不能使用它了,arp就不会起作用,从而达到防范ARP的目的。

如果C盘是NTFS分区格式就把权限都去掉,如果是FAT格式弄个只读就可以了

防止ARP攻击方法二 网关绑定方法

1.在预装好操作系统后成功远程连接后,可以发现在桌面上有贝壳ARP防火墙,安装防火墙是一个非常有效的方法建议用户第一时间安装

2.可以使用CMD命令对网关进行绑定。

在开始→运行→输入CMD后首先输入arp -a如图  dynamic “动态”

接下来我们输入arp -s对网关进行绑定 如图

最后我们来查看一下绑定状态 已经变为 static “静态”

当电脑上做绑定网关之后,就不会收到ARP欺骗攻击,向伪造的网关的 IP/MAC发送消息

Windows 7下修改网卡Mac地址,可以轻松防御ARP攻击

第一步:建立拨号连接

我们新建一个宽带连接(开始->控制面板->网络和Internet->查看网络状态和任务》设置新的连接或网络->连接到 Internet->接下来一步一步做就行了),我这儿建的名为“宽带连接 2”,然后在属性里找到选项,把里面的连接时显示进度和提示名称,密码和证书等前的对号都去掉,确定,

第二步:修改注册表

然后,Win+R(调出运行对话框),我们输入regedit,确定,这样就打开了注册表,注册表打开后,找到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 然后在右边的窗口中新建一个字符串键,名字任取,双击此键输入键值为c:\Windows\System32\rasphone -d “宽带连接 2”(注:我的宽带连接名为“宽带连接 2”,这儿要输入你的宽带连接的名称哦),这样你可以在运行里输入msconfig找启动项看一下是不是加入了一个Windows启动项,而它的命令里就是我们的c:\Windows\System32\rasphone -d \"宽带连接 2”

最后给大家总结一下防止方法

1)病毒源,对病毒源头的机器进行处理,杀毒或重新装系统。

(2)网吧管理员检查局域网病毒,安装杀毒软件。

(3)给系统安装补丁程序。

(4)给系统管理员帐户设置足够复杂的强密码。

(5)经常更新杀毒软件,安装并使用网络防火墙软件。

(6)关闭一些不需要的服务,条件允许的可关闭一些没有必要的共享,也包括C$、D$等管理共享。完全单机的用户也可直接关闭Server服务

(7)建议用户不要随便点击打开QQ、MSN等聊天工具上发来的链接信息,以免病毒的传播。

个人建义

其实我们可以在电脑中安装一个360软件就可以直接解决这个问题哦,因为360内置了防arp攻击软件哦。

Linux 修改用户密码方法介绍linux操作系统

总结方法

解析网络过载攻击

攻击四年级叙事作文

的终极武器DDoS技术一览

阿里云服务器上安装 Ghost方法介绍linux操作系统

疫情防控总结

防踩踏演练总结

防溺水活动总结

防溺水培训总结

Linux防DDOS攻击一些方法总结linux操作系统(精选6篇)

欢迎下载DOC格式的Linux防DDOS攻击一些方法总结linux操作系统,但愿能给您带来参考作用!
推荐度: 推荐 推荐 推荐 推荐 推荐
点击下载文档 文档为doc格式
点击下载本文文档