我用gunicorn运行Django 1.7。我可以通过传递证书和密钥文件作为参数来使用https使用gunicorn。
当我通过geotrust ssl工具验证我的服务器时,它表示一切正常,除了 -
This server may be vulnerable: SSLv3 is enabled
Disable SSLv3 and use TLS 1.0 or higher.
我是新手,并不能理解如何做到这一点。这是与机器有关还是与gunicorn有关?
答案 0 :(得分:1)
在这里回复一个旧线程,以禁用除 TLSv1.2+ 和弱密码之外的任何内容,允许通过 SSLLabs tests
Gunicorn 选项 --ssl-version
允许设置要使用的最低 SSL 版本。
Gunicorn --ciphers
允许启用/禁用密码集或特定密码。
这两个选项都接受 OpenSSL 标准指令。
可以在 cipherli.st
截至 2021 年 4 月,为了根据 SSLLabs 建立安全的 SSL 连接,我进行了以下操作
/usr/bin/gunicorn --ssl-version=TLSv1_2 --ciphers='DEFAULT:!aNULL:!eNULL:!MD5:!3DES:!DES:!RC4:!IDEA:!SEED:!aDSS:!SRP:!PSK' --certfile=/etc/pki/tls/certs/mycert.crt --keyfile=/etc/pki/tls/private/mykey.key
警告:如果要将命令行放在 systemd 单元文件中,则需要删除单引号。
答案 1 :(得分:0)
gunicorn -ssl版本TLSv1_2 -b 0.0.0.0:8000 project:app
这应该在8000端口中启用TLSV1.2。您还可以通过运行以下命令来检查TLSV1是否仍处于活动状态。如果建立连接,则目标使用tlsv1
openssl s_client -connect主机名:port -tls1
您还可以检查tlsv1.2: openssl s_client -connect主机名:端口-tls1_2