ipython notebook开通远程

之前只是会用,别人告诉我命令和大概怎么设置的,今天自己搭建才发现一知半解搞不定啊。

目的:远程通过ipython notebook调用服务器。

服务器是ubuntu16.04

本地机器win7

配置方案一:

msys2

配置方案二:

xshell

无论哪个方案,说白了,就是想远程使用服务器,当然最常用的就是ssh方式。因此都要首先把服务器的ssh功能开通,开通方式可以参考这里

首先安装openssh

 sudo apt-get install ssh openssh

 而后,将端口开放,默认是22,改成你想用的,不常见的,这样比较安全。比如8889等。

sudo vim  /etc/ssh/sshd_config 

  port=8889

然后保存退出。从新启动ssh.

sudo /etc/init.d/ssh restart  

这样你的端口8889就开通了。

服务器终端输入:

ipython notebook --no-browser --port=8881 

这是服务器上ipython notebook的port。此时服务器终端会有反馈,同时有token输出,这个也算是加密生成的序列密码吧。本地机器登录时要输入token作为密码才能登录的。

而后根据你在windows上安装msys2或者xshell

若是msys2,msys2的安装和openssh的安装。

pacman -S openssh / msys-openssh  

上面是第一个openssh还是msys-openssh我忘记了,应该都可以,可以试试。

这样ssh就可以在msys2上用了。

在msys2上输入:

ssh -N -L localhost:8880:localhost:8881 -p 8889 user@remothost

  

会提示输入密码等,输入服务器密码就是了。

而后,在本地的网页地址输入

localhost:8880

就可以了。此时可能会提示要输入密码,把服务器上生成的token粘贴进来就可以了。

方案二,使用xshell。

首先要先配置 “连接”中的“用户身份验证”,此时输入服务器的IP地址和ssh端口(8889)(如果在开始设置SSH时,没有改端口号,使用默认的端口号22,这个地方应该不用设置的,默认就是22)。然后设置“ssh”中的“隧道”,此时,源主机设置为:localhost。倾听端口:8880.目标主机:localhost,目标端口为:8881.具体图形界面可以参考这里。上面的参考地址里,只有设置ssh中隧道的界面截图,没有前面的(大概人家使用的是默认端口22)。哈哈,因为我之前用的时候没弄服务器那边的设置,这次终于搞定了。唉,累死。再者,我使用的不是默认端口,所以要设置一下,如果你使用默认22端口,大概只要服务器开通ssh就可以了,我前面设置“连接”啥的只需要IP地址就可以了。8889这个就不用设置了。默认端口就可以了。

然后保存,连接,可以看到xshell界面已经进入服务器终端界面了。此时,在本地浏览器输入

localhost:8880

需要密码的话,把服务器的token输入,此时完成了本地机器通过ipython notebook调用服务器的配置。

为这个,还请教了一下原来的同事,估计我没问清楚,他可能默认我的端口是22.而我其实把端口改掉了。但是人家高手就是高手啊,把问题滤了一遍,感觉我思路清晰多了。

转载请注明出处,谢谢。
原文地址:https://www.cnblogs.com/jianyingzhou/p/7977101.html