steamguard-cli/README.md

94 lines
3.5 KiB
Markdown
Raw Permalink Normal View History

2016-08-22 17:52:14 +02:00
# steamguard-cli
2021-08-25 14:55:25 +02:00
2022-02-04 18:29:55 +01:00
[![Lint, Build, Test](https://github.com/dyc3/steamguard-cli/actions/workflows/rust.yml/badge.svg)](https://github.com/dyc3/steamguard-cli/actions/workflows/rust.yml)
[![AUR Tester](https://github.com/dyc3/steamguard-cli/actions/workflows/aur-checker.yml/badge.svg)](https://github.com/dyc3/steamguard-cli/actions/workflows/aur-checker.yml)
2021-08-25 14:55:25 +02:00
2021-08-25 06:40:07 +02:00
A command line utility for setting up and using Steam Mobile Authenticator (AKA Steam 2FA). It can also be used to respond to trade and market confirmations.
2016-08-22 17:52:14 +02:00
2021-10-26 19:36:16 +02:00
**The only legitimate place to download steamguard-cli binaries is through this repo's releases, or by any package manager that is linked in this document.**
2021-07-30 05:02:27 +02:00
2016-08-22 17:52:14 +02:00
# Disclaimer
2021-08-25 06:40:07 +02:00
**This utility is effectively in beta. Use this software at your own risk. Make sure to back up your maFiles regularly, and make sure to actually write down your revocation code. If you lose both of these, we can't help you, your only recourse is to beg Steam support.**
2016-08-22 17:52:14 +02:00
2023-06-24 15:47:25 +02:00
# Quickstart
If you have no idea what the rest of this document is talking about, go read the [quickstart](docs/quickstart.md).
2021-08-25 06:40:07 +02:00
# Install
2016-08-22 17:52:14 +02:00
2021-08-25 06:40:07 +02:00
If you have the Rust toolchain installed:
```
cargo install steamguard-cli
```
2016-08-22 17:52:14 +02:00
2021-11-14 18:05:58 +01:00
Arch-based systems can install from the AUR:
2022-02-04 18:29:55 +01:00
- For [steamguard-cli-git](https://aur.archlinux.org/packages/steamguard-cli-git/)
2021-11-14 18:05:58 +01:00
- *Non-git release is not officially provided. Please open an issue if you would like to help set that up.*
2021-08-25 06:40:07 +02:00
Otherwise, you can download binaries from the releases.
2016-08-22 17:52:14 +02:00
2021-08-25 06:40:07 +02:00
## Building From Source
2016-08-22 17:52:14 +02:00
2021-08-25 06:40:07 +02:00
```
2021-08-25 16:26:34 +02:00
cargo build --release
2021-08-25 06:40:07 +02:00
```
2016-08-22 17:52:14 +02:00
# Usage
2021-08-25 14:55:25 +02:00
`steamguard-cli` looks for your `maFiles/manifest.json` in at these paths, in this order:
2023-06-23 12:52:13 +02:00
Linux:
2021-08-25 14:55:25 +02:00
- `~/.config/steamguard-cli/maFiles/`
- `~/maFiles/`
2023-06-23 12:52:13 +02:00
Windows:
- `%APPDATA%\Roaming\steamguard-cli\maFiles\`
- `%USERPROFILE%\maFiles\`
2021-08-25 14:55:25 +02:00
Your `maFiles` can be created with or imported from [Steam Desktop Authenticator][SDA]. You can create `maFiles` with steamguard-cli using the `setup` action (`steamguard setup`).
2016-08-22 17:52:14 +02:00
**REMEMBER TO MAKE BACKUPS OF YOUR `maFiles`, AND TO WRITE DOWN YOUR RECOVERY CODE!**
[SDA]: https://github.com/Jessecar96/SteamDesktopAuthenticator
2021-08-25 06:40:07 +02:00
Full helptext can be displayed with:
```
steamguard --help
```
2021-08-25 14:36:02 +02:00
2021-08-25 19:04:06 +02:00
## One Liners
Generate and copy a new code to clipboard:
```bash
steamguard | xclip -selection clipboard
2021-08-25 19:04:06 +02:00
```
2021-08-25 14:55:25 +02:00
## Importing 2FA Secret Into Other Applications
It's possible to import your 2FA secret into other applications. This is useful if you want to use a password manager to generate your 2FA codes, like KeeWeb.
To make this easy, steamguard-cli can generate a QR code for your 2FA secret. You can then scan this QR code with your password manager.
```bash
steamguard qr # print QR code for the first account in your maFiles
steamguard -u <account name> qr # print QR code for a specific account
```
There are some applications that do not generate correct 2fa codes from the secret, so **do not use them**:
- Google Authenticator
- Authy
2021-08-25 14:55:25 +02:00
2021-08-25 14:36:02 +02:00
# Contributing
By contributing code to this project, you give me and any future maintainers a non-exclusive transferable license to use that code for this project, including permission to modify, redistribute, and relicense it.
# License
`steamguard-cli`, the command line program is licensed under GPLv3.
`steamguard`, the library that is used by `steamguard-cli` is dual licensed under MIT or Apache 2.0, at your option.
2022-02-04 14:28:06 +01:00
# Used By
* [Unreal Engine to Steam publishing CI/CD pipeline](https://github.com/kasp1/dozer-pipelines), a sample pipeline built for [Dozer](https://github.com/kasp1/Dozer), a simple CI/CD runner