.TH sshyp 1 "15 May 2023" "v1.5.0" "sshyp man page" .SH NAME \fBsshyp\fR - Simple, self-hosted, synchronized password management for UNIX(-like) systems. Alternative to (and compatible with) pass/password-store. .SH SYNOPSIS Client Usage: sshyp [ [argument] [option]] | [argument] Server Usage: sshyp [option] [device id] .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: sshyp init Altering the existing sshyp configuration: sshyp tweak Viewing the entry database: sshyp Reading an existing entry saved as '~/.local/share/sshyp/development/github.gpg': sshyp /development/github Reading the same entry without hiding the password: sshyp /development/github --show Copying the password of an existing entry saved as '~/.local/share/sshyp/financial/bank.gpg': sshyp /financial/bank copy -p Editing the username of an existing entry saved as '~/.local/share/sshyp/game.gpg': sshyp /game edit -u Making a new entry saved as '~/.local/share/sshyp/school/university.gpg' using the built-in password generator: sshyp /school/university gen Creating a note-only entry saved as '~/.local/share/sshyp/notes/test note.gpg': sshyp /notes/test\ note add -n Manually syncing entries with the server: sshyp sync Removing an existing folder saved as '~/.local/share/sshyp/social': sshyp /social/ shear .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 ARGUMENTS (CLIENT) help/-h bring up the help menu version/-v display sshyp version info init set up sshyp tweak change configuration options/manage extensions and updates add add an entry gen generate a new password edit edit an existing entry copy copy details of an entry to your clipboard shear delete an existing entry sync manually sync the entry directory via sshync .SH OPTIONS (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 ARGUMENTS (SERVER) help/-h bring up this menu version/-v display sshyp version info init set up sshyp tweak change configuration options/manage extensions and updates whitelist manage the quick-unlock whitelist .SH OPTIONS (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 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 (on fully supported platforms) 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 init" and set the device type as server Optionally, run "sshyp whitelist setup" and configure quick-unlock Done! Client setup: Install sshyp Run "sshyp init" 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, shell completions (both Bash and ZSH) can be enabled with your shell's respective method 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 - configuration error 2 - data not found error 3 - data already exists error 4 - decryption/encryption error 5 - server connection error .SH AUTHOR Randall Winkhart (https://github.com/rwinkhart)