My personal strategy is to use keys generated this way:
ssh-keygen -t ed25519-sk
Rules:
- A generated key never leave the machine it was generated on.
- ssh agent is never used
- ProxyJump in HOME/.ssh/config or -J to have convenient access to all my servers.
- DynamicForward and firefox with foxyproxy extension to access various things in the remote network from my local machine (IPMI, internal services, IoT, ...)
- On the web no passkey, only simple 2FA webauthn.
My understanding is that more features including "storage" means more attack surface so by avoiding it you're 1/ more secure 2/ it's cheaper.
White paper on passkey says their security is equal to the security of the OS (Microsoft Windows ...) so I avoid passkeys.