mirror of
https://github.com/nishiki/manage-password.git
synced 2024-11-26 15:23:04 +00:00
MPW is a little software which stores your passwords in an GPG encrypted file.
bin | ||
i18n | ||
lib/mpw | ||
templates | ||
test | ||
.docker-test | ||
.gitignore | ||
.rubocop.yml | ||
.travis.yml | ||
CHANGELOG.md | ||
Dockerfile | ||
Gemfile | ||
LICENSE | ||
mpw.gemspec | ||
README.md | ||
VERSION |
MPW: Manage your passwords!
mpw is a little software which stores your passwords in GnuPG encrypted files.
Features
- generate random password
- generate OTP code
- copy your login, password or otp in clipboard
- manage many wallets
- share a wallet with others GPG keys
Install
On debian or ubuntu:
apt install ruby ruby-dev xclip
gem install mpw
How to use
First steps
Initialize your first wallet:
mpw config --init user@host.com
Add your first item:
mpw add --host assurance.com --port 443 --user user_2132 --protocol https --random
mpw add --host fric.com --user 230403 --otp-code 23434113 --protocol https --comment 'I love my bank' --random
And list your items:
mpw list
or search an item with
mpw list --pattern love
mpw list --group bank
Output:
Assurance
==========================================================================
ID | Host | User | OTP | Comment
==========================================================================
1 | https://assurance.com:443 | user_2132 | |
Bank
==========================================================================
ID | Host | User | OTP | Comment
==========================================================================
3 | https://fric.com | 230403 | X | I love my bank
Copy a password, login or OTP code:
mpw copy -p assurance.com
Update an item:
mpw update -p assurance.com
Delete an item:
mpw delete -p assurance.com
Manage wallets
List all available wallets:
mpw wallet
List all GPG keys in wallet:
mpw wallet --list-keys [--wallet NAME]
Share with an other GPG key:
mpw wallet --add-gpg-key test42@localhost.com
or
mpw wallet --add-gpg-key /path/to/file
Remove a GPG key:
mpw wallet --delete-gpg-key test42@localhost.com
Export and import data
You can export your data in yaml file with your passwords in clear text:
mpw export --file export.yml
Import data from an yaml file:
mpw import --file import.yml
Example yaml file for mpw:
---
1:
host: fric.com
user: 230403
group: Bank
password: 5XdiTQOubRDw9B0aJoMlcEyL
protocol: https
port:
otp_key: 330223432
comment: I love my bank
2:
host: assurance.com
user: user_2132
group: Assurance
password: DMyK6B3v4bWO52VzU7aTHIem
protocol: https
port: 443
otp_key:
comment:
Config
Print the current config
mpw config
Output:
Configuration
==============================================
lang | fr
gpg_key | mpw@yae.im
default_wallet |
config_dir | /home/mpw/.config/mpw
pinmode | true
gpg_exe |
path_wallet_test | /tmp/test.mpw
password_numeric | true
password_alpha | true
password_special | false
password_length | 16
Development
Don't run the tests on your local machine, you risk to lost your datas.
Test on local machine with docker
- install docker
- build the container
docker build -t mpw/debian:stretch -f Dockerfile .
- run the tests
docker run -v $(pwd):/mpw:ro -it mpw/debian:stretch /bin/bash -l /mpw/.docker-test