.TH sshyp 1 "05 November 2022" "v1.2.0" "sshyp man page" .SH NAME sshyp \- A very simple self-hosted, synchronized password manager for UNIX(-like) systems. Alternative to (and compatible with) pass/password-store. .SH SYNOPSIS Client Usage: sshyp [option [flag] []] | [/] Server Usage: sshyp [option [flag] []] .SH DESCRIPTION sshyp is a lightweight password and note management program written in Python. sshyp is used via CLI and is self-hosted with a client-server model. sshyp expects that you have access to a personal server with a properly configured ssh server, ideally accepting remote connections. .SH EXAMPLES (CLIENT) Setting up sshyp for the first time or altering its configuration (also recommended after major updates): sshyp tweak Viewing the entry database: sshyp Reading an existing entry saved as ~/.local/share/sshyp/development/github.gpg: sshyp /development/github Copying the password of an existing entry saved as ~/.local/share/sshyp/financial/bank.gpg: sshyp copy -p /financial/bank Editing the username of an existing entry saved as ~/.local/share/sshyp/game.gpg: sshyp edit -u game Making a new entry saved as ~/.local/share/sshyp/school/university.gpg using the built-in password generator: sshyp gen /school/university Creating a note-only entry saved as ~/.local/share/sshyp/notes/testNote.gpg: sshyp add -n /notes/testNote Manually syncing entries with the server: sshyp sync Removing an existing folder saved as ~/.local/share/sshyp/social: sshyp shear social/ .SH EXAMPLES (SERVER) Setting up the quick-unlock whitelist: sshyp whitelist setup Checking the quick-unlock whitelist status of all registered client devices: sshyp whitelist list Adding a device with the id "laptop-im|lAoa;&;r&o:ez((g/Dz;EVb.nO_" to the quick-unlock whitelist: sshyp whitelist add 'laptop-im|lAoa;&;r&o:ez((g/Dz;EVb.nO_' Removing a device with the id "laptop-im|lAoa;&;r&o:ez((g/Dz;EVb.nO_" from the quick-unlock whitelist: sshyp whitelist del 'laptop-im|lAoa;&;r&o:ez((g/Dz;EVb.nO_' .SH OPTIONS (CLIENT) help/--help/-h bring up the help menu version/-v display sshyp version info tweak configure sshyp add add an entry gen generate a new password edit edit an existing entry copy copy details of an entry to your clipboard shear/-rm delete an existing entry sync/-s manually sync the entry directory via sshync .SH FLAGS (CLIENT) add: password/-p add a password entry note/-n add a note entry folder/-f add a new folder for entries edit: rename/relocate/-r rename or relocate an entry username/-u change the username of an entry password/-p change the password of an entry note/-n change the note attached to an entry url/-l change the url attached to an entry copy: username/-u copy the username of an entry to your clipboard password/-p copy the password of an entry to your clipboard url/-l copy the URL of an entry to your clipboard note/-n copy the note of an entry to your clipboard gen: update/-u generate a password for an existing entry .SH OPTIONS (SERVER) help/--help/-h bring up this menu version/-v display sshyp version info tweak configure sshyp whitelist manage the quick-unlock whitelist .SH FLAGS (SERVER) whitelist: setup set up the quick-unlock whitelist list/-l view all registered device ids and their quick-unlock whitelist status add whitelist a device id for quick-unlock delete/del remove a device id from the quick-unlock whitelist .SH LIMITATIONS The following characters/character sequences are not supported in entry/folder titles: @ ^&* *&^ .SH SETUP sshyp operates on a client-server model, and thus requires you to have access to your own server (whether it be a physical home server or a cloud rental) with remote access via SSH. The sshyp package includes modes for operating on both client and server devices, so only one package is necessary. Server setup: Configure an OpenSSH server (if sshyp was installed from the Debian package, openssh-server and openssh-sftp-server must be installed manually - if sshyp was installed from the Fedora package, openssh-server must be installed manually) Allow remote access to the SSH server w/public key authentication (disabling password-only authentication recommended) Install sshyp Run "sshyp tweak" and set the device type as server Optionally, run "sshyp whitelist setup" and configure quick-unlock Done! Client setup: Install sshyp Run "sshyp tweak" and follow the prompts Copy the generated public SSH key (located at ~/.ssh/sshyp.pub) to the server using preferred method (manually adding to authorized_keys, ssh-copy-id, etc.) If you already have entries on the server, sync them using "sshyp sync" Done! Please note that the server setup intentionally does not allow the reading of entries (it does not allow adding a gpg decryption key). For security purposes, only clients can read entries. .SH EXIT CODES 0 - no error 1 - argument error 2 - configuration error 3 - data not found error 4 - data already exists error 5 - decryption/encryption error 6 - server data retrieval error .SH AUTHOR Randall Winkhart (https://github.com/rwinkhart)