Commandline

XCA can be used without GUI to analyze PKI items and to generate CRLs and keys. In this case no X-Server connection is required (Linux)

Arguments

--crlgen=ca-identifier

Generate CRL for <ca>. Use the 'name' option to set the internal name of the new CRL. [1]

--database=database

File name (*.xdb) of the SQLite database or a remote database descriptor: [user@host/TYPE:dbname#prefix].

--exit

Exit after importing items.

--help

Print this help and exit.

--hierarchy=directory

Save OpenSSL index hierarchy in <dir>. [1]

--index=file

Save OpenSSL index in <file>. [1]

--import

Import all provided items into the database. [1]

--import-names

A semicolon separated list of names applied to the imported items in the order found in the PEM file and on the commandline. [1]

--issuers

Print all known issuer certificates that have an associated private key and the CA basic constraints set to 'true'. [1]

--keygen=type

Generate a new key and import it into the database. Use the 'name' option to set the internal name of the new key. The <type> parameter has the format: '[RSA|DSA|EC]:[<size>|<curve>]. [1]

--list-curves

Prints all known Elliptic Curves.

--list-items

List all items in the database. [1]

--name=internal-name

Provides the name of new generated items. An automatic name will be generated if omitted. [1]

--no-native-dialogs

Disables the native dialogs of the operating system for messages and file operations and uses Qt specific dialogs instead.

--no-gui

Do not start the GUI. Alternatively set environment variable XCA_NO_GUI=1 or call xca as 'xca-console' symlink.

--password=password

Database password for unlocking the database. See below for password format options.

--pem

Print PEM representation of provided files. Prints only the public part of private keys.

--pem-file

Specify a file name for the PEM data. Implies '–pem'.

--print

Print a synopsis of provided files.

--select=id-list

Selects all items in the comma separated id-list to be shown with 'print', 'text' or 'pem'. [1]

--sqlpass=password

Password to access the remote SQL server. See below for password format options.

--text

Print the content of provided files as OpenSSL does.

--verbose

Print debug log on stderr. Same as setting XCA_DEBUG=all. See XCA_DEBUG

--version

Print version information and exit.

Passphrase arguments

The password options accept the same syntax as openssl does:

env:var

Obtain the password from the environment variable var. Since the environment of other processes is visible on certain platforms (e.g. ps under certain Unix OSes) this option should be used with caution.

fd:number

Read the password from the file descriptor number. This can be used to send the data via a pipe for example.

file:pathname

The first line of pathname is the password. If the same pathname argument is supplied to password and sqlpassword arguments then the first line will be used for both passwords. pathname need not refer to a regular file: it could for example refer to a device or named pipe.

pass:password

The actual password is password. Since the password is visible to utilities (like 'ps' under Unix) this form should only be used where security is not important.

stdin

Read the password from standard input.