Skip to main content
Titanis lets you specify default values for common parameters through environment variables, so you don’t have to repeat them on every command.

Command-specific options

To set default options that are always prepended to a specific command’s arguments, set an environment variable named <COMMAND>_OPTIONS. For example, to always run Kerb with -vv:
export KERB_OPTIONS=-vv
For tools with subcommands, concatenate the command and subcommand names with an underscore:
export SMB2CLIENT_LS_OPTIONS="-UserName [email protected] -Kdc 10.66.0.11"
When a tool imports options this way, it prints a confirmation message:
INFO: Using options from environment SMB2CLIENT_LS_OPTIONS: -vv

Global parameter defaults

Because parameter names are consistent across all Titanis commands, you can set a global default for any parameter using an environment variable named TITANIS_DEFAULT_<PARAM>. For example, to set the default log level to diagnostic:
export TITANIS_DEFAULT_LOGLEVEL=diagnostic
When a command uses a default imported this way, it prints:
INFO: Importing default for 'LogLevel': diagnostic

Common global defaults

VariableDescription
TITANIS_DEFAULT_LOGLEVELDefault log verbosity level
TITANIS_DEFAULT_LOGFORMATDefault log output format
TITANIS_DEFAULT_WORKSTATIONWorkstation name reported during authentication
TITANIS_DEFAULT_KDCDefault KDC address
TITANIS_DEFAULT_REALMDefault Kerberos realm
TITANIS_DEFAULT_USERNAMEDefault user name
TITANIS_DEFAULT_PASSWORDDefault password
TITANIS_DEFAULT_USERDOMAINDefault user domain

KRB5CCNAME support

The -TicketCache parameter accepts a default value through either of the methods above. It also checks the standard KRB5CCNAME environment variable.
export KRB5CCNAME=milchick.ccache
With KRB5CCNAME set, all commands that use -TicketCache will read from and write to this file automatically. If the file does not exist, it is created when the first ticket is requested. Titanis detects whether to create it as a .kirbi or .ccache file based on the extension.
See Environment setup for recommendations on structuring per-identity credential files and global defaults.

Build docs developers (and LLMs) love