Skip to main content

SSH client settings reference

Privilege Secure runs actions on managed devices, such as scans and password rotations, through an SSH client. The Action Service and the Host Scan Service start this client. Its settings are in sbpam_sshclient.json, and its log settings are in sbpam_log.json.

Locate the settings file​

The default location is:

C:\Program Files\Stealthbits\PAM\ActionServiceWorker\sbpam_sshclient.json

Edit the file at its default location on every server that runs an Action Service or a Host Scan Service. The file is in the program folder, so an upgrade can replace it. Keep a copy of your edits. To change the SSH algorithms, see Configure SSH algorithms.

Timing and retry settings​

These settings are in the DefaultConfig section. The defaults come from the 26.07.3 file.

SettingDefaultWhat it controls
HungTimerSecs180Seconds without any progress before the client aborts the action
StalledTimerSecs30Seconds without output before the client tries a recovery, such as sending a line break
CommandTimerSecs2Seconds that one command can take before the client treats it as slow
CommitTimerSecs90Seconds allowed for a PAN-OS commit
MaxRetry2Connection attempts for a dial or an API call
TransientMaxRetry5Extra connection attempts when the first failure looks like a slow authentication server
GlobalTimeoutSecs300Total seconds allowed for one action, after which the client records a timeout and stops
DialTimeoutSecs15Seconds allowed for the initial TCP and SSH handshake
KeepaliveIntervalSecs30Seconds between keepalive messages on an idle session
PanosPollIntervalSecs20Seconds between PAN-OS activation polls
PanosPollMaxAttempts9Number of PAN-OS activation poll attempts
PanosCommitPollIntervalSecs3Seconds between PAN-OS commit status polls
PanosCommitPollMaxAttempts60Number of PAN-OS commit status poll attempts
SshLoginPollIntervalSecs5Seconds between sign-in polls that confirm a new password works
SshLoginPollMaxAttempts6Number of sign-in poll attempts
PromptList(six regular expressions)The prompt patterns that tell the client a command finished

Most of these values suit a typical network. Change DialTimeoutSecs when an unreachable host should fail faster, or when a slow authentication server needs longer to answer. Change GlobalTimeoutSecs when a long-running plan needs more than five minutes.

The Action Service and Host Scan Service start a new SSH client for each command plan, so a change to sbpam_sshclient.json needs no service restart. New actions use the saved settings.

Log settings​

The SSH client writes to PAM-SSHClient.log. Its settings are in sbpam_log.json, in the same folder as the SSH client file.

SettingDefaultWhat it controls
Filename%PROGRAMDATA%/Stealthbits/PAM/Log/PAM-SSHClient.logThe log file
MaxSize100The size in MB at which the client rolls the log
MaxAge30The number of days the client keeps a rolled log
MaxBackups10The number of rolled logs the client keeps
LogLevelInfoThe lowest level the client writes

Raise LogLevel to Debug while you troubleshoot a plan, then set it back. Each new SSH client reads the file when it starts, so a change needs no service restart.

The client redacts a value that follows a sensitive tag or the word password in a logged command, and writes ******** in its place. A secret that doesn't follow one of those words can still appear in the log. Check the log before you share it.