• 0 Posts
  • 26 Comments
Joined 1 year ago
cake
Cake day: June 29th, 2023

help-circle







  • Every computer has a bunch of ports (1-65535 if I recall correctly), each of which is a unique entity to which a single service can bind. In layman's terms, a port is a door that one service is able to answer when someone knocks. By convention, some ports have a specific associated service (80 = HTTP, 443 = HTTPS, 22 = SSH), but there are a lot that you can just use as you deem appropriate.

    If you want a service (e.g. a web server) to be accessible, you have to run a service that binds to a known port (e.g. 80), and a client has to reach out to your server on that same port. A firewall sits between your service(s) and any potential clients, much like those steel security screen doors. If that's closed, nobody gets through on that port, even if a service is bound to that port and is listening for a connection.

    As a general rule of thumb, you want your firewall to block as much traffic as possible without breaking something (I.e. blocking one of your public-facing services). If you don't run any services on your computer (web services, media servers, etc.), you can probably get away with blocking all inbound traffic. without any discernable impact.



  • I’m going to cast another vote for a reverse proxy, such as NginxProxyManager. It’s really easy to set everything up, and they’re usually very easy to run in Docker/Podman.

    One thing to note: if you end up with a domain with mandatory HSTS, you’ll have to use DNS-based certificate generation rather than HTTP based, since unencrypted HTTP is blocked (chicken/egg problem to get HTTPS working). It’s not hard, but you have to be aware of that limitation.











  • Depends on what you’re looking for.

    • Up to date packages: Arch or Fedora

    • Stable: Rocky or Mint

    I personally love Arch for its lightweight nature, its documentation, and the AUR, but I use Fedora on my desktop and server, and Debian on my HTPC. I also have Rocky on my laptop, but that was mostly just to play around with it.

    Fedora is nice because it’s fairly up to date and has a fairly robust, self maintaining package manager (i.e. it automatically removes unused deps and cleans up after itself).