Check out our Monthly Survey Page to see what our users are running.
How to make KeepassXC generate Steam OTP authentication code.
Koopacabras Oct 18, 2021
here's a short tutorial on how to make KeepassXC generate the one time pass from Steam.

You need a phone with the steam app, I don't know how to do this with Iphone though, so preferably you need an Android Phone.

You need debugging tools ADB bridge enabled or a rooted file explorer.

Navigate, to this folder, with adb shell or a file explorer.

/data/data/com.valvesoftware.android.steam.community/files/

there they should be a file called

Steamguard-STEAMID64
(steam ID64 is just a personal identification of your account that valve uses)

now cat into it or open it with a text editor, at the first line there should be something like this.


otpauth:\/\/totp\/Steam:username?secret=THISISYOUROTPCODEBUNCHOFLETTERSHEREYADAYADA&issuer=Steam

now you need to copy: THISISYOUROTPCODEBUNCHOFLETTERSHEREYADAYADA

now on keepass click on you steam account entry, and then on the menu bar click on "Entries" >> TOTP >> Configure TOTP

Select, Steam Token Options, and paste the code into the text box.
https://i.imgur.com/BMtDZUi.png<br />
done!

now KeepassXC should generate the code for you, you just need to click on the clock on the info box below.

Last edited by Koopacabras on 18 October 2021 at 5:09 pm UTC
g000h Oct 20, 2021
Can you use the same method to grab the code to feed into Linux's oathtool or any of the other OTP authenticators, e.g. FreeOTP on Android ?
Koopacabras Oct 20, 2021
Quoting: g000hCan you use the same method to grab the code to feed into Linux's oathtool or any of the other OTP authenticators, e.g. FreeOTP on Android ?
yes but you need to figure what type of combination of letters and timeout steam uses, but, only if said applications provide a way to customize the output of the TOPT code. Some OTP apps only use the standard 6 digits and nothing else. KeepassXC has a builtin steam option so that makes it easier.
Of the Authenticators apps I know, this will not work on authy (because you cannot feed in the OTP code) and I think on Bitwarden it won't too, because it doesn't has that many options to customize the OTP output.

Last edited by Koopacabras on 20 October 2021 at 11:10 pm UTC
hagabaka Oct 21, 2021
Quoting: The_AquabatYou need debugging tools ADB bridge enabled or a rooted file explorer.

Navigate, to this folder, with adb shell or a file explorer.

/data/data/com.valvesoftware.android.steam.community/files/

I think the Android phone needs to be rooted, not just with debugging enabled. With my unrooted phone, in adb shell, trying to enter that directory gives "access denied".
g000h Oct 21, 2021
Quoting: hagabaka
Quoting: The_AquabatYou need debugging tools ADB bridge enabled or a rooted file explorer.

Navigate, to this folder, with adb shell or a file explorer.

/data/data/com.valvesoftware.android.steam.community/files/

I think the Android phone needs to be rooted, not just with debugging enabled. With my unrooted phone, in adb shell, trying to enter that directory gives "access denied".

I tried the same thing. I have an old tablet for running the Android Steam App, specifically because I don't want to run the Steam App on my daily driver phone. And I couldn't get access to the files in that folder (even though older Android normally isn't as locked down as newer Android).

The problem for me is I couldn't root this tablet so I'd have to do a tonne of messing around to achieve this:
Flash TWRP and a custom Android rom to one of my spare modification-capable mobiles, move Steam off this tablet onto the new customised mobile, etc etc.

:(

Last edited by g000h on 21 October 2021 at 3:05 pm UTC
hagabaka Oct 24, 2021
An alternative way to get the Steam Guard secret which worked for me is with Steam Desktop Authenticator. It's a Windows app, but I was able to build it with mono-msbuild, or maybe you can just run it with wine, but I haven't tried.
tuubi Oct 24, 2021
I use SailOTP to generate Steam Guard codes on my Sailfish phone. It offers Steam support out of the box as well. I didn't want to install the Steam App on my current phone, so I used to keep my old Jolla running for this purpose.

Extracting the token wasn't that hard on Sailfish. I simply enabled developer mode in the settings and accessed the file in the built-in shell.
Thomot512 Nov 26, 2021
There also is steamguard-cli available on the AUR. This works really well and it is easy to get the Steam Token from their file. (Found in ~/.config/steamguard-cli)
Here is their github.

It is easy to use:
  • Remove any previous authenticator from Steam;

  • Install steamguard-cli (yay or paru in any arch-based distro);

  • Enter steamguard-cli setup in your terminal;

  • Follow the instructions to create an authenticator;

  • Open the ma file in ~/.config/steamguard-cli/maFiles/ with your favorite text editor;

  • Find and copy the secret token; otpauth:\/\/totp\/Steam:username?secret=THISISYOUROTPCODEBUNCHOFLETTERSHEREYADAYADA&issuer=Steam

  • From there follow the setup as described in the first post of this thread.
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
Login / Register


Or login with...
Sign in with Steam Sign in with Google
Social logins require cookies to stay logged in.