ssl - 更改 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 放在这里???
解决方案
对我有用的解决方案是:
import ssl
c.NotebookApp.ssl_options = {
'ssl_version': ssl.PROTOCOL_TLSv1_2
}
当我回来调用 jupyter 笔记本时,它启用了 tls 1.2,并且浏览器没有用有效的 let'sencrypt 证书争论它
推荐阅读
- java - 如何使用 Spring-MVC 为“更新”/“编辑”创建 SQL 语法?
- javascript - 使用从 AJAX 检索到的 ID 重定向到 Action
- scala - Scala 和 fs2/cats 的 WebSocket 挑战
- java - 如何从 EJB 数据库中删除现有表并在数据库中创建相同的表
- sql - 多行值到同一行和不同列
- python - 基于 numpy 索引和 TensorFlow 中的唯一运算符创建新张量
- python - Python Platformer:跳跃角色
- visual-studio-code - 调整发送 codelens 和 codeAction 消息的 vscode 间隔
- python - 从 Haxe 内部调用外部 Python 类函数
- sql - 给定一个用户 ID,获取他们所有的频道以及收件人和最后的消息预览?