I think it’s still good to go with the HDD instead. You can always later get M.2 SSD with a USB enclosure if you run “busier” databases that will benefit from faster speeds. They’re small enough to dangle from USB ports.
When you go refurbished it’s always luck when it comes to any type of storage. My server’s root fs runs on an SSD that’s like 10 years old, yet I bought second hand hard drives that are 4 years old and they were broken beyond repair.
Make sure to backup your stuff regardless.
I’ve been using Authelia with several OIDC integrations for a while now. Works great. They’ve released a huge update like a day ago too. Out of the ones you listed, it’s very lightweight too. The docs are a bit all over the place but it is quite comprehensive.
I did look at Zitadel and tried setting it up myself but I just couldn’t get it to work. The docs are a bit vague.