.TH sshyp 1 "14 December 2022" "v1.3.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 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" Optionally, Bash completions can be enabled by installing your distribution's "bash-completion" package and restarting your terminal 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 connection error .SH AUTHOR Randall Winkhart (https://github.com/rwinkhart)