• SirMaple_@lemmy.sirmaple.ca
    link
    fedilink
    English
    arrow-up
    12
    ·
    2 months ago
    • crowdsec
    • SSH - change port, disable root login, disable password login, setup SSH keys using SK(YubiKey in my case)
    • nftables - I use https://github.com/etkaar/nftm to keep things quick and simple. I like the fact if will convert DNS entries to IPs. I then just use dynamic DNS update clients on all my endpoints
    • WireGuard for access to services other than SSH(in some cases port 443 will be open if its a web server or proxy)
    • rsyslog to forward auth logs to my central syslog server
    • ShortN0te@lemmy.ml
      link
      fedilink
      English
      arrow-up
      4
      arrow-down
      1
      ·
      2 months ago

      disable root login

      That does not do much in practice. When a user is compromised a simple alias put in the .bashrc can compromise the sudo password.

      Explicitly limit the user accounts that can login so that accidentally no test or service account with temporary credentials can login via ssh is the better recommendation.

      • drkt@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        8
        ·
        2 months ago

        I think the point is that root is a universal user found on all linux systems where as users have all kinds of names. It narrows down the variables to brute-force, so simply removing the ability to use it means they have to guess a username and a password.

        • ShortN0te@lemmy.ml
          link
          fedilink
          English
          arrow-up
          6
          arrow-down
          3
          ·
          2 months ago

          guess a username and a password.

          Security by obscurity is no security. Use something like fail2ban to prevent brute force. When you use a secure password and or key this also does not matter much.