在Heroku上,在前面运行Gunicorn是否安全?

时间:2015-10-22 17:06:38

标签: python security heroku webserver gunicorn

我几乎所有关于在Heroku上部署Python的描述基本上都是:

  1. gunicorn添加到`requirements.txt
  2. web: gunicorn wsgi:application添加到Procfile
  3. 利润
  4. Heroku docs基本上也是一样的。

    然而,Gunicorn docs非常清楚地表明它最好在HTTP代理服务器后面使用Gunicorn"并且它特别推荐Nginx。 Heroku没有提到这个,没有其他人这样做。事实上,我知道在Heroku上运行Gunicorn的每个人都将其作为独立服务器运行。使用WhiteNoise,您甚至可以相当有效地提供静态文件,因此在流量和费用超出可接受范围之前,这不是一个大问题。

    Heroku的HTTP路由是否处理了很多Gunicorn没有(慢速攻击等)的情况,这使得它安全,或者是所有这些人(包括Heroku)只是采取技术性的低路,因为它更容易?

2 个答案:

答案 0 :(得分:2)

此实例中的Heroku is the proxy server

答案 1 :(得分:1)

你是对的:推荐gunicorn的人正在走技术低路,因为它更容易。

Heroku确实提供some buffering,但它不足以防止慢速类型攻击。

这里有一篇不错的博文,更详细地解释了: http://blog.etianen.com/blog/2014/01/19/gunicorn-heroku-django/

推荐的解决方案是使用Waitress,它是纯Python的webserver,可以正确处理缓冲。