美文网首页我爱编程Python常用
python tornado使用OpenSSL生成的证书

python tornado使用OpenSSL生成的证书

作者: 尤樊容 | 来源:发表于2018-08-10 14:38 被阅读2次

    上一节 亲测:windows使用OpenSSL生成证书(使用者备用名称(DNS))已经使用OpenSSL生成了证书,现在就开始使用这些证书了。
    使用分为两步:服务端使用和客户端使用

    1、服务端使用

    由于tornado支持使用SSL证书,所有直接使用一下代码测试就可以啦!

    #!/usr/bin/env python3
    # -*- coding: utf-8 -*-
    import os.path
    
    from tornado import httpserver
    from tornado import ioloop
    from tornado import web
    
    class TestHandler(web.RequestHandler):
        def get(self):
            self.write("Hello, World!")
    
    def main():
        settings = {
            "static_path": os.path.join(os.path.dirname(__file__), "static"),
        }
        application = web.Application([
            (r"/", TestHandler),
        ], **settings)
        server = httpserver.HTTPServer(application, ssl_options={
              "certfile": os.path.join(os.path.abspath("."), "server.crt"),
              "keyfile": os.path.join(os.path.abspath("."), "server.key"),
        })
        server.listen(8000)
        ioloop.IOLoop.instance().start()
    
    if __name__ == "__main__":
        main()
    
    

    将以上代码保存为test.py文件,将上一节生成的bin文件下的sever.crt和server.key文件放在test.py同级目录下,可能你的命名不是server,但是如果完全是根据上一节执行的,那就用server。

    2、客户端使用(浏览器)
    chrome

    直接双击安装client.csr,会提示你,证书的发布者不可信,所以需要将生成的ca.csr文件添加到chrome信任的颁布者里面
    具体步骤: 谷歌浏览器->设置->高级->管理证书


    image.png

    添加进去以后,再双击安装client.csr,就可以了

    Firefox

    火狐浏览器也是需要手动添加信任的,将生成的ca.csr文件添加进去。
    具体步骤:
    火狐浏览器->菜单->选项


    image.png
    image.png

    添加进去以后,再双击安装client.csr,如果在从谷歌浏览器的时候安装过,现在就可以不用安装啦!
    其他浏览器添加信任大家就自行百度啦,应该都是简单的设置。

    3、运行

    运行你的.py文件,然后到浏览器输入:https://localhost:8000,就可以看到文件里打印的:‘Hello, World!’
    到这里整个流程就完成啦!要是有什么问题,欢迎留言。

    相关文章

      网友评论

        本文标题:python tornado使用OpenSSL生成的证书

        本文链接:https://www.haomeiwen.com/subject/zhulvftx.html