【发布时间】:2015-02-26 09:16:41
【问题描述】:
问题 1
据我所知,django 在 settings.py 中有 ALLOWED_HOSTS 选项来防止欺骗攻击。
但是,对于 ALLOWED_HOSTS 在案例 1~3 中,我不知道哪一个是 最合适的值。 (或者所有的结果都一样?)
案例一:ALLOWED_HOSTS = ['.mydomain.com']
案例2:ALLOWED_HOSTS = ['myipaddress']
案例3:ALLOWED_HOSTS = ['.mydomain.com', 'myipaddress']
这个问题和之前的([1],[2],[3])问题有很大关系,但是我不能清楚地做出决定。
问题 2
根据Brent's answer,编辑nginx的配置可能会产生相同的结果。 (见以下代码)
upstream app_server {
server unix:/tmp/gunicorn_mydomain.com.sock fail_timeout=0;
}
server {
...
## Deny illegal Host headers
if ($host !~* ^(mydomain.com|www.mydomain.com)$ ) {
return 444;
}
location / {
proxy_pass http://app_server;
...
}
}
就像类似的逻辑第一个问题一样,替换mydomain.com|www.mydomain.com 的最佳价值是什么?
【问题讨论】:
标签: django nginx settings spoofing