首页 > 解决方案 > 更改 Jupyter 笔记本使用的 TLS 版本密码

问题描述

从几天前开始,我的 MacOs/Safari 客户端已经无法通过 HTTPS 访问我的 Jupyter Notebook(放置在另一台服务器中)。

我正在调查的一种可能性是 Apple 可能已经停止接受 TLS1.0 密码算法https://www.macrumors.com/2018/10/15/apple-ending-tls-1-1-1-0-support -2020 年 3 月/

当我从 MacOs/Firefox 连接到同一个 Jupyter 服务器时,一切正常,但 Firefox 抱怨我使用了不安全的加密算法:TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA TLS1.0

我已经确认“openssl ciphers -v”我的服务器的机器接受很多算法,直到 TLS v1.2

如何指示 Jupyter 笔记本服务器使用更高版本的协议?

我可以在 Jupiter_notebook_config.py 中看到一个可能有帮助的部分:

## Supply SSL options for the tornado HTTPServer. See the tornado docs for
#  details.
#c.NotebookApp.ssl_options = {}

我应该把什么作为 ssl_options 放在这里???

标签: sslhttpsjupyter-notebookjupyter

解决方案


对我有用的解决方案是:

import ssl
c.NotebookApp.ssl_options = {
'ssl_version': ssl.PROTOCOL_TLSv1_2
}

当我回来调用 jupyter 笔记本时,它启用了 tls 1.2,并且浏览器没有用有效的 let'sencrypt 证书争论它


推荐阅读