Lemmy 0.19.11 (which I’ve just upgraded AZ to) has a new feature to allow regular federation, but require users be logged in to view content.

I’d like to gauge feedback from users on this. It will not add privacy, or limit the propagation of posts/comments etc. But it will limit AZ server resource consumption by bots or users that are not logged in.

Thoughts/concerns on enabling this feature?

Update: thank you all for your thoughts and feedback on this. We’ll leave AZ as it is, though may use this feature in future if we need to mitigate attacks or other malicious traffic.

  • 𝚝𝚛𝚔
    link
    fedilink
    English
    arrow-up
    1
    ·
    8 days ago

    Random thought - can you toggle private instance reasonably simply? I know nothing about running a Lamington stall, but if its a JSON file is it possible to have two versions and update a symlink to the version you want to use at the time?

    The reason I ask is it would be pretty sneaky tricks to monitor server load and toggle to private when it exceeds a threshold for a fixed period of time, then toggle back (i.e. greater than 50% server load = private for the next 2 hours or whatever).

    Alternatively, I’ll just put my vote in for going private.

    • Lodion 🇦🇺OPMA
      link
      fedilink
      arrow-up
      2
      ·
      8 days ago

      It’s a simple tick box in the admin settings interface. Trivially easy to enable, and presumably disable. Doesn’t appear to even require a service restart.

      • 𝚝𝚛𝚔
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        8 days ago

        Is it possible to automate? I looked at the Lamington docs briefly and it looked like it uses a file to store config. Thought if the config file was a symlink it would make it easy to change config to be private / be public.

        Like this every 30 minutes or whatever. Obviously will require a bit more logic rather than constantly recreating symlinks… but yeah.

        #!/bin/bash
        
        THRESHOLD=1.5
        
        CMD_HIGH="ln -sfn /blah/blah/config.json /blah/blah/config.json.private && systemctl restart lamington"
        CMD_LOW="ln -sfn /blah/blah/config.json /blah/blah/config.json.public && systemctl restart lamington"
        
        LOAD_15MIN=$(uptime | awk -F'[a-z]:' '{print $2}' | awk -F', ' '{print $3}' | tr -d ' ')
        
        if (( $(echo "$LOAD_15MIN > $THRESHOLD" | bc -l) )); then
            echo "[$(date)] High Load Detected - Current: $LOAD_15MIN, Threshold: $THRESHOLD"
            echo "[$(date)] Taking Lamington private........ "
            eval "$CMD_HIGH"
        else
            echo "[$(date)] Normal Load Detected - Current: $LOAD_15MIN, Threshold: $THRESHOLD"
            echo "[$(date)] Returning Lamington to public... "
            eval "$CMD_LOW"
        fi