如何在web2py中实现有效的https

时间:2015-10-15 19:35:52

标签: security ssl https web2py

我正在使用以下web2py切片尝试将https用于页面中的服务工作者功能。

http://www.web2pyslices.com/slice/show/1507/generate-ssl-self-signed-certificate-and-key-enable-https-encryption-in-web2py

我尝试使用以下行打开web2py(使用和不使用[-i IP和-p PORT]):

python web2py.py -c myPath / ssl_certificate.crt -k myPath / ssl_self_signed.key -i 127.0.0.1 -p 8000

但https被宣布为“非私人”并被划掉。因此,我在尝试注册服务工作者时收到SSL证书错误。

请说明出现了什么问题或是否需要更多信息

2 个答案:

答案 0 :(得分:2)

将ssl与web2py一起使用的最佳方法是使用deployment recipes和生产级网络服务器,例如apachenginxLighttpd

任何提到的脚本都会创建自签名证书,然后,您必须将生成的服务器配置文件修复为真实证书。

如果你有真正的IP,你可以从许多经销商处购买真正的ssl证书,或者从Let's Encript免费获得,如在VPS或服务器中。

修复配置文件的一种简单方法是创建从真实证书到服务器配置文件中提到的证书的简单链接。

要在您的计算机或内部测试服务器中测试您的服务工作者,只需使用非ssl端口,或者像Remco sugested一样,将自签名证书导入客户端环境。

答案 1 :(得分:1)

你提及" https is declared 'not private' and is crossed out"。这与不喜欢不受信任(自签名)证书的浏览器有关,因为这就是信任的全部内容。如果任何黑客只能组成证书并且https客户端至少不会皱眉,那么你仍然可能会被黑客攻击或嗅到而没有注意到。由于您没有提及任何其他错误,我假设您从web2py服务器获得其他有效的结果?

如果是这样,您已经很好地设置了自签名证书。如果您没有获得任何有效的HTML回复(当然,在您的浏览器投诉之外),您仍然遇到设置问题。

如果您的服务工作人员不接受证书,您可以执行的操作(至少在测试环境中)将自签名证书导入计算机或服务工作者证书存储库。该过程因操作系统和版本而异。

希望这会有所帮助。如果没有,请提供更多详细信息。