João has been covering the tech world for over 7 years, with a heavy focus on laptops and the Windows ecosystem. I also love all things tech and videogames, especially Nintendo, which he's always happy to talk about.
Prior to joining XDA in 2021, he worked at Neowin: https://www.neowin.net/news/poster/jo%C3%A3o-carrasqueira/
Two-factor authentication (2FA) is a crucial security step on the modern internet, using apps like Google Authenticator or Microsoft Authenticator to generate one-time security codes. These codes let you sign in more securely, but they're often sent to your phone and they can only really be accessed there.
That's the big problem here, but thankfully, there's a solution. Bitwarden offers a built-in way to enter your 2FA codes directly into your browser, and with a self-hosted Vaultwarden instance, everything lives with in my own house.
The problem with 2FA codes
I don't always want to use my phone
The obvious problem with using 2FA codes that depend on an app is that you always need to have access to that app, and most authenticator apps, such as Google Authenticator and Microsoft Authenticator, are only on smartphones. If you misplace your phone or lose it entirely you could lose access to your accounts as a result, which would naturally be a huge problem if you have important accounts relying on these codes (which you should).
But even beyond those more extreme cases, relying on my phone can just be annoying at times. I do have it on me most of the time, but sometimes I have it charging in my bedroom, and having to get up just to go get a code to enter back at my computer feels like a waste of time. It's to the point where I generally prefer security codes sent over email or SMS, since I can at least access those on my computer.
But there's a better solution.
Bitwarden gives me 2FA codes anywhere
You have to pay up... or not
Bitwarden is one of the more well-known password managers out there, and for good reason. It's free, with fairly affordable premium plans, and it has plenty of features. Bitwarden also offers the Bitwarden Authenticator app, which works much like Google's or Microsoft's solution. If you're on the free plan, Bitwarden Authenticator is separate from the main Bitwarden app, but if you pay for a premium plan, these two are linked, and that's where the magic happens.
Once you've set up authenticator codes in the Bitwarden app, you can use OTP codes on any device easily. When you use Bitwarden to autofill a login field on your desktop, it also prompts you to autofill the 2FA code field with the latest code available, allowing you to complete sign in with no disruptions and without having to jump around between apps. It's all part of the same login flow, and it's the easiest 2FA has ever felt.
On mobile, because Bitwarden can't autofill 2FA codes, it instead copies the code to your clipboard when you use autofill for your username and password. That way, you just have to paste it and you're good to go. It's frankly a near perfect system.
But if paying for a premium plan isn't all that enticing to you, you have another option: Vaultwarden. This is a self-hosted service that can run on your PC, home lab, or NAS, and it acts as your own private server for Bitwarden features. Because you're not using up Bitwarden's cloud, a self-hosted instance of Vaultwarden actually gives you access to all the premium features at no additional cost. I've never paid for a premium plan myself, and this is how I access these capabilities.
Vaultwarden also means all your data is entirely under your control. It's your server, you need to be on your home network to access it, or you can set up remote access with a reverse proxy and something like Tailscale. All of that is under your direct control, and you own most of it.
It even makes passkeys bearable
No longer device-dependent
2FA codes are my favorite use case for Bitwarden and Vaultwarden, but there's a similar capability that makes my life much easier: passkeys. Passkeys are the latest account security feature that's been taking over every service, and conceptually, they should make things easier. Essentially, your devices become the authenticators themselves, so you can use methods like biometric authentication to sign into a website or app.
The idea is cool, but because every passkey is linked to a device, it can be tedious to sing in on new devices as you have to set things up all over again. Bitwarden and Vaultwarden make this easier, too, since you can save passkeys to Bitwarden and have them because you authentication method on any supported device. As someone who hops between different devices a lot for work, this is a huge relief.
I set it up for Facebook because the website kept telling me I had to do it or I would be unable to use my account, and it was much easier than I thought it would be.
Unfortunately, I haven't been able to get Bitwarden passkeys to work on mobile when using a web browser, so that part doesn't quite work as well as I'd like yet, but it's still nice to be able to sign in on any PC easily.
Bitwarden and Vaultwarden change the game
As important as two-factor authentication is, it's undeniable that it can also be a hassle, and Bitwarden paired with a self-hosted Vaultwarden server has made using them as easy as it can be. It would be great if it was fully free, but I already had my home lab up and running, so adding a lightweight service to it really makes no difference to me. I highly recommend it.
Bitwarden
- Android, iOS, Windows, macOS, others (browser extension)
Bitwarden is a free, open-source password manager that's available across different platforms, and works well without any issues. The free version of Bitwarden comes with all the essentials, but you can also upgrade to the paid version for some added features.
