因为我后续会尝试为JupyterHub配置Azure AD的身份验证,但是在Azure AD Application的配置中,Redirect Url必须是https,所以本篇研究《如果给JupyterHub配置https访问 》
Azure上的虚拟机可以设置DNS Name,设置后,形如:xxxx.westus2.cloudapp.azure.com,此时我们可以在自己的域名解析服务器上,以CName的形式,比如把hub.pstips.net指向xxxx.westus2.cloudapp.azure.com 。
阿里云和腾讯云都支持为自己注册域名申请免费1年的SSL证书,申请完毕后可以下载“服务器”类型Nginx的证书,并通过scp的方式复制到JupyterHub所在的虚拟机上。
比如我机器的路径为:
user@jupyterhub:/etc/jupyterhub/cert$ ll
total 16
drwxr-xr-x 2 root root 4096 Nov 1 03:06 ./
drwxr-xr-x 3 root root 4096 Oct 31 08:53 ../
-rw-r--r-- 1 root root 1676 Nov 1 03:05 hub.pstips.net.key
-rw-r--r-- 1 root root 3652 Nov 1 03:06 hub.pstips.net.pem
注意证书的后缀名,我之前下载的证书后缀名是crt,访问时提示证书错误,最后是通过执行下面的命令才看到了具体的错误日志:
sudo journalctl -u traefik
确保证书无误后,就可以通过tljh-config工具配置https了,
tljh-config是专门用来配置 tljh(The Littlest Jupyter Hub)的命令行工具。
sudo tljh-config set https.enabled true
sudo tljh-config set https.tls.key /etc/jupyterhub/cert/hub.pstips.net.key
sudo tljh-config set https.tls.cert /etc/jupyterhub/cert/ hub.pstips.net.pem
sudo tljh-config reload proxy
对的,只需要4行命令即可,执行完毕后通过https://hub.pstips.net/ 访问JupyterHub。
本文链接: https://www.pstips.net/jupyterhub-enable-https.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!