s/PKCS/PKI
[pwmd.git] / README
blob00457279c9134dc42039946fc9528844b180626f
1 Password Manager Daemon is a server that provides a way for applications to
2 securely store and retrieve data at a centralized location. The data is stored
3 in an XML file and clients connect and send commands to manipulate the data.
5 I needed this because I use a few applications that require the same
6 credentials but hate having to update all those configuration files to reflect
7 any changes. This way, there is a central location for the needed data.
9 Some of the features include:
11     * Multi-threaded. More than one client may access the data at the same
12       time.
13     * Optionally uses the GnuPG Agent for key caching and smartcard support.
14     * Remote network connctions via GnuTLS or SSH via a proxy using libpwmd(3).
15     * Configuration file which supports file specific settings including:
16       cache expiration and encryption key or key file and more.
17     * Logging to file and/or syslog.
18     * Secure memory usage. PWMD will zero out memory before freeing it and
19       also has the option to lock the entire process in RAM to avoid swapping
20       the data to virtual memory.
23 Requirements:
24 -------------
25     C99 compiler - http://www.gnu.org/software/gcc
26                    Has been tested to work. Others should work fine, too.
28     libassuan    - ftp://ftp.gnupg.org/gcrypt/libassuan
29                    Protocol. Version 2.0.2 or later is required. Version
30                    2.1.0 or later is recommended for UDS peer credential
31                    checking on OS's other than Linux.
33     libgpg-error - http://www.gnupg.org
34                    Error handling. Required.
36     gpg-agent    - http://www.gnupg.org
37                    Keypair generation, decryption and caching. Version 2.1.0
38                    or later is required when --use-agent is specified.
39                    Optional.
41     pinentry     - http://www.gnupg.org
42                    Required for passphrase retrieval from either gpg-agent or
43                    pwmd itself.
45     libxml2      - http://xmlsoft.org
46                    Required for XML parsing and data manipulation.
48     libgcrypt    - http://www.gnupg.org
49                    Encryption and hashing. Version 1.5.0 or later is required.
51     libz         - http://www.zlib.net
52                    For data file conversion. Version 1.2.2.1 or later is
53                    required.
55     libgnutls    - http://www.gnu.org/software/gnutls/
56                    For encrypted connections over a TCP network. Optional.
58     libacl       - ftp://acl.bestbits.at
59                    To retain an ACL for a data file. Optional.
62 Installation:
63 -------------
64 ./configure && make install
66 Typing 'pwmd' will start the server and wait for connections to
67 ~/.pwmd/socket. Be sure gpg-agent is running (see manual) when
68 --use-agent is specfied on the pwmd command line (--enable-agent must
69 be passed to configure at compile-time to enable gpg-agent
70 support). Passing --allow-preset-passphrase to gpg-agent is
71 recommended and gpg-agent option --allow-loopback-pinentry is required
72 if using a keyfile or connecting over TLS.
75 Connecting:
76 -----------
77 Any program that can connect to a UNIX domain socket will work although using
78 pwmc, a client included with libpwmd, is recommended:
80     echo command | pwmc filename
81 or interactively
82     pwmc filename
84     socat UNIX-CONNECT:$HOME/.pwmd/socket -
86 A more user-friendly client QPwmc is also available. It has a Qt GUI and is
87 much easier to use. See http://qpwmc.sourceforge.net/ for details.
89 Please read pwmd.info manual for protocol commands, syntax and
90 configuration details. A HTML version is also available in doc/pwmd.html.
93 GIT Repository
94 --------------
95 There is a public GIT repository available at repo.or.cz. Anonymous checkouts
96 can be done by:
98     git clone git://repo.or.cz/pwmd.git
100 The gitweb interface can be viewed at http://repo.or.cz/w/pwmd.git.
103 Mailing lists
104 -------------
105 Please send bug reports, questions or feature requests to
106 https://lists.sourceforge.net/lists/listinfo/pwmd-users
108 The same for libpwmd may be sent to
109 https://lists.sourceforge.net/lists/listinfo/libpwmd-users
112 Ben Kibbey <bjk@luxsci.net>
113 XMPP: bjk@jabber.org
114 http://pwmd.sourceforge.net/