Given the recent attack, I think this is a good opportunity to remind of the importance of using 2FA.

(although it doesn’t appear to make any difference in this case as session cookies were being exploited so login credentials were not needed)

But for me at least, this event has made me go back and take another shot at setting up 2FA.

I am happy to report I finally got it working on all my Lemmy accounts/instances, so I thought I’d share some tips:

  • I still haven’t figured out how to set up via desktop, use a mobile browser.
  • Follow these steps:
    • Check the enable 2fa box on your account settings and click Save
    • A message will show about a button appearing when the page refreshes
    • The button usually doesn’t appear for me at first.
    • You can simply manually refresh the page at this point to make the button appear
    • The button should now be visible. Click the button.
    • This opens a otpauth:// link which on a mobile device should be handled by a 2FA app if you have one installed.
  • Authy does not work: It will generate a code happily but that code will not work when you try to login to your Lemmy account.
  • Google Authenticator worked for me. It appears the type of TOTP code Lemmy is using is not compatible with some authenticator apps.
  • I think if you can find a desktop app that registers as a provider for the otpauth:// links it may be possible to do on desktop as well.
  • You can also pull the secret= value from the link to manually add it to an authenticator on/from desktop.

After several failed attempts previously, I finally figured out Authy was the problem and I have now secured all my Lemmy accounts with 2FA. Annoying that I have to use GA, but that appears to be an Authy issue not a Lemmy one.

2FA might not have made any difference today but it very well might in the future.

Stay safe everyone! 🔐

  • aussiematt@lemm.ee
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    The TOTP feature in Bitwarden works, if you paste in the whole otpauth:// URI to Bitwarden’s Authenticator Key (TOTP) field. The URL specifies that the hashing algorithm should be SHA256. If you just import the secret= value into Authy, it probably defaults to using the SHA-1 algorithm, which may be why the codes generated by Authy don’t work.

    SHA256 is more secure than SHA-1, which I guess is why Lemmy has chosen to use it for its 2FA feature.

  • Brendan@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    Is there a way to get backup codes? I enabled 2FA, but I don’t see anywhere to generate them.

    • 𝕽𝖔𝖔𝖙𝖎𝖊𝖘𝖙@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      As far as I can tell, no. There’s no backup codes and there’s no “verification” of the codes when you enable it.

      Also, you do not get logged out of any other sessions even if they were logged in before 2FA was enabled.
      So I typically leave my desktop browser logged in as a backdoor in case something goes wrong I can use that session to re-disable 2FA.
      Then once I have verified it working on mobile I will sign out the desktop browser and sign it back in with the 2FA key.

      But yeah, no backup codes. Apparently an admin can disable 2FA on your account if you get locked out, or so I have heard.

      • clothes@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        You may want to add a warning to your post. For instances that don’t require an email address, it’s currently quite easy to get permanently locked out of your account because the code is never verified.

    • hatchback8051@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      1 year ago

      I couldn’t find backup codes but I was able to perform a password reset which logged me in and let me disable or reconfigure 2fa.

      • Brendan@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 year ago

        Seems strange that you could remove 2FA without being forced to authenticate via 2FA first.

  • Morethanevil@lmy.mymte.de
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I would like to know, how it works with the Yubikey OTP Generator. I have 2 Yubikeys and want to use the secret with both keys. Is this possible? Do somebody know something about it?

    • Morethanevil@lmy.mymte.de
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 year ago

      Okay I use a “workaround” with Bitwarden. Yubikeys secure Bitwarden and Bitwarden provides 2FA for Lemmy. So I can use Yubikeys for 2FA

  • joolez@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    7
    ·
    edit-2
    1 year ago

    Additionally it needs QR-Code Support, Backup-Codes and disabling only after double-check of your current password.

    I think the missing QR-Code is a main flaw that holds non tech savvy people back from using it at all.

  • Rooki@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    1 year ago

    OTP doesnt work! Please keep at least 1 device logged in a browser! I almost locked me out, because the otp didnt worked.

  • setsubyou@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    On desktop macOS the link just works with the built-in thing.

    In 1password (probably regardless of what it’s running on?), if it’s not registered as a handler for the URL scheme, one can add an OTP field to the login item for lemmy manually and then copy-paste the entire setup link into the field.

  • SirPorthos@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I cant wait for email based 2 factor authentication to be implemented. Or then Authy can finally work.

  • mawp@lemmy.world
    link
    fedilink
    English
    arrow-up
    6
    ·
    1 year ago

    2FA feels very half-baked atm.

    Tried to set it up and got locked out, but apparently you can get around 2FA by simply requesting a password reset…

    That seems like a massive security flaw, and essentially makes 2FA non-existent atm.

  • Baron Von J@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    ·
    1 year ago

    On desktop browser, you have to right-click the button and copy the link, which can then be posted into an app the takes the otpauth URI.