Skip to content

The container's web port binds every interface, not loopback #28

Description

@lefoulkrod

buildPodmanRunArgs maps the web UI port with -p <hostPort>:8080, with no address prefix, so Podman and Docker bind 0.0.0.0. A default omnideck setup therefore puts the instance on the local network.

That matters more than a normal service, because what is behind the port runs arbitrary code and drives a browser. Anything on the same wifi can reach it, and nothing about the setup output suggests it is exposed.

The desktop application binds 127.0.0.1:<port>:8080 and has a test named for it, so the two ways of running Omnideck currently differ on this.

Where

  • engine/podman.gobuildPodmanRunArgs
  • engine/docker.go — the equivalent argument builder
  • engine/engine_test.go asserts "2337:8080", so the tests pin the current behaviour

Suggestion

Bind loopback by default and make reaching it from elsewhere an explicit choice — something like --listen 0.0.0.0 at setup, stored per instance. Remote access is a reasonable thing for an administrator to want; it just should not be what happens when nobody asked.

This is a default change that affects anyone already relying on remote access, which is why it is filed rather than fixed.

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