Cuadernos de Python y compartir

1

Soy un principiante cuando se trata de programación o servidores. Instalé Python (lenguaje de programación), así como cuaderno Jupyter como parte de un proyecto de curso en línea. Después de la instalación, simplemente seguí las instrucciones y escribí "notebook jupyter" en el indicador de comando.

El siguiente texto apareció en el símbolo del sistema:

> Writing notebook server cookie secret to (folder name)
> Serving notebooks from local directory: (folder name)
> ...

Después de esto, el contenido de mi carpeta local apareció en una ventana del navegador. Esto parecía bastante aterrador, como si todos los usuarios de la misma aplicación ahora tuvieran acceso a mi disco duro.

¿Alguien sabe si esto es parte de lo que se supone que debe hacer el cuaderno Jupyter? Y si no lo es, ¿por qué lo hacen parecer extremadamente sospechoso? Quiero decir, vamos, la aplicación dijo "Sirviendo cuadernos desde un directorio local", aunque me doy cuenta de que un cuaderno es un tipo de proyecto Jupyter, sigue siendo la línea de salida más confusa que he leído cuando ejecutando un programa de computadora.

    
pregunta twinkstar88 30.12.2017 - 22:58
fuente

2 respuestas

2

Si inicia el servidor portátil juypter, generará un token de autorización y una URL que usará este token. Si observa más a fondo la salida, verá algo como esto:

[I 06:02:28.891 NotebookApp] The Jupyter Notebook is running at: http://localhost:8888/?token=e2b7d4eb14d22f46a7950ccb01aecaf303951cb6fbe87fa9

Todos los que conocen esta URL pueden conectarse a la notebook y se consideran autorizados. Por lo tanto, la URL o este token se deben tratar como una contraseña.

  

... como si todos los usuarios de la misma aplicación ahora tuvieran acceso a mi disco duro.

Todos los que utilizan la misma aplicación y el mismo token de autorización tienen acceso a la carpeta local (no a todo el disco duro). Esto es similar a, por ejemplo, compartir una carpeta dentro de Windows y darles a otros la ruta y la contraseña.

  

... aunque me doy cuenta de que una notebook es un tipo de proyecto Jupyter

Desde dentro del cuaderno Juypter también tiene acceso a los archivos dentro del directorio local. Esto es necesario, por ejemplo, para incluir datos locales en los cálculos realizados dentro de su cuaderno.

    
respondido por el Steffen Ullrich 31.12.2017 - 06:13
fuente
0

Es una extensión de la respuesta de Steffen.

  

Todos los que conocen esta URL pueden conectarse a la notebook y se consideran autorizados. Por lo tanto, la URL o este token se deben tratar como una contraseña

Lo primero importante es que su servidor de notebook se ejecuta en localhost , lo que significa que solo está disponible para las personas registradas en su máquina. Sin embargo, supongo que puede depender de alguna manera de la configuración de su red.

Sin embargo, se está conectando localmente a su máquina desde su máquina. Si alguno de los otros usuarios de la máquina puede evadir su conexión (es HTTP simple) y robar su token de autenticación, eso significa que probablemente tenga suficientes privilegios para acceder a su directorio local sin tener que recurrir a Jupyter.

Sin embargo, si decide ejecutar el servidor en su dirección IP externa (para conectarse a él de forma remota), es posible que tenga un problema ya que su token está expuesto a cualquier persona entre usted y su servidor.

  

Desde dentro del cuaderno Juypter también tiene acceso a los archivos dentro del directorio local. Esto es necesario, por ejemplo, para incluir datos locales en los cálculos realizados dentro de su cuaderno.

También tenga en cuenta que el código de Python en el portátil tiene acceso a todos los archivos a los que tiene acceso privilegiado, no solo al directorio local. Este es un motivo por el que se recomienda no ejecutar cuadernos de fuentes no confiables.

    
respondido por el abukaj 03.02.2018 - 18:59
fuente

Lea otras preguntas en las etiquetas