Python检测和防御DOS攻击的最简单方法
作者:qq_45616828 发布时间:2022-04-12 17:23:19
标签:Python,DOS,攻击
一、在CentOS上安装Python3
1.下载Python3.10源代码文件
下载地址:https://www.python.org/downloads/source/
2.运行以下命令行完成安装
mkdir /usr/local/python3
tar -zxvf Python-3.10.0.tgz
cd Python-3.10.0
./configure --prefix=/usr/local/python3
make
make install
3.确认是否安装成功
/usr/local/python3/bin/python3
import time
print(time.strftime("%Y-%m-%d %H:%M:%S"))
import random
print(random.randint(100,200))
exit()
4.设置环境变量
vi ~/.bashrc
#添加该语句
alias python3=/usr/local/python3/bin/python3
alias pip3=/usr/local/python3/bin/pip3
alias python3=/usr/local/python3/bin/python3
alias pip3=/usr/local/pyuthon3/bin/pip3
source ~/.bashrc
5.配置pip国内镜像源
[global]
index-url=https://pypi.douban.com/simple
trusted-host = pypi.douban.com
二、理解各个命令的含义
1.uptime
2.netstat
3.ss
4.firewall-cmd
打开防火墙80端口:firewall-cmd --add-port=80/tcp
5.sysctl
三、利用Python实现DDOS入侵检测
1.采集TCP连接数据
# 4、采集连接数量最多的IP地址
def get_most_ip():
result = os.popen('netstat -ant | grep :80').read()
line_list = result.split('\n')
ip_list = []
for line in line_list:
try:
temp_list = line.split()
ip = temp_list[4].split(':')[0]
ip_list.append(ip)
except:
pass
dict = Counter(ip_list)
most_ip = dict.most_common(1)
return most_ip[0][0]
# 5、调用firewall-cmd防火墙命令封锁攻击源IP地址
def firewall_ip(ip):
result = os.popen(f"firewall-cmd --add-rich-rule='rule family=ipv4 source address={ip} port port=80 protocol=tcp reject'").read()
if 'success' in result:
print(f"已经成功将可疑攻击源 {ip} 进行封锁,流量将不再进入.")
else:
print(f"对可疑攻击源 {ip} 进行封锁时失败,转为人工处理.")
#解除封锁:firewall-cmd --add-rich-rule='rule family=ipv4 source address=192.168.80.21 port port=80 protocol=tcp reject'
来源:https://blog.csdn.net/qq_45616828/article/details/127765446


猜你喜欢
- 这篇文章主要介绍了python通过移动端访问查看电脑界面,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的
- 本博文源于python科学计算,旨在解析如何使用python进行计算分段函数值。下面就以复杂的二元函数进行演示。题目再现求解思路首先先生成x
- 用Python+OpenCV实现了自动扫雷,突破世界记录,我们先来看一下效果吧。中级 - 0.74秒 3BV/S=60.81相信许多人很早就
- 字典求和edge_weights = defaultdict(lambda: defaultdict(float))for idx,node
- 上节我们了解了图形验证码的识别,简单的图形验证码我们可以直接利用 Tesserocr 来识别,但是近几年又出现了一些新型验证码,如滑动验证码
- 一 前言前几天一个开发同事咨询我,update 更新字段为相同的值是否会记录binlog,我回复说不会。其实 严格的说这个答案是不准确的,说
- 在找寻材料的时候,会看到一些暂时用不到但是内容不错的网页,就这样关闭未免浪费掉了,下次也不一定能再次搜索到。有些小伙伴会提出可以保存网页链接
- 对于“XOR”大家应该都不陌生,我们在各种课程中都会遇到,它是一个数学逻辑运算符号,在计算机中表示为“XOR”,在数学中表示为“”,学名为“
- 前言什么是OCR?光学字符识别(Optical Character Recognition, OCR),是指对文本资料的图像文件进行分析识别
- <%DIM LinkArray(4,2)' 定义链接数组LinkArray(0,1)=&quo
- 开始之前,安利一本正在看的书《站在两个世界的边缘》,作者程浩,上帝丢给他太多理想,却忘了给他完成理想的时间。OK,有兴趣的可以看一看。nod
- 问题你想读写一个gzip或bz2格式的压缩文件。解决方案gzip 和 bz2 模块可以很容易的处理这些文件。 两个模块都为 open() 函
- 我就废话不多说了,大家还是直接看代码吧~import numpy as np kernel = np.array([1, 1, 1, 2])
- LMDB的全称是Lightning Memory-Mapped Database(快如闪电的内存映射数据库),它的文件结构简单,包含一个数据
- 本文实例讲述了wxpython中自定义事件的实现与使用方法。分享给大家供大家参考,具体如下:创建自定义事件的步骤:① 定义事件类,该事件类必
- int connectDb() { EXEC SQL BEGIN DECLARE SECTION; char username[20]; c
- 首先将ORACLE 10g的安装光盘放入光驱,如果自动运行,一般会出现如图1安装界面: 图1 单击“开始安装”,就可以安装ORACLE 10
- LyScript 可实现自定义汇编指令的替换功能,用户可以自行编写一段汇编指令,将程序 * 定的通用函数进行功能改写与转向操作,此功能原理是简
- 本文实例为大家分享了Python实现京东秒杀功能的具体代码,供大家参考,具体内容如下#Python 3.5#coding:utf-8#imp
- Part.I 预备知识Chap.I 几个概念的区分Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了