.\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) .TH pki 1 "December 13, 2012" "version 1.0" "PKI Command-Line Interface (CLI) Tools" Ade Lee .\" Please adjust this date whenever revising the man page. .\" .\" Some roff macros, for reference: .\" .nh disable hyphenation .\" .hy enable hyphenation .\" .ad l left justify .\" .ad b justify to both left and right margins .\" .nf disable filling .\" .fi enable filling .\" .br insert line break .\" .sp insert n+1 empty lines .\" for man page specific macros, see man(7) .SH NAME pki \- Command-Line Interface Tool for accessing Certificate System Servers. .SH SYNOPSIS pki [CLI options] [command arguments] .SH DESCRIPTION .PP \fBpki\fR provides a command-line interface to Certificate System Servers, allowing administrators to manage certificates, groups, keys, security domains, and users. .SH OPTIONS .TP .B -d Specifies the certificate database to be used. .TP .B -h Specifies the hostname (default: localhost). .TP .B --help Prints additional help information. .TP .B -n Specifies the certificate nickname. .TP .B -P Specifies the protocol (default: http). .TP .B -p Specifies the port (default: 8080). .TP .B -t Specifies the type of subsystem (default: ca). .TP .B -U Specifies the server URI. .TP .B -u Specifies the username. .TP .B -v Displays verbose information. .TP .B --version Displays 'pki' CLI version information. .TP .B -w Specifies the password. .SH OPERATIONS To view available commands and options, simply type \fBpki\fP. Some commands have sub-commands. To view the sub-commands, type \fBpki \fP. To view each command's usage, type \fB pki --help\fP. .SS Connection By default, \fBpki\fP connects to the non-secure (HTTP) port of a CA server running on localhost on port 8080. To specify a different server location, use the appropriate arguements to give a different host (\fB-h\fP), port (\fB-p\fP), connection protocol (\fB-P\fP), or subsystem type (\fB-t\fP). .B pki -P -h -p -t Alternatively, the connection parameters can be specified as a URL: .B pki -U where the URL is of the format \fIhttps://:/\fP. .SS Authentication Some commands require authentication. These are commands that are restricted to particular sets of users (such as agents or admins) or those operations involving certificate profiles that require authentication. To execute a command without authentication: .B pki To authenticate with a username and password: .B pki -u -w To authenticate with a client certificate: .B pki -d -w -n "" .SS Viewing Certificates Certificates can be viewed anonymously. To list all certificates: .B pki cert-find It is also possible to search for and list specific certificates by adding a search filter. Use \fBpki cert-find --help\fP to see options. For example, to search based on issuance date: .B pki cert-find --issuedOnFrom 2012-06-15 To view a particular certificate: .B pki cert-show .SS Revoking Certificates Revoking, holding, or releasing a certificate must be executed as an agent user. To revoke a certificate: .B pki cert-revoke To place a certificate on hold temporarily: .B pki cert-hold To release a certificate that has been placed on hold: .B pki cert-release-hold .SS Certificate Requests To request a certificate, first generate a certificate request in PKCS #10 or CRMF, and store this request in an XML file. For example: .br caUserCert false crmf MIIBozCCAZ8wggEFA ... CSR in Base 64 ... KeyGenInput testuser testuser@example.com US Engineering Test User Example SubjectNameInput admin admin@example.com 123-456-7890 SubmitterInfoInput .br Then submit the request for review. This can be done without authentication. .B pki cert-request-submit Then, an agent needs to review the request. .B pki cert-request-review --output The output file contains details about the request, as well as the defaults and constraints of the enrollment profile. It contains all the values that can be overridden by the agent. To approve a request, run the following command as an agent: .B pki cert-request-approve .SS Group Management Commands All group commands must be executed as an administrator. Some representative commands are shown below. Type \fBpki group\fP to get a list of additional commands. To list groups, use \fBpki group-find\fP. It is possible to select the page size to limit the number of entries returned. To list all groups: .B pki group-find To view a particular group: .B pki group-show To add a group: .B pki group-add --description "description" To delete a group: .B pki group-del To add a user to a group: .B pki group-add-member To delete a user from a group: .B pki group-remove-member .\".SS Key Management Commands .\"\fBpki\fP can be used with a KRA to find specific keys and key requests. This will be documented in more detail at a later time. .SS Security Domain Commands \fBpki\fP can be used to access certain information from the security domain. To get an installation token (used when installing a new subsystem within a security domain): \fBpki securitydomain-get-install-token --hostname --subsystem \fP To show the contents of the security domain: \fBpki securitydomain-show\fP .SS User Management Commands All user commands must be executed as an administrator. Some representative commands are shown below. Type \fBpki user\fP to get a list of additional commands. To list users, use \fBpki user-find\fP. It is possible to select the page size to limit the size of the results. To list all users: .B pki user-find To view a particular user: .B pki user-show To add a user: .B pki user-add --fullName "" To delete a user: .B pki user-del .SH FILES .I /usr/bin/pki .SH AUTHORS Ade Lee , Endi Dewata , and Matthew Harmsen . \fBpki\fP was written by the Dogtag project. .SH COPYRIGHT Copyright (c) 2012 Red Hat, Inc. This is licensed under the GNU General Public License, version 2 (GPLv2). A copy of this license is available at http://www.gnu.org/licenses/old-licenses/gpl-2.0.txt.