You’re probably already aware of this, but if you run Docker on linux and use ufw or firewalld - it will bypass all your firewall rules. It doesn’t matter what your defaults are or how strict you are about opening ports; Docker has free reign to send and receive from the host as it pleases.

If you are good at manipulating iptables there is a way around this, but it also affects outgoing traffic and could interfere with the bridge. Unless you’re a pointy head with a fetish for iptables this will be a world of pain, so isn’t really a solution.

There is a tool called ufw-docker that mitigates this by manipulating iptables for you. I was happy with this as a solution and it used to work well on my rig, but for some unknown reason its no-longer working and Docker is back to doing its own thing.

Am I missing an obvious solution here?

It seems odd for a popular tool like Docker - that is also used by enterprise - not to have a pain-free way around this.

  • ryokimball@infosec.pub
    link
    fedilink
    English
    arrow-up
    5
    arrow-down
    1
    ·
    edit-2
    19 hours ago

    I use podman instead, though I’m honestly not certain this “fixes” the problem you described. I assume it does purely on the no-root point.

    Agreeing with the other poster, network tools and not relying on the server itself is the professional fix

    • Overspark@piefed.social
      link
      fedilink
      English
      arrow-up
      8
      arrow-down
      1
      ·
      17 hours ago

      Podman explicitly supports firewalls and does not bypass them like docker does, no matter whether you’re using root mode or not. So IMHO that is the more professional solution.