https://github.com/Evidlo/passhole
A secure hole for your passwords (KeePass CLI)
https://github.com/Evidlo/passhole
keepass password-manager unix
Last synced: 20 days ago
JSON representation
A secure hole for your passwords (KeePass CLI)
- Host: GitHub
- URL: https://github.com/Evidlo/passhole
- Owner: Evidlo
- License: gpl-3.0
- Created: 2017-03-09T03:34:46.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2024-07-23T23:32:34.000Z (9 months ago)
- Last Synced: 2025-02-17T09:32:47.349Z (2 months ago)
- Topics: keepass, password-manager, unix
- Language: Python
- Homepage:
- Size: 291 KB
- Stars: 203
- Watchers: 10
- Forks: 19
- Open Issues: 9
-
Metadata Files:
- Readme: README.rst
- Changelog: CHANGELOG.rst
- License: LICENSE
Awesome Lists containing this project
- awesome-keepass - passhole - `python` passhole is a commandline password manager for KeePass (Clients / Other clients)
README
Passhole
========.. image:: https://img.shields.io/matrix/pykeepass:matrix.org.svg
:target: https://matrix.to/#/#pykeepass:matrix.org``passhole`` is a commandline password manager for KeePass inspired by `pass`_.
.. _pass: https://www.passwordstore.org
.. image:: https://i.imgur.com/lWLgbo3.gif
- `Manual`_
- `Features`_
- `Setup`_
- `Example Usage`_
- `Example i3wm Keybindings`_
- `Testing and Development`_Features
------------- fill user/pass field in any application via keyboard shortcut
- add, delete, move, edit, rename entries and groups
- generate alphanumeric, symbolic, or `correct horse battery staple`_ style passwords
- temporarily cache database password (by default for 10 minutes)
- multiple databases
- supports KeePass v3 and v4 databases
- supports TOTP.. _correct horse battery staple: http://xkcd.com/936
See below for examples and the `manual`_ (or ``man passhole``) for a complete list of commands and options.
.. _manual: https://github.com/evidlo/passhole/tree/master/MANUAL.rst
Setup
------------.. code:: bash
pip install passhole
ph init
# optionally install zenity for graphical password prompt
sudo apt install zenityExample Usage
--------------.. code:: bash
# add a new entry with manually created password
$ ph add github
Username: Evidlo
Password:
Confirm:
URL: github.com# add an entry with a generated alphanumeric password
$ ph add neopets -a
Username: Evidlo
URL: neopets.com# add a new group
$ ph add social/
# add an entry to `social/` with a 32 character password (alphanumeric + symbols)
$ ph add social/facebook -s 32
Username: [email protected]
URL: facebook.com# add an entry to `social/` with a correct-horse-battery-staple type password
$ ph add social/twitter -w
Username: [email protected]
URL: twitter.com# list all entries
$ ph list
github
neopets
[social]# display contents of entry
$ ph show social/twitter
Title: twitter
Username: Evidlo
Password: inns.ambien.travelling.throw.force
URL: twitter.com# retrieve contents of specific field for use in scripts
$ ph show social/twitter --field password
inns.ambien.travelling.throw.forceExample i3wm Keybindings
------------------------.. code:: bash
# select entry using dmenu, then send password to keyboard
bindsym $mod+p exec "ph type --prog dmenu"# select entry using dmenu, then send username + password to keyboard
bindsym $mod+Shift+p exec "ph type --tabbed --prog dmenu"Testing and Development
-----------------------Running tests
.. code:: bash
# from repo root dir:
python test/tests.pyIsolated install in Docker
.. code:: bash
# debian
make docker_debianBuilding manpage and packaging
.. code:: bash
make man
make distSee also
--------
- `keepmenu`_
- `kpcli`_
- `keepassxc`_
- `kdbxpasswordpwned`_.. _keepmenu: https://github.com/firecat53/keepmenu/
.. _kpcli: http://kpcli.sourceforge.net/
.. _keepassxc: https://keepassxc.org/
.. _kdbxpasswordpwned: https://github.com/fopina/kdbxpasswordpwnedBuild Dependencies
---------------------------Alpine
apk add gcc libffi-dev py3-lxml py3-pip python3-dev libc-dev