SALT-SSH(1)

NAME
salt-ssh - salt-ssh Documentation

SYNOPSIS

    salt-ssh '*' [ options ] sys.doc
    salt-ssh -E '.*' [ options ] sys.doc cmd

DESCRIPTION

Salt SSH allows for salt routines to be executed using only SSH for transport

OPTIONS

--version
    Print the version of Salt that is running.

--versions-report
    Show program's dependencies and version number, and then exit

-h, --help
    Show the help message and exit

-c CONFIG_DIR, --config-dir=CONFIG_dir
    The location of the Salt configuration directory. This directory contains the configuration files for Salt master and minions. The default location on most systems is /etc/salt.

--hard-crash
    Raise any original exception rather than exiting gracefully. Default: False.

-r, --raw, --raw-shell
    Execute a raw shell command.

--roster
    Define which roster system to use, this defines if a database backend, scanner, or custom roster system is used. Default is the flat file roster.

--roster-file
    Define an alternative location for the default roster file location. The default roster file is called roster and is found in the same directory as the master config file.

    Added in version 2014.1.0.

--refresh, --refresh-cache
    Force a refresh of the master side data cache of the target's data. This is needed if a target's grains have been changed and the auto refresh timeframe has not been reached.

--max-procs
    Set the number of concurrent minions to communicate with. This value defines how many processes are opened up at a time to manage connections, the more running process the faster communication should be, default is 25.

--extra-filerefs=EXTRA_FILEREFS
    Pass in extra files to include in the state tarball.

--min-extra-modules=MIN_EXTRA_MODS
    One or comma-separated list of extra Python modulesto be included into Minimal Salt.

--thin-extra-modules=THIN_EXTRA_MODS
    One or comma-separated list of extra Python modulesto be included into Thin Salt.

-v, --verbose
    Turn on command verbosity, display jid.

-s, --static
    Return the data from minions as a group after they all return.

-w, --wipe
    Remove the deployment of the salt files when done executing.

-W, --rand-thin-dir
    Select a random temp dir to deploy on the remote system. The dir will be cleaned after the execution.

-t, --regen-thin, --thin
    Trigger a thin tarball regeneration. This is needed if custom grains/modules/states have been added or updated.

--python2-bin=PYTHON2_BIN
    Path to a python2 binary which has salt installed.

--python3-bin=PYTHON3_BIN
    Path to a python3 binary which has salt installed.

--jid=JID
    Pass a JID to be used instead of generating one.

--pre-flight
    Run the ssh_pre_flight script defined in the roster. By default this script will only run if the thin dir does not exist on the target minion. This option will force the script to run regardless of the thin dir existing or not.

  Authentication Options

--priv=SSH_PRIV
    Specify the SSH private key file to be used for authentication.

--priv-passwd=SSH_PRIV_PASSWD
    Specify the SSH private key file's passphrase if need be.

-i, --ignore-host-keys
    By default ssh host keys are honored and connections will ask for approval. Use this option to disable StrictHostKeyChecking.

--no-host-keys
    Fully ignores ssh host keys which by default are honored and connections would ask for approval. Useful if the host key of a remote server has changed and would still error with --ignore-host-keys.

--user=SSH_USER
    Set the default user to attempt to use when authenticating.

--passwd
    Set the default password to attempt to use when authenticating.

--askpass
    Interactively ask for the SSH password with no echo - avoids password in process args and stored in history.

--key-deploy
    Set this flag to attempt to deploy the authorized ssh key with all minions. This combined with --passwd can make initial deployment of keys very fast and easy.

--identities-only
    Use the only authentication identity files configured in the ssh_config files. See IdentitiesOnly flag in man ssh_config.

--sudo
    Run command via sudo.

  Scan Roster Options

--scan-ports=SSH_SCAN_PORTS
    Comma-separated list of ports to scan in the scan roster.

--scan-timeout=SSH_SCAN_TIMEOUT
    Scanning socket timeout for the scan roster.

  Logging Options

Logging options which override any settings defined on the configuration files.

-l LOG_LEVEL, --log-level=LOG_LEVEL
    Console logging log level. One of all, garbage, trace, debug, info, warning, error, quiet. Default: warning.

--log-file=LOG_FILE
    Log file path. Default: /var/log/salt/ssh.

--log-file-level=LOG_LEVEL_LOGFILE
    Logfile logging log level. One of all, garbage, trace, debug, info, warning, error, quiet. Default: warning.

  Target Selection

The default matching that Salt utilizes is shell-style globbing around the minion id. See <https://docs.python.org/3/library/fnmatch.html#module-fnmatch>.

-E, --pcre
    The target expression will be interpreted as a PCRE regular expression rather than a shell glob.

  Output Options

--out
    Pass in an alternative outputter to display the return of data. This outputter can be any of the available outputters: highstate, json, key, overstatestage, pprint, raw, txt, yaml, and many others <#all-salt-output>.

    Some outputters are formatted only for data returned from specific functions. If an outputter is used that does not support the data passed into it, then Salt will fall back on the pprint outputter and display the return data using the Python pprint standard library module.

--out-indent OUTPUT_INDENT, --output-indent OUTPUT_INDENT
    Print the output indented by the provided value in spaces. Negative values disable indentation. Only applicable in outputters that support indentation.

--out-file=OUTPUT_FILE, --output-file=OUTPUT_FILE
    Write the output to the specified file.

--out-file-append, --output-file-append
    Append the output to the specified file.

--no-color
    Disable all colored output

--force-color
    Force colored output

    Note: When using colored output the color codes are as follows:

    green denotes success, red denotes failure, blue denotes changes and success and yellow denotes a expected future change in configuration.

--state-output=STATE_OUTPUT, --state_output=STATE_OUTPUT
    Override the configured state_output value for minion output. One of 'full', 'terse', 'mixed', 'changes' or 'filter'. Default: 'none'.

--state-verbose=STATE_VERBOSE, --state_verbose=STATE_VERBOSE
    Override the configured state_verbose value for minion output. Set to True or False. Default: none.

    Note: If using --out=json, you will probably want --static as well. Without the static option, you will get a separate JSON string per minion which makes JSON output invalid as a whole. This is due to using an iterative outputter. So if you want to feed it to a JSON parser, use --static as well.

SEE ALSO

salt(7) salt-master(1) salt-minion(1)

Author
Thomas S. Hatch <thatch45@gmail.com> and many others, please see the Authors file

Copyright
2026