Jupyter认证有问题

时间:2018-10-05 22:15:27

标签: python-3.x amazon-web-services anaconda jupyter-notebook jupyter

我一直无法连接到AWS上的Jupyter笔记本实例。这有点离我很远,所以我们将不胜感激!

ubuntu@ip-172-31-20-132:~$ export XDG_RUNTIME_DIR=""
ubuntu@ip-172-31-20-132:~$ jupyter notebook
[I 22:04:19.553 NotebookApp] JupyterLab extension loaded from /home/ubuntu/anaconda3/lib/python3.7/site-packages/jupyterlab
[I 22:04:19.553 NotebookApp] JupyterLab application directory is /home/ubuntu/anaconda3/share/jupyter/lab
[I 22:04:19.557 NotebookApp] Serving notebooks from local directory: /home/ubuntu
[I 22:04:19.557 NotebookApp] The Jupyter Notebook is running at:
[I 22:04:19.557 NotebookApp] https://(ip-172-31-20-132 or 127.0.0.1):8888/?token=fdef54981e6ae03e4f7a59276436982ff7ed1f28c7714901
[I 22:04:19.557 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[C 22:04:19.558 NotebookApp] 

    Copy/paste this URL into your browser when you connect for the first time,
    to login with a token:
        https://(ip-172-31-20-132 or 127.0.0.1):8888/?token=fdef54981e6ae03e4f7a59276436982ff7ed1f28c7714901
Exception in callback BaseAsyncIOLoop._handle_events(7, 1)
handle: <Handle BaseAsyncIOLoop._handle_events(7, 1)>
Traceback (most recent call last):
  File "/home/ubuntu/anaconda3/lib/python3.7/asyncio/events.py", line 88, in _run
    self._context.run(self._callback, *self._args)
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/tornado/platform/asyncio.py", line 122, in _handle_events
    handler_func(fileobj, events)
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/tornado/stack_context.py", line 300, in null_wrapper
    return fn(*args, **kwargs)
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/tornado/netutil.py", line 262, in accept_handler
    callback(connection, address)
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/tornado/tcpserver.py", line 263, in _handle_connection
    do_handshake_on_connect=False)
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/tornado/netutil.py", line 565, in ssl_wrap_socket
    context = ssl_options_to_context(ssl_options)
  File "/home/ubuntu/anaconda3/lib/python3.7/site-packages/tornado/netutil.py", line 540, in ssl_options_to_context
    context.load_cert_chain(ssl_options['certfile'], ssl_options.get('keyfile', None))
PermissionError: [Errno 13] Permission denied

2 个答案:

答案 0 :(得分:4)

所以我遇到了这个问题,这是由于您的jupyter配置文件中引用的证书文件存在权限问题。在jupyter_notebook_config.py中,我引用了mycert.pem。我将mycert.pem的所有权更改为我的标准用户帐户。

sudo chown user:user ~/certs/mycert.pem

这解决了问题。

答案 1 :(得分:0)

检查以下几件事,以确保在permission error机器上使用jupyter notebook时处理AWS EC2:-

1:请确保不要使用private ip,而要使用public ip

2:通过

处理证书的权限错误后出错

sudo chown $USER:$USER /home/ubuntu/certs/mycert.pem

3:处理SSL error,请确保在https://之前使用ip:<port number>

4:确保检查inbound的{​​{1}}规则,以确保您尝试正确访问security group