Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Bug: Jupyter and Jupyter-Notebook LISTEN too widely #585

Description

@bjornrobertsson

Bug/Security improvement: Jupyter modules bind to all interfaces unnecessarily

The two Registry modules for Jupyter Notebook and Jupyter Lab explicitly bind to all network interfaces (--ServerApp.ip='*'):

Combined with disabled authentication (--ServerApp.token='' --ServerApp.password=''), this exposes an unauthenticated Jupyter server to the entire network. In Kubernetes environments, any pod on the same network can connect directly, bypassing Coder's authentication layer.

Why this is unnecessary

Coder's port forwarding works through the agent locally, so Jupyter only needs to bind to localhost. The default Jupyter behavior (without --ServerApp.ip) already binds to localhost on both IPv4 and IPv6:

tcp6       0      0  ::1.8888               *.*                    LISTEN
tcp4       0      0  127.0.0.1.8888         *.*                    LISTEN

Proposed fix

  1. Remove --ServerApp.ip='*' entirely (secure by default)
  2. Add an optional host variable defaulting to localhost or 127.0.0.1 for users who explicitly need different behavior

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions