Just wanted to share my setup and see if anyone has suggestions or feedback. Also share yours.

Phone : GrapheneOS(pixel 7a)

  1. No google play service on my main profile. Rethink DNS (NextDNS DoH) blocks ads, trackers, and all Google & Facebook DNS (except WhatsApp).

  2. Some FOSS apps like Aurora Store & NewPipe need Google servers, so I have excluded them in rethink dns.

  3. Work Profile (with Island) with GrapheneOS’ sandboxed Play Services, but I use it maybe once or twice a month only for apps that absolutely need it. It stays turned off most of the time. If an app works on main profile without any issues, will use it. If not, will try to use it in firefox (as lack of play services doesn’t matter). If only app is available (and not web version) and it doesn’t work on main profile, will use it in work profile.

  4. Hardened Firefox fork(Ironfox) for private browsing. Main Firefox for a few services where I have to stay logged in and don’t have apps or want to use their apps.

  5. Network & Sensor Restrictions: If an app works offline, I block its internet access. Also, disabled sensors for apps that don’t need them.

  6. Mostly use foss apps from f-droid(droidify).

  7. Email: moved from gmail to protonmail

PC/laptop: Arch linux kde on pc and fedora kde on laptop.

  1. Not much to say. Most used apps are firefox and Zed. I allow data collection on kde as I want them to improve it.

Home Server: Raspberry Pi 4B

  1. SSH hardening: Non standard ssh port(yes, I opened the port externally because I depend on my home server and need to access it remotely). SSH keys or password+totp, Fail2Ban, ufw.
  2. Services running: Arr setup(jellyfin, prowlarr, radarr,sonarr, qbittorrent), pihole, Immich, Authelia(for now). All data sensitive services behind authelia with totp.
  3. Nginx Geo-blocking: Only allows access from my country IPs
  4. Weekly backups because data loss sucks.

Network & Router: OpenWRT (TP-Link)

  1. Not much to say: Running default firewall rules with network-wide ad/tracker blocking via pihole and some ports opened.
  • sludge@lemmy.ml
    link
    fedilink
    arrow-up
    15
    ·
    4 days ago

    Have you considered running Wireguard or Headscale instead of keeping SSH open? I don’t know how big an issue it is since you’ve changed the SSH port and use keys, but opening SSH in any respect freaks me out.

    • pathief@lemmy.world
      link
      fedilink
      arrow-up
      15
      ·
      edit-2
      4 days ago

      You can (and should) disable password authentication and force the use of public/private keys. Op did this, seems fine.

      SSH is very handy and the industry standard.

    • N0x0n@lemmy.ml
      link
      fedilink
      arrow-up
      2
      ·
      edit-2
      4 days ago

      Same thought here ! Wireguard being based on private/public key, even if the port is open every request that doesn’t have a valid private/public key gets dropped !

      From a bot’s perspective this means the port is closed !

      I’m not an export in the field but there’s also a way to only use key-based connection with SSH, but I’m not sure how good/secure it is compared to wireguard.

      As you said, I’m also too scared to let a open SSH server running on my small home lab 😅 !

      • JustAnotherKay@lemmy.world
        link
        fedilink
        arrow-up
        2
        ·
        4 days ago

        Key-based connection with SSH

        I’m not certain on how secure this is, but what you’re referring to is usually called “Passwordless SSH”