服务器jupyter配置与ssh远程登录

jupyter 配置

首先安装jupyter,在anaconda套装中已包含,如果安装的是精简版的miniconda则通过conda install jupyter安装。

生成配置文件

jupyter notebook --generate-config

打开ipython,生成密钥

from notebook.auth import passwd
passwd()

输入两遍密码后生成sha1码。

编辑文件~/.jupyter/jupyter_notebook_config.py,进行如下设置

c.NotebookApp.ip = '*'
c.NotebookApp.open_browser = False # 禁止自动打开浏览器  
c.NotebookApp.password = u'sha1:98f5...' # 复制刚才python中生成的密文
c.NotebookApp.port = 18888 # 指定一个端口

远程登录设置

首先要在服务器上启动jupyter服务

jupyter notebook

在本地使用ssh隧道连接进行本地端口转发

ssh -N -f -L localhost:8888:localhost:18889 remote_user@remote_host

其中,-N 表示不需要执行任何命令,仅仅做端口转发。-f 表示后台运行。-L 表示本地映射转发,选项值代表ssh客户端和服务端转发的端口,这里选取8888为本地jupyter监听端口。remote_user@remote_host 用实际的远程帐户和远程地址替换。

打开浏览器,地址栏输入localhost:8888即可连接jupyter。

其它事项

  • 端口选取。选取1024-65535之间的并且尚未使用的端口号即可。
  • 必须保持这个 SSH 连接以使端口转发保持生效。
  • 关于端口的本地转发与远程转发:应用的连接方向与ssh连接方向相同则为本地转发,否则为远程转发。这里jupyter应用和ssh均为本地到服务器,因此使用本地转发。有时需要中间机器进行逆向ssh连接,那么应使用-R选项进行远程转发。
posted @ 2018-06-21 21:52  wenbosheng  阅读(6640)  评论(0编辑  收藏  举报