No description
Find a file
Carson McManus 140b2abda6
Merge pull request #94 from dyc3/secrets
Implement a special type to hold 2fa secret that gets zeroed on drop
2021-08-25 00:23:28 -04:00
.github combine CI workflows 2021-08-10 22:49:19 -04:00
.vscode add vscode debug launchers 2021-08-08 11:08:33 -04:00
src when encrypting, use 128 byte buffers instead of 256 byte buffers because Pkcs7 padding 2021-08-24 23:24:17 -04:00
SteamAuth@e0619528fb update steamauth 2020-10-12 12:35:31 -04:00
steamguard replace secrets crate with secrecy 2021-08-25 00:19:17 -04:00
.gitignore add working 2fa code generation 2021-03-21 23:00:16 -04:00
.gitmodules update .gitmodules to custom SteamAuth, fix #31 2018-04-11 21:18:12 -04:00
AssemblyInfo.cs Update version 2020-10-12 23:05:43 +00:00
bash-tab-completion add --passkey to bash tab completion 2017-05-22 18:34:56 -04:00
Cargo.lock replace secrets crate with secrecy 2021-08-25 00:19:17 -04:00
Cargo.toml move incorrect passkey error 2021-08-20 10:49:43 -04:00
LICENSE add license 2017-08-26 18:26:48 -04:00
makefile Fix build issues 2021-05-23 21:25:56 +00:00
makefile.macos Add macOS support documentation 2020-01-27 17:43:25 -04:00
Manifest.cs fix some logging stuff so it's easier to read 2018-03-27 19:17:51 -04:00
package.sh add mono-complete dependency to package building 2017-05-22 18:44:58 -04:00
Program.cs handle MustConfirmEmail, fixes #41 2020-10-12 13:12:11 -04:00
README.md update readme 2021-07-29 23:03:55 -04:00
rustfmt.toml add rustfmt.toml and run cargo fmt 2021-08-08 12:54:46 -04:00
steamguard-cli.csproj Added --trade to list all trade confirmations 2016-08-25 22:21:12 -04:00
steamguard-cli.sln added .csproj and .sln files 2016-08-23 11:40:51 -04:00
Utils.cs add Utils.Verbose for easy verbose-only Console.WriteLine 2018-03-27 17:48:22 -04:00

steamguard-cli

A linux utility for setting up and using Steam Mobile Authenticator (AKA Steam 2FA) on the command line. This utility is in beta.

We are in the process of rewriting steamguard-cli from scratch in Rust. Any help would be greatly appreciated! See #55 for discussion. The instructions in this document refer to the C# version.

Disclaimer

Use this software at your own risk.

Prerequisites

These packages are required to build and run steamguard-cli.

  • mono-complete
  • nuget
  • make

Building

Downloading as .zip will not work because submodules are used. You must clone the repository.

Linux

Building on Linux is very simple. Make sure you have all the prerequisites listed above.

git clone --recursive https://github.com/dyc3/steamguard-cli.git
cd steamguard-cli
make

To run the current build:

build/steamguard

To run the current build quickly:

make run

macOS

Building on macOS is pretty simple. Make sure you have all the prerequisites listed above.

  • For the prerequisites the easiest way to install them is to use homebrew:

    brew update brew install mono brew install nuget

  • For the application source code:

    git clone --recursive https://github.com/dyc3/steamguard-cli.git cd steamguard-cli make -f makefile.macos

To run the current build:

mono build/steamguard

To run the current build quickly:

make -f makefile.macos run

To install run:

make -f makefile.macos install

Windows

Coming soon...

Installation

To install the latest version on Debian-based systems, download the package from the releases section and type

sudo dpkg --install steamguard-cli_x.x.x.x-x.deb

For Archlinux, install steamguard-cli-git from the AUR.

To install after building from source, run:

sudo make install

Usage

steamguard-cli looks for your maFiles folder in the current user's home directory (eg. ~/maFiles/). Your maFiles can be created with Steam Desktop Authenticator. You can create maFiles with steamguard-cli using the setup action (steamguard setup).

REMEMBER TO MAKE BACKUPS OF YOUR maFiles, AND TO WRITE DOWN YOUR RECOVERY CODE!

Arguments

usage: steamguard (action) (steam username) -v -h

  -h, --help                Display this help message.
  -v, --verbose             Display some extra information when the program is running.
  -m, --mafiles-path        Specify which folder your maFiles are in. Ex: ~/maFiles
  -p, --passkey             Specify your encryption passkey.

Actions:
  generate-code             Generate a Steam Guard code for the specified user (if any) and exit. (default)
  encrypt                   Encrypt your maFiles or change your encryption passkey.
  decrypt                   Remove encryption from your maFiles.
  code                      Same as generate-code
  2fa                       Same as generate-code
  add                       Set up Steam Guard for 2 factor authentication.
  setup                     Same as add
  trade                     Opens an interactive prompt to handle trade confirmations.
  accept-all                Accepts all trade confirmations.