Hello folks! I am looking for some guidance or direction on how to make sure my “server” locked down as much as possible. I know there are several websites/guides out there but was hoping I could get someone to recommend some good ones to use that cover all the bases solidly.

There are just so much info out there, wading through looking for a solid guide when you ignorant is hazardous.

Server is running Mint and hosts my Plex/Radarr/Sonarr stack. Using a locally hosted reverse proxy for any outside connections.

This started as a project to learn linux, so things are a bit shaky on linux understanding but getting better. I used GPT assistance to lock it down to the best of my ability, making sure (or I think) that most obvious firewalls rules were setup…ect.

Thanks for your help :)

  • Noggog@programming.dev
    link
    fedilink
    English
    arrow-up
    6
    ·
    edit-2
    15 hours ago

    I’ve had good success spinning up an authentik instance, and having my reverse proxy hit it first before it routes to the actual app. Puts another security layer in front in case sonarr itself has an issue, for ex.

    Caddy snippet

    
    handle {$host} {
    		route {
    			# always forward outpost path to actual outpost
    			reverse_proxy /outpost.goauthentik.io/* authentik-server-1:9000
    
    			# forward authentication to outpost
    			forward_auth authentik-server-1:9000 {
    				uri /outpost.goauthentik.io/auth/caddy
    
    				# capitalization of the headers is important, otherwise they will be empty
    				copy_headers X-Authentik-Username X-Authentik-Groups X-Authentik-Entitlements X-Authentik-Email X-Authentik-Name X-Authentik-Uid X-Authentik-Jwt X-Authentik-Meta-Jwks X-Authentik-Meta-Outpost X-Authentik-Meta-Provider X-Authentik-Meta-App X-Authentik-Meta-Version
    			}
    			
    			reverse_proxy {this_host_or_ip}:{this_port}
    		}
    }
    
    

    Not gonna solve all your problems. Works for 70% of apps. Nice to slap on when you can.

    • jacksilver@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      14 hours ago

      I’ve been tempted by things like authentik, but how does that work for things like apps and tv sticks (roku / Chromecast)? Or does it really only work for browser based applications?

      • Noggog@programming.dev
        link
        fedilink
        English
        arrow-up
        3
        ·
        13 hours ago

        Yeah, will not work for everything. Things with actual phone/TV apps generally dont like it. That being said, it still helps for a large swath of my setup

      • fonix232@fedia.io
        link
        fedilink
        arrow-up
        2
        ·
        13 hours ago

        It depends on the app. You can use Authentik as an OIDC provider and allow apps that offer OIDC to log in through that - and that usually works for TV sticks and such.