python - Django 获得大量 SuspiciousOperation : Invalid HTTP_HOST header

标签 python django apache debian linode

我正在使用 Django 1.5、Apache、mod_wsgi 和 python 2.7,debian 托管在 linode 上。

自从我从 django 1.3 升级到 django 1.5 后,我开始收到一些错误消息,例如:“错误(外部 IP):内部服务器错误:/feed/”。有了这个回溯:

Traceback (most recent call last):

  File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 92, in get_response
    response = middleware_method(request)

  File "/usr/local/lib/python2.7/dist-packages/django/middleware/common.py", line 57, in process_request
    host = request.get_host()

  File "/usr/local/lib/python2.7/dist-packages/django/http/request.py", line 72, in get_host
    "Invalid HTTP_HOST header (you may need to set ALLOWED_HOSTS): %s" % host)

SuspiciousOperation: Invalid HTTP_HOST header (you may need to set ALLOWED_HOSTS): tadjenanet.montadamoslim.com

但是,几天前,这个错误的数量大大增加了,而且很多 url 甚至在我的网站中都没有。

我在这里看到了答案 ( Django's SuspiciousOperation Invalid HTTP_HOST header ),我明白为什么我会得到这个,但我需要知道如何避免这增加我的服务器安全性。

最佳答案

基本上,您无法避免攻击者向您发送此类请求。大多数此类攻击来自自动渗透测试工具,例如 metasploitW3AF .幸运的是,这些尝试在 Django 1.5 或更高版本中无需担心。为避免日志泛滥,您可以配置您的 Web 服务器以过滤与您的网站域不匹配的 HTTP_HOST header 。抱歉,我不能帮你用Apache,如果用Nginx,这篇文章可以帮助http://www.acloudtree.com/how-to-deny-hosts-using-nginx/

干杯!

关于python - Django 获得大量 SuspiciousOperation : Invalid HTTP_HOST header,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18662699/

相关文章:

python - 在 Django 中设置超时功能

python - 使用python显示数据库中表的数据

TheGamesDB.net 的 apache url 重写

python - scipy 稀疏矩阵上的 sklearn train_test_split 给出了错误的结果

python - 如果我重建 Python 会破坏我的 Django 安装吗?

python - 如何在没有强类型的情况下确保可靠的合约?

django - 如何在 Django 中以编程方式创建组

linux - SVN 服务器自定义存储库 403 禁止在媒体上使用 apache2

python - 从foreignkey中过滤属于用户的所有对象

python - 'class object' 使用 `.__name__` 打印其名称,尽管没有 `__name__` 属性