A word from our sponsors

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
sw:pwman3:intro [2017/09/11 19:30] Frank Fegertsw:pwman3:intro [2017/09/17 08:23] (current) Frank Fegert
Line 1: Line 1:
 ====== Introduction ====== ====== Introduction ======
  
-FIXME+Pwman3 aims to provide a simple but powerful command line interface for password management. It allows one to store your password in a SQLite database locked by a master password which can be encrypted with different algorithms (e.g AES, Blowfish, DES3, IDEA, etc.). 
 + 
 +Pwman3 is a nice command line password manager, which is smart enough to use different SQL Databases (MySQL, SQLite, PostgreSQL). Pwman3 can also copy passwords to the clipboard (on Mac and Linux) without exposing them, so you save some typing. Besides managing and storing passwords, Pwman3 can also generate passwords using different algorithms.  
 + 
 +Nice Features in pwman3: 
 + 
 +  * copying of passwords to clipboard 
 +  * launching specific uri's with default browser 
 +  * password generators 
 +  * not really a user oriented feature. However, it guarantees the elimination of silly bugs: pwman3 is test driven! 
  
 ====== Links ====== ====== Links ======
Line 11: Line 20:
 ====== Docs ====== ====== Docs ======
  
-FIXME+[[http://pwman3.readthedocs.org/en/latest/]]\\
  
 ====== Files and Directories ====== ====== Files and Directories ======
- 
-FIXME 
  
 ===== General Files and Directories ===== ===== General Files and Directories =====
  
-FIXME+^ File or Directory                 ^ Description                                   ^ 
 +| ''$HOME/.pwman/''                 | User-specific pwman3 directory.               | 
 +| ''$HOME/.pwman/pwman.db''         | The user's default SQLite password database if no other database or location is specified.    |
  
 ===== Configuration Files ===== ===== Configuration Files =====
  
-FIXME+^ File or Directory                 ^ Description                                       ^ 
 +| ''$HOME/.pwman/config''           | The application's configuration file.             |
  
 ====== Getting Help ====== ====== Getting Help ======
- 
-FIXME 
  
 Manual pages:  Manual pages: 
  
 <cli> <cli>
-user@host:~$ +user@host:~$ man pwman3
 </cli> </cli>
  
-====== Install ======+Readme file:
  
-FIXME+<cli> 
 +user@host:~$ zless /usr/share/doc/pwman3/README.md.gz 
 +</cli>
  
-To install //// on Debian+Inline help:
  
 <cli> <cli>
-root@host:~$ +user@host:~$ pwman3 
 +pwman> help 
 + 
 +Documented commands (type help <topic>): 
 +======================================== 
 +EOF    copy    e     export  h     list  o     passwd  save 
 +clear  cp      edit  filter  help  n     open  print   set  
 +cls    delete  exit  forget  l     new       rm      tags 
 + 
 +Miscellaneous help topics: 
 +========================== 
 +import 
 + 
 +Undocumented commands: 
 +====================== 
 +ls 
 +</cli> 
 + 
 +====== Install ====== 
 + 
 +To install //pwman3// on Debian:  
 + 
 +<cli> 
 +root@host:~$ apt-get update 
 +root@host:~$ apt-get -y install pwman3
 </cli>  </cli> 
  
 ====== Configuration ====== ====== Configuration ======
  
-FIXME+The user-specific //pwman3// configuration file ''$HOME/.pwman/config'' has the following INI-style structure: 
 + 
 +<code> 
 +[section-name] 
 +option = value 
 +option = value 
 +... 
 +</code> 
 + 
 +The following table describes the configuration options and their possible values as well as the section names where those configuration options are valid in: 
 + 
 +<sortable 3phase> 
 +^ Section       ^ Option        ^ Value         ^ Description                                                   ^ 
 +| Readline      | history       | String        | Path to the file containing history of the commands typed.    | 
 +| Global        | save          | True / False  | Whether the configuring file should be saved.                 | 
 +| Global        | colors        | yes / no      | If set to no, no colors used in output. This is useful for breil terminals.   | 
 +| Global        | cp_timeout    | Integer       | Number of seconds before the clipboard is erased.             | 
 +| Global        | cls_timeout   | Integer       | Number of seconds before the screen is clean after a print.   | 
 +| Global        | umask         | String        | The umask in which database and configuration files are written. 
 +| Global        | xsel          | String        | Path to the xsel binary (Linux and BSD only).                 | 
 +| Global        | lock_timeout  | Integer       | Set the time period (in seconds) after which the database is locked. 
 +| Database      | dburi         | Database URI according to [[https://tools.ietf.org/html/rfc3986|RFC3986]]     | SQLite, Postgreql, MySQL and MongoDB are currently supported. See below for examples.     | 
 +| Updater   | supress_version_check | yes / no  | Check for newer versions of //pwman3.//       | 
 +| Updater   | client_info           | string    | SHA256 digest of host name and username. Used for identifying the client. | 
 +</sortable> 
 + 
 +Database URI examples: 
 + 
 +  * SQLite: ''<nowiki>sqlite:///path/to/your/db</nowiki>'' 
 +  * Postgreql: ''<nowiki>postgresql://<user>:<pass>@<host[:port]>/<database></nowiki>'' 
 +  * MySQL: ''<nowiki>mysql://<user>:<pass>@<host[:port]>/<database></nowiki>'' 
 +  * MongoDB: ''<nowiki>mongodb://<user>:<pass>@<host[:port]>/<database></nowiki>''
  
 ====== Usage ====== ====== Usage ======
  
-FIXME+===== Initial Start =====
  
-===== Status Check =====+Upon inital start, //pwman3// generates a new password database:
  
-FIXME+<cli> 
 +user@host:~$ pwman3 
 +Please enter your new password: 
 +Please enter your new password again: 
 +Pwman3 0.5.1d (c) visit: http://pwman3.github.io/pwman3/ 
 +pwman> 
 +</cli>
  
-To check the status of ////: +The new password database is stored in the user-specific //pwman3// directory, e.g.:
  
 <cli> <cli>
-root@host:~$ +user@host:~$ ls -l ~/.pwman/ 
 +total 12 
 +-rw------- 1 user user 9216 Sep 14 07:05 pwman.db
 </cli> </cli>
 +
 +===== Commands =====
 +
 +The following -- partially synonymous -- commands are available within //pwman3//:
 +
 +^ Command                                                   ^ Description                                               ^
 +| ''EOF'', ''exit''                                         | Exit the application.                                     |
 +| ''clear''                                                 | Clears the filter criteria.                               |
 +| ''cls''                                                   | Clear the screen.                                         |
 +| ''copy'', ''cp''                                          | Copy password to X clipboard (//xsel// is required).      |
 +| ''delete'', ''rm''                                        | Deletes nodes. Multiple ids and nodes can be specifie , separated by a space. A range of ids can be specified in the format n-N.      |
 +| ''e'', ''edit''                                           | Edit a nodes.                                             |
 +| ''export [{'filename': '<file>', 'delimiter':'<char>'}]'' | All nodes under the current filter are exported.          |
 +| ''h [topic]'', ''help [topic]''                           | Print a help message for a command.                       |
 +| ''filter <tag>''                                          | Filter nodes on a given tag. One or more tags are allowed. Displays current list of tags if called without arguments.                                          |
 +| ''forget''                                                | Forget the database password for the current session.     |
 +| ''l <tag>'', ''list <tag>''                               | List nodes that match current or specified filter.        |
 +| ''n'', ''new''                                            | Creates a new node.                                       |
 +| ''o <ID>'', ''open <ID>''                                 | Launch default browser with ''xdg-open url'', for the given node id. Ihe URL must contain <nowiki>http://</nowiki> or <nowiki>https://</nowiki>   |
 +| ''passwd''                                                | Change the password on the database.                      |
 +| ''p <ID|tag>'', ''print <ID|tag>''                        | Display a node. ultiple ids and nodes can be specified, separated by a space.  A range of ids can be specified in the format n-N.     |
 +| ''save [filename]''                                       | Save the current configuration.                           |
 +| ''set [option] [value]''                                  | Set a configuration option. Display current value if no value is given. Display the complete configuration of option and value are omitted.   |
 +| ''tags''                                                  | Display all tags in used in the database.                 |
 +
 +===== Common Tasks =====
 +
 +Create a new password entry -- node -- in the database:
 +
 +<cli prompt='>'>
 +pwman> new
 +Username: username
 +Password (Blank to generate): 
 +[Repeat] Password (Blank to generate): 
 +Url:      http://www.bityard.org
 +Notes:    1st Test
 +Please enter your password:
 +Tags:     Web
 +</cli>
 +
 +List all nodes:
 +
 +<cli prompt='>'>
 +pwman> filter
 +Current tags: 
 +None
 +
 +pwman> ls
 +    1. username@http://www.bityard.org          Web
 +</cli>
 +
 +Print a node by its ID:
 +
 +<cli prompt='>'>
 +pwman> print 1
 +Node 1.
 + Username: username
 + Password: asdasdasd
 +      Url: http://www.bityard.org
 +    Notes: 1st Test
 +Tags: 
 + Web   
 +</cli>
 +
 +Filter nodes by a given tag:
 +
 +<cli prompt='>'>
 +pwman> ls
 +    1. username@http://www.bityard.org          Web
 +    2. root@                                    SSH
 +
 +pwman> filter Web
 +Current tags: 
 +Web   
 +
 +pwman> ls
 +    1. username@http://www.bityard.org          Web
 +</cli>
 +
 +Delete a node
 +
 +<cli prompt='>'>
 +pwman> ls
 +    1. username@http://www.bityard.org          Web
 +    2. root@                                    SSH
 +
 +pwman> delete 1
 +Are you sure you want to delete 'username@http://www.bityard.org' ([y/N])?y
 +username@http://www.bityard.org deleted
 +
 +pwman> ls
 +    2. root@                                    SSH
 +</cli>
 +
 +===== Status Check =====
 +
 +None
  
 ====== Recipies ====== ====== Recipies ======