I got into the self-hosting scene this year when I wanted to start up my own website run on old recycled thinkpad. A lot of time was spent learning about ufw, reverse proxies, header security hardening, fail2ban.

Despite all that I still had a problem with bots knocking on my ports spamming my logs. I tried some hackery getting fail2ban to read caddy logs but that didnt work for me. I nearly considered giving up and going with cloudflare like half the internet does. But my stubbornness for open source self hosting and the recent cloudflare outages this year have encouraged trying alternatives.

Coinciding with that has been an increase in exposure to seeing this thing in the places I frequent like codeberg. This is Anubis, a proxy type firewall that forces the browser client to do a proof-of-work security check and some other nice clever things to stop bots from knocking. I got interested and started thinking about beefing up security.

I’m here to tell you to try it if you have a public facing site and want to break away from cloudflare It was VERY easy to install and configure with caddyfile on a debian distro with systemctl. In an hour its filtered multiple bots and so far it seems the knocks have slowed down.

https://anubis.techaro.lol/

My botspam woes have seemingly been seriously mitigated if not completely eradicated. I’m very happy with tonights little security upgrade project that took no more than an hour of my time to install and read through documentation. Current chain is caddy reverse proxy -> points to Anubis -> points to services

Good place to start for install is here

https://anubis.techaro.lol/docs/admin/native-install/

    • SmokeyDope@piefed.socialOP
      link
      fedilink
      English
      arrow-up
      26
      arrow-down
      7
      ·
      20 hours ago

      You know the thing is that they know the character is a problem/annoyance, thats how they grease the wheel on selling subscription access to a commecial version with different branding.

      https://anubis.techaro.lol/docs/admin/botstopper/

      pricing from site

      Commercial support and an unbranded version

      If you want to use Anubis but organizational policies prevent you from using the branding that the open source project ships, we offer a commercial version of Anubis named BotStopper. BotStopper builds off of the open source core of Anubis and offers organizations more control over the branding, including but not limited to:

      • Custom images for different states of the challenge process (in process, success, failure)
      • Custom CSS and fonts
      • Custom titles for the challenge and error pages
      • “Anubis” replaced with “BotStopper” across the UI
      • A private bug tracker for issues

      In the near future this will expand to:

      • A private challenge implementation that does advanced fingerprinting to check if the client is a genuine browser or not
      • Advanced fingerprinting via Thoth-based advanced checks

      In order to sign up for BotStopper, please do one of the following:

      • Sign up on GitHub Sponsors at the $50 per month tier or higher
      • Email sales@techaro.lol with your requirements for invoicing, please note that custom invoicing will cost more than using GitHub Sponsors for understandable overhead reasons

      I have to respect the play tbh its clever. Absolutely the kind of greasy shit play that Julian from the trailer park boys would do if he were an open source developer.

      • webghost0101@sopuli.xyz
        link
        fedilink
        English
        arrow-up
        30
        arrow-down
        4
        ·
        20 hours ago

        I wish more projects did stuff like this.

        It just feels silly and unprofessional while being seriously useful. Exactly my flavour of software, makes the web feel less corporate.

      • Nate Cox@programming.dev
        link
        fedilink
        English
        arrow-up
        10
        arrow-down
        5
        ·
        19 hours ago

        I can’t access the page to validate this because I don’t allow JS; isn’t that gated behind a paywall?

          • Nate Cox@programming.dev
            link
            fedilink
            English
            arrow-up
            7
            arrow-down
            5
            ·
            15 hours ago

            Lots of idol worship in the dev community, question the current darling and people get upset.

            • Lemminary@lemmy.world
              link
              fedilink
              English
              arrow-up
              4
              arrow-down
              3
              ·
              edit-2
              12 hours ago

              Not idol worship, rather, it’s silly to complain about JS when tools like NoScript allow you to selectively choose what runs instead of guessing what it is. It’s simply a documentation page like it says on the URL. I mean, they’re incredibly tame on the danger scale to leave your guard all the way up and instead take a jab at the entire community that had nothing to do with your personal choices.

              • Nate Cox@programming.dev
                link
                fedilink
                English
                arrow-up
                5
                arrow-down
                4
                ·
                12 hours ago

                Who jabbed at anything?

                I can’t get to that page, so I asked a question about the contents.

                Someone here is being silly, we just disagree about who.

                • Lemminary@lemmy.world
                  link
                  fedilink
                  English
                  arrow-up
                  4
                  arrow-down
                  3
                  ·
                  edit-2
                  12 hours ago

                  It gets quite silly when you blame the entire dev community for supposedly downvoting you over ideals rather than being overly strict about them. I also prefer HTML-first and think it should be the norm, but I draw the line somewhere reasonable.

                  I can’t get to that page, so I asked a question

                  Yeah, and you can run the innocuous JS or figure out what it is from the URL. You’re tying your own hands while dishing it out to everyone else.

        • M.int@lemmy.zip
          link
          fedilink
          English
          arrow-up
          5
          arrow-down
          1
          ·
          18 hours ago

          You can just fork it and replace the image.

          The authors talks about it here on their blog a bit more.

        • CoyoteFacts@piefed.ca
          link
          fedilink
          English
          arrow-up
          4
          arrow-down
          2
          ·
          19 hours ago

          It looks like it might be; I just know someone that has a site using it and they use a different mascot, so I thought it would have been trivial. I kind of wonder why it wouldn’t be possible to just docker bind mount a couple images into the right path, but I’m guessing maybe they obfuscate/archive the file they’re reading from or something?

          • Axolotl@feddit.it
            link
            fedilink
            English
            arrow-up
            6
            arrow-down
            1
            ·
            18 hours ago

            It’s actually possible, also, it’s open source so nothing stop you from making your fork with your own images and build it