I know, I know, clickbaity title but in a way it did. It also brought in the situation in the first place but I’m just going to deliberately ignore that. Quick recap:

  1. I came home at 3pm from the city, my internet at home didnt work.
  2. checked multiple devices, phones worked out of wifi, I figured I need to restart the router
  3. I login to the router and it responds totally normal but my local network doesnt. (Its always dns, I know)
  4. I check the router log and see 100s of login attempts over the past couple of days.
  5. I panic and pull the plug, try to get into my server by installing an old monitor, works, many errors about dns
  6. Wife googles with her phone, seems I had https login from outside on and someone found the correct port, its disabled now
  7. Obviously, local network still down, I replug everything and ssh into the server which runs pihole as dns
  8. pihole wont start dns, whatever I do
  9. I use history and find I "chmod 700"ed the dns mask directory instead of putting it in a docker volume…
  10. I check the pihole.log, nothing
  11. I check the FTL log, there is the issue
  12. I return it to 777, everything is hunky dory again.

Now I feel very stupid but I found a very dangerous mistake by having my lan fail due to a less dangerous mistake so I’ll take this as a win.

Thanks for reading and have a good day! I hope this helps someone at some day.

  • carzian@lemmy.ml
    link
    fedilink
    English
    arrow-up
    96
    ·
    8 months ago

    Did you expose your router login page to the open internet? How’d they get access? Why are you chmoding anything to be 777?

    • haui@lemmy.giftedmc.comOP
      link
      fedilink
      English
      arrow-up
      17
      arrow-down
      5
      ·
      8 months ago

      There was an option that I had enabled years before and forgotten so yes, I didnt know but it was, on some obscure port.

      And yes, pihole in docker makes its files be 777 which is pretty disgusting, I know. Thats why I tried to make it 700 and broke my whole network.

      • lungdart@lemmy.ca
        link
        fedilink
        English
        arrow-up
        56
        arrow-down
        1
        ·
        8 months ago

        Doubt. You probably need to set the file owners in your volume to the same user running in the container.

        • haui@lemmy.giftedmc.comOP
          link
          fedilink
          English
          arrow-up
          4
          arrow-down
          16
          ·
          8 months ago

          You can doubt all you want. I changed it from 777 to 700 and back again because it broke. Couldnt find the user in the container immediately. Will probably just migrate it to a volume and be done with it.

          • prettybunnys@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            8
            ·
            8 months ago

            So we’ve poked a hole in your knowledge here unless this super popular open source software really requires 777 on those files and everyone has collectively just been ok with it.

      • 1984@lemmy.today
        link
        fedilink
        English
        arrow-up
        24
        arrow-down
        1
        ·
        8 months ago

        I think you are still learning… What you say doesn’t make sense, so I think you may have misunderstood what happened.

        • haui@lemmy.giftedmc.comOP
          link
          fedilink
          English
          arrow-up
          5
          arrow-down
          21
          ·
          8 months ago

          Imo we are all constantly learning. Otherwise we stagnate. What I say makes perfect sense, you just dont get it. So let me explain it again, in more detail:

          I was going through my docker compose files to sanitize them and upload them to my private forgejo instance.

          While doing that I found a directory in my filesystem, a remnant of the early days of my server where my knowledge was severely more limited, that was a docker volume mapped to a regular directory, something I wouldnt do today for something like this.

          It was owned by root:root and had 777 permissions which is a bad idea imo. So I changed it to 700 since I dont think I had any other users in group root and others, well.

          Nothing bad happened, until today when my unattended backups triggered a restart at noon and the tragedy started. I put it back for now to 777 but I‘ll try and integrate it in a real docker volume which resides in the docker folders.

          • Auli@lemmy.ca
            link
            fedilink
            English
            arrow-up
            16
            ·
            edit-2
            8 months ago

            Well I’m running Pihole in docker and don’t have 777 on anything.

              • Domi@lemmy.secnd.me
                link
                fedilink
                English
                arrow-up
                10
                ·
                edit-2
                8 months ago

                I don’t run Pi-hole but quickly peeking into the container (docker run -it --rm --entrypoint /bin/sh pihole/pihole:latest) the folder and files belong to root with the permissions being 755 for the folder and 644 for the files.

                chmod 700 most likely killed Pi-hole because a service that is not running as root will be accessing those config files and you removed their read access.

                Also, I’m with the guys above. Never chmod 777 anything, period. In 99.9% of cases there’s a better way.

                • haui@lemmy.giftedmc.comOP
                  link
                  fedilink
                  English
                  arrow-up
                  6
                  arrow-down
                  1
                  ·
                  8 months ago

                  Thanks for checking that. I will change the permissions accordingly and restart pihole to check if it works. Probably later today.