{"componentChunkName":"component---src-templates-manual-template-tsx","path":"/manuals/client-user/61/ssh-broker-config.html","webpackCompilationHash":"d1750f6cc413894a8b5c","result":{"data":{"promoBlocks":{"edges":[{"node":{"contentful_id":"47glnSpWzXeFylv2vfQEF8","internal":{"type":"ContentfulPromotionBlock"},"title":{"internal":{"type":"ContentfulHeading"},"contentful_id":"7KIOfSfgwJnCXuvRN6CfrP","textContent":"Standing privileges are a risk with PAM","color":"black","size":"medium"},"subTitle":null,"content":{"nodeType":"document","internal":{"content":"{\"nodeType\":\"document\",\"data\":{},\"content\":[{\"nodeType\":\"paragraph\",\"content\":[{\"nodeType\":\"text\",\"value\":\"Start your journey towards a just-in-time (JIT) model with zero standing privileges (ZSP). Read 'Remove Standing Privileges Through a Just-In-Time PAM Approach' by Gartner , courtesy of SSH.COM.\\n \\n\",\"marks\":[],\"data\":{}}],\"data\":{}}]}"}},"callToAction":{"internal":{"type":"ContentfulButton"},"contentful_id":"19EUesynV2Z7HHcuJk0BAS","content":"Download Gartner research","internalLink":null,"externalLink":"https://info.ssh.com/gartner_research_privileged_access_management","assetLink":null,"anchor":null},"picture":{"internal":{"type":"ContentfulAsset"},"contentful_id":"2ClylmBswcfDx4XdO7NTmL","title":"ICON Gartner ZSP","description":"","file":{"url":"//images.ctfassets.net/0lvk5dbamxpi/2ClylmBswcfDx4XdO7NTmL/78e899153ed66aec3b03b9a2cacd112d/ICON_Gartner_ZSP_ICON_Gartner.png","contentType":"image/png"},"fluid":{"aspectRatio":1,"src":"//images.ctfassets.net/0lvk5dbamxpi/2ClylmBswcfDx4XdO7NTmL/78e899153ed66aec3b03b9a2cacd112d/ICON_Gartner_ZSP_ICON_Gartner.png?w=3000&q=50","srcSet":"//images.ctfassets.net/0lvk5dbamxpi/2ClylmBswcfDx4XdO7NTmL/78e899153ed66aec3b03b9a2cacd112d/ICON_Gartner_ZSP_ICON_Gartner.png?w=750&h=750&q=50 750w,\n//images.ctfassets.net/0lvk5dbamxpi/2ClylmBswcfDx4XdO7NTmL/78e899153ed66aec3b03b9a2cacd112d/ICON_Gartner_ZSP_ICON_Gartner.png?w=1500&h=1500&q=50 1500w,\n//images.ctfassets.net/0lvk5dbamxpi/2ClylmBswcfDx4XdO7NTmL/78e899153ed66aec3b03b9a2cacd112d/ICON_Gartner_ZSP_ICON_Gartner.png?w=1601&h=1601&q=50 1601w","sizes":"(max-width: 3000px) 100vw, 3000px"},"fixed":{"width":3000,"height":3000,"src":"//images.ctfassets.net/0lvk5dbamxpi/2ClylmBswcfDx4XdO7NTmL/78e899153ed66aec3b03b9a2cacd112d/ICON_Gartner_ZSP_ICON_Gartner.png?w=3000&q=50","srcSet":""}},"centered":true,"indentMainContent":null,"transparentBackground":null,"imageScale":70,"imagePadding":null,"name":"WIKI migration side promo block2","product":null,"funnel":null,"topic":null,"keywords":null,"type":null,"priority":null,"globalOverride":null}},{"node":{"contentful_id":"6dfNaA1UlY4bADKQk6awhs","internal":{"type":"ContentfulPromotionBlock"},"title":{"internal":{"type":"ContentfulHeading"},"contentful_id":"49Tb2wSR21P5C2cpcgMZ3","textContent":"Get Multi-cloud PAM software - for free!","color":"black","size":"medium"},"subTitle":null,"content":{"nodeType":"document","internal":{"content":"{\"data\":{},\"content\":[{\"data\":{},\"content\":[{\"data\":{},\"marks\":[],\"value\":\"PrivX® Free replaces your in-house jump hosts and combines your AWS, GCP and Azure access into one multi-cloud solution.\\n \\n\",\"nodeType\":\"text\"}],\"nodeType\":\"paragraph\"}],\"nodeType\":\"document\"}"}},"callToAction":{"internal":{"type":"ContentfulButton"},"contentful_id":"1dmQ13jyyZ46ID07eVNVFb","content":"PrivX Free","internalLink":null,"externalLink":"https://info.ssh.com/privx-free-access-management-software","assetLink":null,"anchor":null},"picture":{"internal":{"type":"ContentfulAsset"},"contentful_id":"4UUYdjING8micwZQur5o6d","title":"ICON computer (search)","description":"","file":{"url":"//images.ctfassets.net/0lvk5dbamxpi/4UUYdjING8micwZQur5o6d/1b378a0f4646075c7a4788f1afffbabe/ICON_computer__search_.svg","contentType":"image/svg+xml"},"fluid":{"aspectRatio":null,"src":null,"srcSet":null,"sizes":null},"fixed":{"width":null,"height":null,"src":null,"srcSet":null}},"centered":true,"indentMainContent":null,"transparentBackground":null,"imageScale":70,"imagePadding":null,"name":"WIKI migration side promo block1","product":null,"funnel":null,"topic":null,"keywords":null,"type":null,"priority":null,"globalOverride":null}}]}},"pageContext":{"isCreatedByStatefulCreatePages":false,"body":"<div bgcolor=\"white\" text=\"black\" link=\"#0000FF\" vlink=\"#840084\" alink=\"#0000FF\"><table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\" class=\"header\"><tbody><tr bgColor=\"#006a6e\" valign=\"top\"><td colspan=\"2\" width=\"324\"><a href=\"http://www.ssh.com/\"><img src=\"images/header_logo.gif\" alt=\"SSH Tectia\" width=\"324\" height=\"44\" border=\"0\"></a></td><td width=\"100%\"><img src=\"images/1x1.gif\" width=\"10\" height=\"1\" alt=\"\" border=\"0\"></td></tr><tr valign=\"top\"><td width=\"178\"><img src=\"images/navi1_left.gif\" alt=\"\" width=\"178\" height=\"26\" border=\"0\"></td><td width=\"146\" bgcolor=\"#1a797d\" background=\"images/navi1_bg.gif\"></td><td bgcolor=\"#1a797d\" background=\"images/navi1_bg.gif\"></td></tr><tr><td colspan=\"3\"><img src=\"images/1x1.gif\" width=\"10\" height=\"20\" alt=\"\" border=\"0\"></td></tr></tbody></table><div class=\"navheader\"><table width=\"100%\" summary=\"Navigation header\"><tr><td width=\"40%\" align=\"left\"></td><th width=\"20%\" align=\"center\"></th><td width=\"40%\" align=\"right\"><a accesskey=\"h\" href=\"index.html\"><img src=\"images/home.gif\" alt=\"Home\"></a><a href=\"ix01.html\"><img src=\"images/index.gif\"></a> <a accesskey=\"p\" href=\"apas02.html\"><img src=\"images/prev.gif\" alt=\"Prev\"></a> <a accesskey=\"u\" href=\"apas02.html\"><img src=\"images/up.gif\" alt=\"Up\"></a> <a accesskey=\"n\" href=\"broker-config-backup.html\"><img src=\"images/next.gif\" alt=\"Next\"></a>  </td></tr></table></div><div class=\"refentry\" lang=\"en\"><a name=\"ssh-broker-config\"></a><div class=\"titlepage\"></div><div class=\"refnamediv\"><h2><span class=\"refentrytitle\">ssh-broker-config</span></h2><p>ssh-broker-config — SSH Connection Broker configuration file format</p></div><p>The Connection Broker configuration file \n<code class=\"filename\">ssh-broker-config.xml</code> is used by SSH Tectia Client, ConnectSecure, and \nSSH Tectia MFT Events on Unix and Windows, and additionally by the SSH Tectia client tools on z/OS \nand z/Linux. The Connection Broker configuration file must be a valid XML file that \nfollows the <code class=\"filename\">ssh-broker-ng-config-1.dtd</code> document type \ndefinition.</p><div class=\"refsect1\" lang=\"en\"><a name=\"brokerconfig-files\"></a><h2>Connection Broker Files</h2><p> The Connection Broker reads three configuration files (if all are available):</p><div class=\"orderedlist\"><ol type=\"1\"><li><p>The <code class=\"filename\">ssh-broker-config-default.xml</code> file is \n  read first. It holds the factory default settings. It is not \n  recommended to edit the file, but you can use it to view the default \n  settings.</p><p>This file must be available and correctly formatted for the \n  Connection Broker to start.</p></li><li><p>Next, the Connection Broker reads the global configuration file. \n  The settings in the global configuration file override the default \n  settings.</p><p>If the global configuration file is missing or malformed, the Connection Broker \n  will start normally, and will read the user-specific configuration file, instead. \n  A malformed global configuration file is ignored and the default settings \n  or user-specific settings, if they exist, are used instead.</p></li><li><p>Last, the Connection Broker reads the user-specific configuration file, \n  if it is available. The settings in the user-specific configuration file \n  override the settings in the global configuration file, with the following \n  exceptions:</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><p>The following settings from the user-specific configuration \n  are combined with the settings of the global configuration file:</p><div class=\"itemizedlist\"><ul type=\"circle\"><li><p>In <code class=\"option\">general</code> element, the <code class=\"option\">key-stores</code>,  \n  <code class=\"option\">cert-validation</code> and <code class=\"option\">file-access-control</code> settings</p></li><li><p>In <code class=\"option\">profiles</code> element, all settings</p></li><li><p>In <code class=\"option\">static-tunnels</code> element, all settings.</p></li></ul></div></li><li><p>If a connection profile with the same name has been defined in \n  both the global configuration file and user-specific configuration file, \n  the latter one is used.</p></li><li><a class=\"indexterm\" name=\"id2618272\"></a><p>If the <code class=\"option\">filter-engine</code> settings have been \n  defined in the global configuration file, and the file is valid (not \n  malformed), those settings are used, and any <code class=\"option\">filter-engine</code> \n  settings made in the user-specific configuration file are ignored.\n  </p></li></ul></div><p>If the user-specific configuration file is missing, the Connection Broker \n  will start using the previously read configuration files. However, if \n  a user-specific configuration exists but is malformed, the Connection Broker will not \n  start at all.</p></li></ol></div><p>On Unix, the default configuration file locations are as follows:</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><p>the default configuration:</p><p><code class=\"filename\">/etc/ssh2/ssh-tectia/auxdata/ssh-broker-ng/ssh-broker-config-default.xml</code></p></li><li><p>the global configuration: <code class=\"filename\">/etc/ssh2/ssh-broker-config.xml</code></p></li><li><p>the user-specific configuration: <code class=\"filename\">$HOME/.ssh2/ssh-broker-config.xml</code></p></li><li><p>the XML DTD:</p><p><code class=\"filename\">/etc/ssh2/ssh-tectia/auxdata/ssh-broker-ng/ssh-broker-ng-config-1.dtd</code></p></li></ul></div><p>On Windows, the default configuration file locations are as follows:</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><p>the default configuration:</p><p>\"<code class=\"filename\">C:\\Program Files\\SSH Communications Security\\SSH Tectia\\SSH Tectia AUX\\ssh-broker-ng\\ssh-broker-config-default.xml</code>\"</p></li><li><p>the global configuration:</p><p>\"<code class=\"filename\">C:\\Program Files\\SSH Communications Security\\SSH Tectia\\SSH Tectia Broker\\ssh-broker-config.xml</code>\"</p></li><li><p>the user-specific configuration: \"<code class=\"filename\">%APPDATA%\\SSH\\ssh-broker-config.xml</code>\"</p></li><li><p>the XML DTD:</p><p>\"<code class=\"filename\">C:\\Program Files\\SSH Communications Security\\SSH Tectia\\SSH Tectia AUX\\ssh-broker-ng\\ssh-broker-ng-config-1.dtd</code>\"</p></li></ul></div><p>The following sections describe the options available in the Connection Broker \nconfiguration file.  \nFor more information on the syntax of the configuration file, see\n<span><a href=\"broker-dtd.html\" title=\"Broker Configuration File Syntax\">Broker Configuration File Syntax</a>.</span>\n\n</p></div><div class=\"refsect1\" lang=\"en\"><a name=\"brokerconfig-variables\"></a><h2>Environment Variables</h2><p>Two kinds of environment variables can be used in the Connection Broker \nconfiguration file. In addition to the system-level environment variables, \nyou can use special variables that are SSH Tectia specific. The environment \nvariables take precedence over the special variables. So if an environment \nvariable and a special variable have the same name, the environment variable \nwill be used.</p><p>All alphanumeric characters and the underscore <span><strong class=\"command\">'_'</strong></span> \nsign are allowed in environment variables. The variable name ends to the first \ncharacter that is not allowed.</p><p>You can define for example file or directory paths with environment \nvariables, and they will be expanded to their values as explained below. \n</p><div class=\"variablelist\"><dl><dt><span class=\"term\">%VARIABLENAME%</span></dt><dd><p>Replaced with the value of the environment variable if one \nhas been defined. The variable is matched case-insensitively. If the \nvariable is not defined, the string '<code class=\"option\">%VARIABLENAME%</code>' \nis the result.</p></dd><dt><span class=\"term\">$VARIABLENAME</span></dt><dd><p>Replaced with the value of the environment variable if one \nhas been defined. The variable is matched case-sensitively on Unix and \ncase-insensitively on Windows. If the variable is not defined, it is \nreplaced with an empty string.</p></dd><dt><span class=\"term\">${VARIABLENAME}<em class=\"replaceable\"><code>text</code></em></span></dt><dd><p>Replaced with the value defined for '<code class=\"option\">$VARIABLENAME</code>' \nwith the '<em class=\"replaceable\"><code>text</code></em>' appended to it.</p></dd><dt><span class=\"term\">${VARIABLENAME:-<em class=\"replaceable\"><code>default_value</code></em>}</span></dt><dd><p>Replaced with the value defined for '<code class=\"option\">$VARIABLENAME</code>', or replaced with \nthe '<em class=\"replaceable\"><code>default_value</code></em>' if the variable is not set.</p></dd></dl></div><p><span><strong class=\"command\">The SSH Tectia specific special variables are:</strong></span></p><div class=\"variablelist\"><dl><dt><span class=\"term\">%U or %username%</span></dt><dd><p>Replaced with the currently logged in user name.</p></dd><dt><span class=\"term\">%username-without-domain%</span></dt><dd><p>Replaced with the currently logged in user name in short \nformat, i.e. without the domain part. Available on Windows.</p></dd><dt><span class=\"term\">%G or %groupname%</span></dt><dd><p>Replaced with the group name of the currently logged in \nuser.</p></dd><dt><span class=\"term\">%D or %homedir%</span></dt><dd><p>Replaced with the home directory defined for the currently \nlogged in user.</p></dd><dt><span class=\"term\">%IU or %userid%</span></dt><dd><p>Replaced with the user identifier defined for the currently \nlogged in user.</p></dd><dt><span class=\"term\">%IG or %groupid%</span></dt><dd><p>Replaced with the group identifier defined for the currently \nlogged in user.</p></dd></dl></div><p>The special variables can also be entered using the Unix format, for \nexample, <code class=\"option\">$username</code>.</p></div><div class=\"refsect1\" lang=\"en\"><a name=\"brokerconfig-root\"></a><h2>Document Type Declaration and the Root Element</h2><p>The broker configuration file is a valid XML file and starts with \nthe Document Type Declaration.</p><p>The root element in the configuration file is <code class=\"option\">secsh-broker</code>. \nIt can include <code class=\"option\">general</code>, \n<code class=\"option\">default-settings</code>, \n<code class=\"option\">profiles</code>, \n<code class=\"option\">static-tunnels</code>, \n<code class=\"option\">gui</code>, \n<code class=\"option\">filter-engine</code>, and \n<code class=\"option\">logging</code> elements.</p><p>An example of an empty configuration file is shown below:</p><pre class=\"programlisting\">&lt;!DOCTYPE secsh-broker SYSTEM \"ssh-broker-ng-config-1.dtd\"&gt;\n&lt;secsh-broker version=\"1.0\"&gt;\n  &lt;general /&gt;\n  &lt;default-settings /&gt;\n  &lt;profiles /&gt;\n  &lt;static-tunnels /&gt;\n  &lt;gui /&gt;\n  &lt;filter-engine /&gt; \n  &lt;logging /&gt;\n\n&lt;/secsh-broker&gt;\n</pre><p>On SSH Tectia Client, the <code class=\"option\">filter-engine</code> \nelement is used only when the optional transparent TCP tunneling feature \nhas been installed and activated.</p></div><div class=\"refsect1\" lang=\"en\"><a name=\"id2618749\"></a><h2>The <code class=\"option\">general</code> Element</h2><a class=\"indexterm\" name=\"id2618758\"></a><p>The <code class=\"option\">general</code> element contains settings such as the \ncryptographic library and the key stores to be used.</p><p>The <code class=\"option\">general</code> element can contain zero or one instance \nof the following elements: <code class=\"option\">crypto-lib</code>, <code class=\"option\">cert-\nvalidation</code>, <code class=\"option\">key-stores</code>, <code class=\"option\">user-config-\ndirectory</code>, <code class=\"option\">protocol-parameters</code>; and multiple \n<code class=\"option\">known-hosts</code> elements.</p><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">crypto-lib</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2618820\"></a><a class=\"indexterm\" name=\"id2618829\"></a><a class=\"indexterm\" name=\"id2618836\"></a><a class=\"indexterm\" name=\"id2618843\"></a><a class=\"indexterm\" name=\"id2618853\"></a><a class=\"indexterm\" name=\"id2618862\"></a><a class=\"indexterm\" name=\"id2618869\"></a><p>This element selects the cryptographic library mode to be \n  used. Either the standard version (<code class=\"option\">standard</code>) or the \n  FIPS 140-2 certified version (<code class=\"option\">fips</code>) of the cryptographic\n  library can be used. The library name is given as a value of the \n  <code class=\"option\">mode</code> attribute. By default, standard cryptographic libraries \n  are used.</p><p>FIPS mode will be used if it is so specified either in \n  the global or the user configuration file (or both).</p><pre class=\"programlisting\">&lt;crypto-lib mode=\"standard\" /&gt;\n</pre><p>In the FIPS mode, the cryptographic operations are \n  performed according to the rules of the FIPS 140-2 standard. The FIPS \n  library includes the \n<code class=\"option\">3des-cbc</code>, \n<code class=\"option\">aes128-cbc</code>,\n<code class=\"option\">aes192-cbc</code>,\nand \n<code class=\"option\">aes256-cbc</code> ciphers and the \n<code class=\"option\">hmac-sha1</code> MAC.\n  </p><div class=\"note\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Note\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Note]\" src=\"images/note.gif\"></td><th align=\"left\">Note</th></tr><tr><td align=\"left\" valign=\"top\"><p>Setting the FIPS mode does not prevent using algorithms from \n  the crypto plugins. For example, CryptiCore can be used even when the main \n  cryptographic library is set into the FIPS mode. To enforce that only \n  FIPS-compliant algorithms are used, disable the non-FIPS algorithms \n  from the configuration. \n  <span>See <a href=\"ssh-broker-config.html#element-stb-cipher\"><span><strong class=\"command\">cipher</strong></span></a> \n  and <a href=\"ssh-broker-config.html#element-stb-mac\"><span><strong class=\"command\">mac</strong></span></a>.</span></p></td></tr></table></div><p>For a list of platforms on which the FIPS library has been \n  validated or tested, see <span class=\"emphasis\"><em>SSH Tectia Client/Server Product \n  Description</em></span>. </p></dd><dt><span class=\"term\"><span><strong class=\"command\">cert-validation</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2618995\"></a><a class=\"indexterm\" name=\"id2619005\"></a><a class=\"indexterm\" name=\"id2619012\"></a><a class=\"indexterm\" name=\"id2619021\"></a><p>This element defines public-key infrastructure (PKI) settings \n  used for validating remote server authentication certificates. The \n  element can have the following attributes: <code class=\"option\">end-point-identity-check</code>, \n  <code class=\"option\">default-domain</code>, <code class=\"option\">http-proxy-url</code>, and\n  <code class=\"option\">socks-server-url</code>.</p><a class=\"indexterm\" name=\"id2619050\"></a><a class=\"indexterm\" name=\"id2619059\"></a><p>The <code class=\"option\">end-point-identity-check</code> attribute specifies  \n  whether the client will verify the server's hostname or IP address against \n  the Subject Name or Subject Alternative Name (DNS Address) specified in the \n  server host certificate. The default value is <code class=\"option\">yes</code>.\n  If set to <code class=\"option\">no</code>, the fields in the server host certificate \n  are <span class=\"emphasis\"><em>not</em></span> verified and the certificate is \n  accepted based on the validity period and CRL check only.</p><div class=\"caution\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Caution\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Caution]\" src=\"images/caution.gif\"></td><th align=\"left\">Caution</th></tr><tr><td align=\"left\" valign=\"top\"><p>Setting <code class=\"option\">end-point-identity-check=\"no\"</code> is a security \n  risk. Then anyone with a certificate issued by the same trusted \n  certification authority (CA) that issues the server host certificates can \n  perform a man-in-the-middle attack on the server. </p></td></tr></table></div><a class=\"indexterm\" name=\"id2619104\"></a><a class=\"indexterm\" name=\"id2619114\"></a><p>The <code class=\"option\">default-domain</code> attribute can be used when the \n  end-point identity check is enabled. It specifies the default domain \n  part of the remote system name and it is used if only the base part of \n  the system name is available. The <code class=\"option\">default-domain</code> is \n  appended to the system name if it does not contain a dot \n  (<code class=\"option\">.</code>).</p><p>If the default domain is not specified, the end-point \n  identity check fails, for example, when a user tries to connect to a \n  host \"<code class=\"option\">rock</code>\" giving only the short hostname and the \n  certificate contains the full DNS address \n  \"<code class=\"filename\">rock.example.com</code>\".</p><a class=\"indexterm\" name=\"id2619156\"></a><a class=\"indexterm\" name=\"id2619166\"></a><a class=\"indexterm\" name=\"id2619175\"></a><a class=\"indexterm\" name=\"id2619182\"></a><p>The <code class=\"option\">http-proxy-url</code> attribute defines an HTTP proxy \n  and the <code class=\"option\">socks-server-url</code> attribute defines a SOCKS \n  server for making LDAP or OCSP queries for certificate validity.</p><p>The address of the server is given as the value of the \n  attribute. The format of the address is\n  <code class=\"filename\">socks://username@socks_server:port/network/netmask,network/netmask ...</code> (with a SOCKS server) or\n  <code class=\"filename\">http://username@proxy_server:port/network/netmask,network/netmask ...</code> (with an HTTP proxy).</p><p>For example, to make the SOCKS server use host <code class=\"filename\">socks.ssh.com</code> and \n  port <code class=\"option\">1080</code> for connections outside of networks <code class=\"option\">192.196.0.0</code> (16-bit domain) \n  and <code class=\"option\">10.100.23.0</code> (8-bit domain), and to get these networks connected \n  directly, set <code class=\"option\">socks-server-url</code> as follows:</p><pre class=\"screen\">\"socks://mylogin@socks.ssh.com:1080/192.196.0.0/16,10.100.23.0/24\"</pre><p>The <code class=\"option\">cert-validation</code> element can contain multiple \n  <code class=\"option\">ldap-server</code>, <code class=\"option\">ocsp-responder</code>, \n  <code class=\"option\">crl-prefetch</code> elements, one <code class=\"option\">dod-pki</code> element, and\n  multiple <code class=\"option\">ca-certificate</code> and <code class=\"option\">key-store</code> elements. \n  The elements have to be in the listed order.</p><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">ldap-server</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2619301\"></a><a class=\"indexterm\" name=\"id2619310\"></a><p>This element specifies an LDAP server <code class=\"option\">address</code> and \n    <code class=\"option\">port</code> used for fetching CRLs and/or subordinate CA \n    certificates based on the issuer name of the certificate being \n    validated. Several LDAP servers can be specified by using \n    several <code class=\"option\">ldap-server</code> elements.</p><p>CRLs are automatically retrieved from the CRL distribution \n    point defined in the certificate to be verified if the point \n    exists.</p><p>The default value for <code class=\"option\">port</code> is <code class=\"option\">389</code>.</p></dd><dt><span class=\"term\"><span><strong class=\"command\">ocsp-responder</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2619365\"></a><a class=\"indexterm\" name=\"id2619375\"></a><p>This element specifies an OCSP (Online Certificate Status \n    Protocol) responder service address in URL format with attribute \n    <code class=\"option\">url</code>. Several OCSP responders can be specified by \n    using several <code class=\"option\">ocsp-responder</code> elements.</p><p>If the certificate has a valid Authority Info Access extension \n    with an OCSP Responder URL, it will be used instead of this setting. \n    Note that for the OCSP validation to \n    succeed, both the end-entity certificate and the OCSP Responder \n    certificate must be issued by the same CA. </p><p>The <code class=\"option\">validity-period</code> (in seconds) can be \n    optionally defined.  During this time, new OCSP queries for the same \n    certificate are not made but the old result is used. The default \n    validity period is <code class=\"option\">0</code> (a new query is made every time).</p></dd><dt><span class=\"term\"><span><strong class=\"command\">crl-prefetch</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2619432\"></a><a class=\"indexterm\" name=\"id2619441\"></a><a class=\"indexterm\" name=\"id2619448\"></a><p>This element instructs SSH Tectia Client to periodically download a CRL \n    from the specified URL. The <code class=\"option\">url</code> value can be an LDAP or \n    HTTP URL, or it can refer to a local file. The file format must be either \n    binary DER or base64, PEM is not supported.</p><p>To download CRLs from the local file system, define the file URL in \n    this format:</p><pre class=\"screen\">file:///absolute/path/name</pre><p>To download CRLs from an LDAP server, define the LDAP URL in this format:</p><pre class=\"screen\">ldap://ldap.server.com:389/CN=Root%20CA,OU=certification\n                 %20authorities,DC=company,DC=com?certificaterevocationlist</pre><p>Use the <code class=\"option\">interval</code> attribute to specify how often \n    the CRL is downloaded. The default is <code class=\"option\">3600</code> seconds.</p></dd><dt><span class=\"term\"><span><strong class=\"command\">dod-pki</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2619515\"></a><a class=\"indexterm\" name=\"id2619524\"></a><p>This element defines whether the certificates are required to be \n    compliant with the US Department of Defense Public-Key Infrastructure \n    (DoD PKI). In practise, this means that the Digital Signature bit must be \n    set in the Key Usage of the certificate. The \n    <code class=\"option\">enable</code> attribute can have a value of <code class=\"option\">yes</code> \n    or <code class=\"option\">no</code>. The default is <code class=\"option\">no</code>.</p></dd><dt><span class=\"term\"><span><strong class=\"command\">ca-certificate</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2619566\"></a><a class=\"indexterm\" name=\"id2619576\"></a><p>This element defines a certification authority (CA) used in server \n    authentication. It can have four attributes: <code class=\"option\">name</code>, \n    <code class=\"option\">file</code>, <code class=\"option\">disable-crls</code>, and \n    <code class=\"option\">use-expired-crls</code>.</p><p>The <code class=\"option\">name</code> attribute must contain the name of the CA.</p><p>The element must either contain the path to the X.509 CA \n    certificate file as a value of the <code class=\"option\">file</code> \n    attribute, or include the certificate as a base64-encoded \n    ASCII block.</p><a class=\"indexterm\" name=\"id2619620\"></a><a class=\"indexterm\" name=\"id2619627\"></a><a class=\"indexterm\" name=\"id2619634\"></a><a class=\"indexterm\" name=\"id2619643\"></a><a class=\"indexterm\" name=\"id2619652\"></a><p>CRL checking can be disabled by setting the \n    <code class=\"option\">disable-crls</code> attribute to <code class=\"option\">yes</code>. The default \n    is <code class=\"option\">no</code>.</p><p>Expired CRLs can be used by setting a numeric value (in \n    seconds) for the <code class=\"option\">use-expired-crls</code> attribute. The \n    default is <code class=\"option\">0</code> (do not use expired CRLs).</p></dd><dt><span class=\"term\"><span><strong class=\"command\">key-store</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2619703\"></a><p>This element defines CA certificates stored in an external key \n    store for server authentication. Currently it is used only on z/OS for \n    CA certificates stored in System Authorization Facility (SAF).</p><p>CRL checking can be disabled by setting the \n    <code class=\"option\">disable-crls</code> attribute to <code class=\"option\">yes</code>. The default \n    is <code class=\"option\">no</code>.</p><p>Expired CRLs can be used by setting a numeric value (in \n    seconds) for the <code class=\"option\">use-expired-crls</code> attribute. The \n    default is <code class=\"option\">0</code> (do not use expired CRLs).</p></dd></dl></div><p>An example of a certificate validation configuration is shown below:</p><pre class=\"programlisting\">&lt;cert-validation end-point-identity-check=\"yes\" \n                 default-domain=\"example.com\"\n                 http-proxy-url=\"http://proxy.example.com:8080\"&gt;\n  &lt;ldap-server address=\"ldap://ldap.example.com:389\" /&gt;\n  &lt;ocsp-responder url=\"http://ocsp.example.com:8090\" validity-period=\"0\" /&gt; \n  &lt;crl-prefetch url=\"file:///full.path.to.crlfile\" interval=\"1800\" /&gt;\n  &lt;dod-pki enable=\"no\" /&gt;\n  &lt;ca-certificate name=\"ssh_ca1\"\n                  file=\"ssh_ca1.crt\"\n                  disable-crls=\"no\"\n                  use-expired-crls=\"100\" /&gt;\n&lt;/cert-validation&gt;         \n</pre></dd><dt><a name=\"brokerconfig-keystores\"></a><span class=\"term\"><span><strong class=\"command\">key-stores</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2619809\"></a><a class=\"indexterm\" name=\"id2619818\"></a><p>This element defines settings for user public-key and certificate authentication.</p><p>Under the <code class=\"option\">&lt;general&gt;</code> element, there can be one \n  <code class=\"option\">&lt;key-stores&gt;</code> instance which in turn can have any \n  number of <code class=\"option\">&lt;key-store&gt;</code>, <code class=\"option\">&lt;user-keys&gt;</code>, and\n  <code class=\"option\">&lt;identification&gt;</code> elements, and the order of the elements is free.</p><p>Special variables and environment variables can be used when defining the \n  values for the elements. The following variables can be used and they will be \n  expanded as follows:</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><p><code class=\"option\">%U</code> = <code class=\"option\">%USERNAME%</code> = user name</p></li><li><p><code class=\"option\">%USERNAME-WITHOUT-DOMAIN%</code> = user name without the domain part</p></li><li><p><code class=\"option\">%IU</code> = <code class=\"option\">%USERID%</code> = user ID <span>(not on Windows)</span></p></li><li><p><code class=\"option\">%IG</code> = <code class=\"option\">%GROUPID%</code> = user group ID <span>(not on Windows)</span></p></li><li><p><code class=\"option\">%D</code> = <code class=\"option\">%HOMEDIR%</code> = the user's home directory</p></li><li><p><code class=\"option\">%G</code> = <code class=\"option\">%GROUPNAME%</code> = the name of the user's default group </p></li></ul></div><p>Also environment variables are replaced with their current values. \n   For example it is possible to use strings <code class=\"option\">$HOME</code> or \n   <code class=\"option\">%HOME%</code> to expand to user's home directory (if \n   environment variable <code class=\"option\">HOME</code> is set).</p><div class=\"note\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Note\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Note]\" src=\"images/note.gif\"></td><th align=\"left\">Note</th></tr><tr><td align=\"left\" valign=\"top\"><p>Short alias names (for example, <code class=\"option\">%U</code>) are \n   case-sensitive and long alias names (for example, \n   <code class=\"option\">%USERNAME%</code>) are case-insensitive. </p></td></tr></table></div><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">key-store</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2619978\"></a><p>Each of the <code class=\"option\">key-store</code> elements configures one key \n    store provider. The <code class=\"option\">key-stores/key-store</code> element can take the following \n    attributes: <code class=\"option\">type</code> and <code class=\"option\">init</code>.</p><p>The <code class=\"option\">type</code> attribute is the key store type. \n    The currently supported types are\n    <code class=\"option\">\"entrust\"</code>, \n    <code class=\"option\">\"mscapi\"</code>,  \n    <code class=\"option\">\"pkcs11\"</code>, \n    <code class=\"option\">\"software\"</code>, and \n    <code class=\"option\">\"zos-saf\"</code>.\n    Entrust is supported on Windows, only.\n    </p><p>The <code class=\"option\">init</code> attribute is the initialization info\n    specific to the key-store-provider. The initialization string can contain \n    special strings explained above in <code class=\"option\">key-stores</code>, see\n    <a href=\"ssh-broker-config.html#brokerconfig-keystores\"><span><strong class=\"command\">key-stores</strong></span></a>.</p><p>For key store configuration examples, see \n  <span><a href=\"ssh-broker-config.html#brokerconfig-keystoreexamples\" title=\"Key Store Configuration Examples\">the section called “Key Store Configuration Examples”</a>.</span>\n  \n  </p></dd><dt><span class=\"term\"><span><strong class=\"command\">user-keys</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2620089\"></a><p>The <code class=\"option\">user-keys</code> element can be used to override the \n    default directory for the user keys. The <code class=\"option\">user-keys</code> element \n    can take the following attributes:\n    </p><p>The <code class=\"option\">directory</code> attribute defines the directory where the\n    user private keys are stored. Enter the full path.</p><p>The <code class=\"option\">passphrase-timeout</code> attribute defines the time (in \n    seconds) after which the passphrase-protected private key will time out, \n    and the user must enter the passphrase again. The default is <code class=\"option\">0</code>, \n    meaning that the passphrase does not time out. The value of this element\n    should be longer than the <code class=\"option\">passphrase-idle-timeout</code> value.</p><p>By default, the Connection Broker keeps the passphrase-protected private keys open \n    once the user has entered the passphrase successfully. This can be changed\n    with the passphrase timeout options. When <code class=\"option\">passphrase-timeout</code> \n    is set, the private key stays open (usable without further passphrase prompts) \n    until the timeout expires. The <code class=\"option\">passphrase-timeout</code> attribute \n    sets the hard timeout, that is set only once when the key is opened and will \n    not be reset even if the key is used multiple times. </p><p>The <code class=\"option\">passphrase-idle-timeout</code> attribute defines the time \n    (in seconds) after which the passphrase-protected private key will time out \n    unless the user accesses or uses the key. The <code class=\"option\">passphrase-idle-timeout</code>\n    is reset every time the key is accessed. The default is <code class=\"option\">0</code>, \n    meaning that the passphrase never times out.</p><p>Both of the timeout options can be set simultaneously, but notice \n    that if the idle timeout is set longer than the hard timeout, the idle \n    timeout has no effect.</p></dd><dt><span class=\"term\"><span><strong class=\"command\">identification</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2620196\"></a><p>The <code class=\"option\">identification</code> element can be used to override the \n    default location of the identification file that defines the user keys. \n    The <code class=\"option\">identification</code> element can take the following attributes:\n    </p><p>The <code class=\"option\">file</code> attribute specifies the location of the \n    identification file. Enter the full path.</p><p>The <code class=\"option\">base-path</code> attribute defines the directory where \n    the identification file expects the user private keys to be stored. This \n    element can be used to override the default relative path interpretation of the \n    identification file (paths relative to the identification file directory).\n    </p><p>The <code class=\"option\">passphrase-timeout</code> attribute defines the time \n    (in seconds) after which the user must enter the passphrase again. \n    The default is <code class=\"option\">0</code>, meaning that the passphrase is not \n    re-requested.</p><p>The <code class=\"option\">passphrase-idle-timeout</code> attribute defines a time \n    (in seconds) after which the passphrase times out if there are no user \n    actions. The default is <code class=\"option\">0</code>, meaning that the passphrase does \n    not time out.</p><p>The timeout settings affect only those private keys that are \n    listed in the identification file. </p></dd></dl></div></dd><dt><span class=\"term\"><span><strong class=\"command\">strict-host-key-checking</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2620293\"></a><div class=\"note\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Note\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Note]\" src=\"images/note.gif\"></td><th align=\"left\">Note</th></tr><tr><td align=\"left\" valign=\"top\"><p>This element is deprecated starting from SSH Tectia Client version 6.1.4.</p></td></tr></table></div><p>This element is supported in configuration for backwards \n  compatibility and used only if the <code class=\"option\">policy</code> attribute of \n  the <code class=\"option\">server-authentication-methods/auth-server-publickey</code> \n  element under <code class=\"option\">default-settings</code> or \n  <code class=\"option\">profiles/profile</code> is not defined. In this case, the host \n  key policy is interpreted based on the values of this option and the \n  <code class=\"option\">host-key-always-ask</code> and \n  <code class=\"option\">accept-unknown-host-keys</code> options.\n  <span>See <a href=\"ssh-broker-config.html#default-auth-server-publickey\"><span><strong class=\"command\">auth-server-publickey</strong></span></a> for details.</span>\n  \n  </p></dd><dt><span class=\"term\"><span><strong class=\"command\">host-key-always-ask</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2620366\"></a><div class=\"note\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Note\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Note]\" src=\"images/note.gif\"></td><th align=\"left\">Note</th></tr><tr><td align=\"left\" valign=\"top\"><p>This element is deprecated starting from SSH Tectia Client version 6.1.4.</p></td></tr></table></div><p>This element is supported in configuration for backwards \n  compatibility and used only if the <code class=\"option\">policy</code> attribute of \n  the <code class=\"option\">server-authentication-methods/auth-server-publickey</code> \n  element under <code class=\"option\">default-settings</code> or \n  <code class=\"option\">profiles/profile</code> is not defined. In this case, the host \n  key policy is interpreted based on the values of this option and the \n  <code class=\"option\">strict-host-key-checking</code> and \n  <code class=\"option\">accept-unknown-host-keys</code> options. \n  <span>See <a href=\"ssh-broker-config.html#default-auth-server-publickey\"><span><strong class=\"command\">auth-server-publickey</strong></span></a> for details.</span>\n  \n  </p></dd><dt><span class=\"term\"><span><strong class=\"command\">accept-unknown-host-keys</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2620437\"></a><div class=\"note\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Note\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Note]\" src=\"images/note.gif\"></td><th align=\"left\">Note</th></tr><tr><td align=\"left\" valign=\"top\"><p>This element is deprecated starting from SSH Tectia Client version 6.1.4.</p></td></tr></table></div><p>This element is supported in configuration for backwards \n  compatibility and used only if the <code class=\"option\">policy</code> attribute of \n  the <code class=\"option\">server-authentication-methods/auth-server-publickey</code> \n  element under <code class=\"option\">default-settings</code> or \n  <code class=\"option\">profiles/profile</code> is not defined. In this case, the host \n  key policy is interpreted based on the values of this option and the \n  <code class=\"option\">strict-host-key-checking</code> and \n  <code class=\"option\">host-key-always-ask</code> options. \n  <span>See <a href=\"ssh-broker-config.html#default-auth-server-publickey\"><span><strong class=\"command\">auth-server-publickey</strong></span></a> for details.</span>\n  \n  </p><div class=\"caution\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Caution\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Caution]\" src=\"images/caution.gif\"></td><th align=\"left\">Caution</th></tr><tr><td align=\"left\" valign=\"top\"><p>Consider carefully before enabling this option. \n  Disabling the host-key checks makes you vulnerable to man-in-the-middle attacks.</p></td></tr></table></div></dd><dt><a name=\"element-user-config-directory\"></a><span class=\"term\"><span><strong class=\"command\">user-config-directory</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2620523\"></a><a class=\"indexterm\" name=\"id2620532\"></a><a class=\"indexterm\" name=\"id2620539\"></a><p>This element can be used to change the storage location of the \n  user-specific configuration files away from the default which is \n  <code class=\"filename\">$HOME/.ssh2/</code> on Unix, and \n  \"<code class=\"filename\">%APPDATA%\\SSH</code>\" on Windows. It can be used for example, \n  if you want to store all client-side configurations to a centralized \n  location.</p><p>When this element is added to the global configuration file, the Connection Broker \n  reads the following user-specific files in the defined location:</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><p>user's key file</p></li><li><p>user's own configuration files</p></li><li><p>user's known host keys</p></li><li><p>user's random_seed file</p></li><li><p>Windows GUI profile files: <code class=\"filename\">1.ssh2, 2.ssh2</code></p></li><li><p>SSH_SFTP_BATCH_FILE variable of the <code class=\"option\">sftpg3</code> client</p></li><li><p>In SSH Tectia MFT Events, the events logging database and journaling file \n    <code class=\"filename\">(/home/.ssh2/smtf/)</code></p></li></ul></div><div class=\"note\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Note\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Note]\" src=\"images/note.gif\"></td><th align=\"left\">Note</th></tr><tr><td align=\"left\" valign=\"top\"><p>Stop all existing SSH applications before modifying the \n  <code class=\"option\">user-config-directory</code> setting in the Connection Broker \n  configuration. </p><p>The <code class=\"option\">user-config-directory</code> setting affects all SSH Tectia \n  products running on the same host, for example SSH Tectia Client, SSH Tectia ConnectSecure and SSH Tectia MFT Events.</p></td></tr></table></div><p>The <code class=\"option\">user-config-directory</code> option takes an attribute \n  <code class=\"option\">path</code>, whose value can be either a directory path or one of \n  the following variables:</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><p><code class=\"option\">%U</code>: The user name.</p></li><li><p><code class=\"option\">%username%</code>: The user name.</p></li><li><p><code class=\"option\">%username-without-domain%</code>: The user name without domain definition.</p></li><li><p><code class=\"option\">%D</code>: The user's home directory.</p></li><li><p><code class=\"option\">%homedir%</code>: The user's home directory.</p></li><li><p><code class=\"option\">%USER_CONFIG_DIRECTORY%</code>: The user-specific configuration directory.</p></li><li><p><code class=\"option\">%IU</code>: The user's ID, on Unix only</p></li><li><p><code class=\"option\">%userid%</code>: The user's ID, on Unix only</p></li><li><p><code class=\"option\">%IG</code>: The group ID, on Unix only</p></li><li><p><code class=\"option\">%groupid%</code>: The group ID, on Unix only</p></li></ul></div><p>The default is <code class=\"option\">%USER_CONFIG_DIRECTORY%</code>. This variable \nrefers to the user-specific configuration directory: <code class=\"filename\">$HOME/.ssh2</code> \non Unix, and <code class=\"filename\">%APPDATA%\\SSH</code> on Windows. \nThe <code class=\"option\">%USER_CONFIG_DIRECTORY%</code> variable cannot be used in \nother settings.</p></dd><dt><a name=\"element-file-access-control\"></a><span class=\"term\"><span><strong class=\"command\">file-access-control</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2620777\"></a><a class=\"indexterm\" name=\"id2620787\"></a><p>On Unix, this element can be used to enable checking of file access \n  permissions defined for the global and user-specific configuration files, \n  and for the private keys files. If the permissions are not as expected, the \n  Connection Broker will refuse to start, or to use certain private keys.</p><p>By default this setting is disabled. On Windows, this element has no effect.</p><p>The file permissions are checked differently, if the \n  <code class=\"option\">file-access-control</code> element is set in both the global and user \n  configuration files, or just in one of them. See the following table for details:\n  </p><div class=\"table\"><a name=\"id2620817\"></a><p class=\"title\"><b>Table A.1. Different file-access-control effects</b></p><table summary=\"Different file-access-control effects\" border=\"1\"><colgroup><col align=\"left\"><col align=\"left\"><col align=\"left\"><col align=\"left\"><col align=\"left\"></colgroup><thead><tr><th bgcolor=\"#EEEEEE\" colspan=\"2\" align=\"left\">Setting in:</th><th colspan=\"3\" align=\"left\">Permissions checked in:</th></tr><tr><th bgcolor=\"#EEEEEE\" align=\"left\">Global config </th><th bgcolor=\"#EEEEEE\" align=\"left\">User config </th><th align=\"left\">Global config</th><th align=\"left\">User config</th><th align=\"left\">Private key files</th></tr></thead><tbody><tr><td bgcolor=\"#EEEEEE\" align=\"left\">yes</td><td bgcolor=\"#EEEEEE\" align=\"left\">yes</td><td align=\"left\">Checked</td><td align=\"left\">Checked</td><td align=\"left\">Checked</td></tr><tr><td bgcolor=\"#EEEEEE\" align=\"left\">yes</td><td bgcolor=\"#EEEEEE\" align=\"left\">-</td><td align=\"left\">Checked</td><td align=\"left\">Checked</td><td align=\"left\">Checked</td></tr><tr><td bgcolor=\"#EEEEEE\" align=\"left\">-</td><td bgcolor=\"#EEEEEE\" align=\"left\">yes</td><td align=\"left\">Not checked</td><td align=\"left\">Checked</td><td align=\"left\">Checked</td></tr><tr><td bgcolor=\"#EEEEEE\" align=\"left\">yes</td><td bgcolor=\"#EEEEEE\" align=\"left\">no</td><td align=\"left\">Checked</td><td align=\"left\">Checked</td><td align=\"left\">Not checked</td></tr><tr><td bgcolor=\"#EEEEEE\" align=\"left\">no</td><td bgcolor=\"#EEEEEE\" align=\"left\">yes</td><td align=\"left\">Not checked</td><td align=\"left\">Checked</td><td align=\"left\">Checked</td></tr><tr><td bgcolor=\"#EEEEEE\" align=\"left\">no / -</td><td bgcolor=\"#EEEEEE\" align=\"left\">no / -</td><td align=\"left\">no checking</td><td align=\"left\">no checking</td><td align=\"left\">no checking</td></tr></tbody></table></div><p>In the table: <code class=\"code\">No</code> means <code class=\"option\">file-access-control enable=\"no\"</code>. \nSign - means that the setting is not included in the file at all. \n</p><p>When the file access permissions are checked, the controls are applied \nas follows:</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><p>Expected permissions for the global configuration file: \n  read rights for all, write rights only for the user and group. \n  If the permissions are any wider, the Connection Broker will not start.</p></li><li><p>Expected permissions for the user configuration file: \n  only the user has read and write rights. If the permissions are any wider, \n  the Connection Broker will not start.</p></li><li><p>Expected permissions for the private key files:  \n  only the user has read and write rights. If the permissions \n  are any wider, keys that do not pass the check will be ignored.</p></li></ul></div></dd><dt><a name=\"element-protocol-parameters-broker\"></a><span class=\"term\"><span><strong class=\"command\">protocol-parameters</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2621148\"></a><p>This element contains protocol-specific values that can be used to \ntune the performance. It should be used only in very specific environments. \nIn normal situations the default values should be used.</p><p>The <code class=\"option\">threads</code> attribute can be used to define the \nnumber of threads the protocol library uses (fast path dispatcher threads). \nThis attribute can be used to allow more concurrent cryptographic transforms \nin the protocol on systems with more than four CPUs. If the value is set to \nzero, the default value is used.</p><p>Example of the <code class=\"option\">threads</code> attribute:</p><pre class=\"programlisting\">&lt;protocol-parameters threads=\"8\" /&gt;\n</pre></dd><dt><a name=\"element-known-hosts\"></a><span class=\"term\"><span><strong class=\"command\">known-hosts</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2621245\"></a><a class=\"indexterm\" name=\"id2621254\"></a><a class=\"indexterm\" name=\"id2621261\"></a><p>This element can be used to specify locations for storing the host \n  keys of known server hosts, and to define the storage format of the host \n  key files. If no <code class=\"option\">known-hosts</code> directories are specified, \n  the known host keys are stored to the default directories. <span>See <a href=\"ssh-broker-g3.html#ssh-broker-g3-files\" title=\"Files\">the section called “Files”</a> for \n  the default locations.</span> On z/OS (only), this element can contain \n  <code class=\"option\">key-store</code> elements.</p><p>This element can be used:</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><p>To specify non-default directories that contain the \n  public-key data or public-key files of known server hosts.</p></li><li><p>To specify a non-default location for OpenSSH-style \n  known_hosts files that contain the public-key data of known server \n  hosts.</p></li><li><p>(<span class=\"emphasis\"><em>On z/OS</em></span>) To specify a SAF key store \n  that contains the certificates of known server hosts.</p></li></ul></div><p>The server host keys are searched in the <code class=\"option\">known-hosts</code> \n  paths in the order they are specified in the configuration. The settings \n  of the last defined <code class=\"option\">known-hosts</code> element are used when \n  storing new host keys.</p><p>If you define any <code class=\"option\">known-hosts</code> file settings, the \n  default OpenSSH files will be overridden. So if you wish to make the Connection Broker \n  use both the default OpenSSH locations and other locations specified in \n  the configuration, you need to specify all the locations separately. \n  </p><p>You can define several <code class=\"option\">known-hosts</code> elements, and \n  each of them can contain one or several attributes: <code class=\"option\">path</code>, \n  <code class=\"option\">directory</code>, <code class=\"option\">file</code> and \n  <code class=\"option\">filename-format</code>. </p><p>The <code class=\"option\">path</code> attribute requires a full path to the \n  known-hosts file or directory as the value. For example:</p><pre class=\"programlisting\">&lt;known-hosts path=\"/u/username/.ssh/known_hosts\" /&gt;\n&lt;known-hosts path=\"/etc/ssh2/hostkeys\" /&gt;\n&lt;known-hosts path=\"/u/username/.ssh2/hostkeys\" /&gt;\n&lt;known-hosts path=\"/h/username/hostkeys\" filename-format=\"plain\" /&gt;\n</pre><p>The <code class=\"option\">directory</code> attribute is used to define that \n  known host keys are saved to a non-default directory. Enter the complete \n  path to the directory as the value. If the defined directory does not \n  exist, it will be created during the first connection attempt. If a file \n  is found in its place, the connection will be made but the host key will \n  not be stored, and the user gets a warning about it. The \n  <code class=\"option\">filename-format</code> attribute can be used together with the \n  <code class=\"option\">directory</code> setting to define in which format the host key\n  files will be stored. Example of the <code class=\"option\">directory</code> attribute:</p><pre class=\"programlisting\">&lt;known-hosts directory=\"&lt;path_to_dir&gt;/MyKEYS\" \n             filename-format=\"plain\" /&gt;\n</pre><p>The <code class=\"option\">path</code> or <code class=\"option\">directory</code> (whichever \n  is present) defined in the last <code class=\"option\">known-hosts</code> element in \n  the configuration file will be used when storing new known host keys. If \n  both attributes are present in the last <code class=\"option\">known-hosts</code> \n  element, the location specified in the <code class=\"option\">directory</code> \n  attribute will be used.</p><p>The <code class=\"option\">file</code> attribute is used to point to an \n  OpenSSH-style known_hosts file. Enter the complete path to the file as \n  the value. If a directory is found in its place, it is considered an \n  error, and the connection attempt will fail. In case the \n  <code class=\"option\">known-hosts</code> element only contains the <code class=\"option\">file</code> \n  attribute, and the defined OpenSSH known_hosts file exists, the received \n  host keys are searched first in the defined file, and if not found \n  there, the search continues in the default Tectia-specific locations. \n  </p><p>Example of the <code class=\"option\">file</code> attribute:</p><pre class=\"programlisting\">&lt;known-hosts file=\"&lt;path_to_file&gt;/.ssh2/openSSH_keys\" /&gt;\n</pre><p>An empty <code class=\"option\">file</code> or <code class=\"option\">path</code> attribute \n  will disable the handling of the OpenSSH known_hosts file:</p><pre class=\"programlisting\">&lt;known-hosts file=\"\" /&gt;\nor\n&lt;known-hosts path=\"\" /&gt;\n</pre><p>The <code class=\"option\">filename-format</code> attribute defines the format in \n  which new host key files are stored. The <code class=\"option\">filename-format</code> \n  attribute is only relevant for the last specified \n  <code class=\"option\">known-hosts</code> element and for the default directory.</p><p>The <code class=\"option\">filename-format</code> attribute takes the values: \n  <code class=\"option\">hash</code> (default), <code class=\"option\">plain</code>, and \n  <code class=\"option\">default</code> (equals to hash). </p><p>With value <code class=\"option\">hash</code>, the host key files will be stored \n  in format: <code class=\"option\">keys_&lt;hash&gt;</code>, for example \n  \"<code class=\"option\">keys_182166d2efe5a134d3fb948646e0b48f780bff6c</code>\". </p><p>With value <code class=\"option\">plain</code>, the file name format will be \n  <code class=\"filename\">key_&lt;port&gt;_&lt;hostname&gt;.pub</code>, where \n  &lt;port&gt; is the port the Secure Shell server is running on and \n  &lt;host&gt; is the hostname you use when connecting to the server; for \n  example \"<code class=\"filename\">key_22_my.example.com.pub</code>\".</p><p>Setting <code class=\"option\">&lt;known-hosts filename-format=\"plain\" /&gt;</code> \n  changes the storage format of host key files for the next \n  <code class=\"option\">known-hosts</code> elements or for the default storage location \n  if no other <code class=\"option\">known-hosts</code> elements are present.</p><p>The <code class=\"option\">filename-format=\"default\"</code> alternative can be \n  used as the last option when the same <code class=\"option\">known-hosts</code> element \n  is used to define several locations for the host keys some of which store \n  the keys in plain format.</p><p>For more information on the host key storage \n  formats, see <a href=\"hostkey-storage-formats.html\" title=\"Host Key Storage Formats\">Host Key Storage Formats</a>.</p><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">key-store</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2621649\"></a><p>This element defines an external key store for certificates of known \n    server hosts. Currently it is used only on z/OS for server certificates \n    stored in System Authorization Facility (SAF).</p></dd></dl></div></dd><dt><span class=\"term\"><span><strong class=\"command\">extended</strong></span></span></dt><dd><p>This element is reserved for future use. </p></dd></dl></div><div class=\"refsect2\" lang=\"en\"><a name=\"brokerconfig-keystoreexamples\"></a><h3>Key Store Configuration Examples</h3><a class=\"indexterm\" name=\"id2621699\"></a><p><span><strong class=\"command\">Example with Software Provider</strong></span></p><a class=\"indexterm\" name=\"id2621713\"></a><a class=\"indexterm\" name=\"id2621720\"></a><a class=\"indexterm\" name=\"id2621726\"></a><a class=\"indexterm\" name=\"id2621733\"></a><a class=\"indexterm\" name=\"id2621740\"></a><p>The software provider handles key pairs stored on disk in standard \nSecure Shell v2 or legacy OpenSSH formats and X.509 certificates stored in \nnative X.509, PKCS#7, and PKCS#12 formats.</p><p>To add a single key file (for example, <code class=\"filename\">/u/exa/keys/enigma</code> \nand <code class=\"filename\">/etc/my_key</code>), specify both the private key file and the \npublic key file:</p><pre class=\"programlisting\">&lt;key-stores&gt;\n  &lt;key-store type=\"software\" \n             init=\"key_files(/u/exa/keys/enigma.pub,/u/exa/keys/enigma)\" /&gt;\n  &lt;key-store type=\"software\" \n             init=\"key_files(/etc/my_key.pub,/etc/my_key)\" /&gt;\n&lt;/key-stores&gt;\n</pre><p>To add all keys from a specific directory (for example all keys \nfrom <code class=\"filename\">/u/exa/keys</code> and <code class=\"filename\">/etc/keys</code>):</p><pre class=\"programlisting\">&lt;key-stores&gt;\n  &lt;key-store type=\"software\" \n             init=\"directory(path(/u/exa/keys))\" /&gt;\n  &lt;key-store type=\"software\" \n             init=\"directory(path(/etc/keys))\" /&gt;\n&lt;/key-stores&gt;\n</pre><p><span><strong class=\"command\">Example with Entrust Provider</strong></span></p><a class=\"indexterm\" name=\"id2621820\"></a><p>The Entrust provider handles keys and certificates stored in \nthe proprietary Entrust format. You should provide the initialization file \nand the profile-specific file for the Entrust provider. For example:</p><pre class=\"programlisting\">&lt;key-stores&gt;\n  &lt;key-store type=\"entrust\" \n             init=\"ini-file(/etc/entrust.ini),profile-file(/etc/profile.epf)\" /&gt;\n&lt;/key-stores&gt;\n</pre><p><span><strong class=\"command\">Example with PKCS#11 Provider</strong></span></p><a class=\"indexterm\" name=\"id2621857\"></a><p>The PKCS#11 provider handles keys and certificates \nstored in PKCS#11 tokens (for example, smart cards or USB tokens).</p><p>Specify the dynamic library path for the PKCS provider \nand all or a specific slot. For example, with all slots:</p><pre class=\"programlisting\">&lt;key-stores&gt;\n  &lt;key-store type=\"pkcs11\" init=\"dll(/usr/lib/pkcs.so),slots(all)\" /&gt;\n&lt;/key-stores&gt;\n</pre><p>For example, with one slot named <code class=\"option\">sesam</code>:</p><pre class=\"programlisting\">&lt;key-stores&gt;\n  &lt;key-store type=\"pkcs11\" init=\"dll(/usr/local/lib/pkcs.so),slots(sesam)\" /&gt;\n&lt;/key-stores&gt;\n</pre><a class=\"indexterm\" name=\"id2621911\"></a><a class=\"indexterm\" name=\"id2621920\"></a></div></div><div class=\"refsect1\" lang=\"en\"><a name=\"brokerconfig-default\"></a><h2>The <code class=\"option\">default-settings</code> Element</h2><a class=\"indexterm\" name=\"id2621950\"></a><p>The <code class=\"option\">default-settings</code> element defines the default \nconnection-related settings. Profile-specific settings can override \nthese settings. \n<span>See <a href=\"ssh-broker-config.html#brokerconfig-profiles\" title=\"The profiles Element\">the section called “The <code class=\"option\">profiles</code> Element”</a>.</span>\n</p><p>The <code class=\"option\">default-settings</code> element can contain zero or one \ninstance of the following elements in the listed order: \n<code class=\"option\">ciphers</code>, <code class=\"option\">macs</code>, <code class=\"option\">transport-distribution</code>, \n<code class=\"option\">rekey</code>, <code class=\"option\">authentication-methods</code>, \n<code class=\"option\">hostbased-default-domain</code>, <code class=\"option\">compression</code>, \n<code class=\"option\">proxy</code>, <code class=\"option\">idle-timeout</code>, \n<code class=\"option\">tcp-connect-timeout</code>, <code class=\"option\">keepalive-interval</code>,\n<code class=\"option\">exclusive-connection</code>, <code class=\"option\">server-banners</code>, \n<code class=\"option\">forwards</code>, <code class=\"option\">extended</code>, <code class=\"option\">remote-environment</code>,\n<code class=\"option\">server-authentication-methods</code>,\n<code class=\"option\">authentication-success-message</code>,\n<code class=\"option\">sftpg3-mode</code>, <code class=\"option\">terminal-selection</code>, \n<code class=\"option\">terminal-bell</code>, <code class=\"option\">close-window-on-disconnect</code>,\n<code class=\"option\">quiet-mode</code>, and \n<code class=\"option\">checksum</code>.</p><p>The <span><strong class=\"command\">default-settings</strong></span> element can take one attribute:</p><p>The <code class=\"option\">user</code> attribute can be used to define a default \nuser name to be used when connecting to remote servers. The value of the \n<code class=\"option\">user</code> attribute can be one of the following:</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><p>A generic user name that will be used in connections unless another \n  user name is specified in the connection profile settings or in the \n  connection attempt. Note that the user name is treated case sensitively. \n  </p></li><li><p>\"<code class=\"option\">%USERNAME%</code>\" can be used to apply the \n  user name of the currently logged in user. </p></li><li><p>In case this option is used but left empty, the Connection Broker \n  will prompt the user for a user name.</p></li></ul></div><p>The <span><strong class=\"command\">default-settings</strong></span> element can contain the \nfollowing elements:</p><div class=\"variablelist\"><dl><dt><a name=\"default-ciphers\"></a><span class=\"term\"><span><strong class=\"command\">ciphers</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2622156\"></a><p>This element defines the ciphers that the client will propose to \n  the server. The <code class=\"option\">ciphers</code> element can contain multiple \n  <code class=\"option\">cipher</code> elements. </p><p>The ciphers are tried in the order they are specified.</p><p>With SSH Tectia Server for Linux on IBM System z, the client tools will \n  automatically use hardware acceleration (CPACF), if it is available, on \n  cryptographic operations with the 3DES and AES algorithms.</p><div class=\"variablelist\"><dl><dt><a name=\"element-stb-cipher\"></a><span class=\"term\"><span><strong class=\"command\">cipher</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2622215\"></a><a class=\"indexterm\" name=\"id2622224\"></a><p>This element selects a cipher <code class=\"option\">name</code> that the client \n    requests for data encryption.</p><p>The supported ciphers are\n<code class=\"option\">3des-cbc</code>,\n<code class=\"option\">aes128-cbc</code>,\n<code class=\"option\">aes192-cbc</code>,\n<code class=\"option\">aes256-cbc</code>,\n<code class=\"option\">aes128-ctr</code>,\n<code class=\"option\">aes192-ctr</code>,\n<code class=\"option\">aes256-ctr</code>,\n<code class=\"option\">arcfour</code>,\n<code class=\"option\">blowfish-cbc</code>,\n<code class=\"option\">twofish-cbc</code>,\n<code class=\"option\">twofish128-cbc</code>,\n<code class=\"option\">twofish192-cbc</code>,\n<code class=\"option\">twofish256-cbc</code>,\n\n<span><code class=\"option\">crypticore128@ssh.com</code>, </span>\n<code class=\"option\">seed-cbc@ssh.com</code>,\nand\n<code class=\"option\">none</code> (no encryption).</p><a class=\"indexterm\" name=\"id2622308\"></a><p>The default ciphers used by the Connection Broker are, in order: \n<span><code class=\"option\">crypticore128@ssh.com</code> (on Windows and Linux x86), </span>\n<code class=\"option\">aes128-cbc</code>, \n<code class=\"option\">aes192-cbc</code>, \n<code class=\"option\">aes256-cbc</code>,\n<code class=\"option\">aes128-ctr</code>, \n<code class=\"option\">aes192-ctr</code>, \n<code class=\"option\">aes256-ctr</code>,\n<code class=\"option\">3des</code>, and \n<code class=\"option\">seed-cbc@ssh.com</code>.</p><p>The ciphers that can operate in the FIPS mode are\n<code class=\"option\">aes128-cbc</code>,\n<code class=\"option\">aes192-cbc</code>,\n<code class=\"option\">aes256-cbc</code>,\nand \n<code class=\"option\">3des-cbc</code>.</p></dd></dl></div><pre class=\"programlisting\">&lt;ciphers&gt;\n  &lt;cipher name=\"aes128-cbc\" /&gt;\n  &lt;cipher name=\"3des-cbc\" /&gt;\n&lt;/ciphers&gt;\n</pre></dd><dt><a name=\"default-macs\"></a><span class=\"term\"><span><strong class=\"command\">macs</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2622407\"></a><p>This element defines the MACs that the client will propose to \n  the server. The <code class=\"option\">macs</code> element can contain multiple \n  <code class=\"option\">mac</code> elements. </p><p>With SSH Tectia Server for Linux on IBM System z, the client tools will \n  automatically use hardware acceleration (CPACF), if it is available, on \n  cryptographic operations with the HMAC-SHA1 algorithms.</p><p>The MACs are tried in the order they are specified.</p><div class=\"variablelist\"><dl><dt><a name=\"element-stb-mac\"></a><span class=\"term\"><span><strong class=\"command\">mac</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2622464\"></a><a class=\"indexterm\" name=\"id2622473\"></a><p>This element selects a MAC <code class=\"option\">name</code> that the client \n    requests for data integrity verification.</p><p>The supported MAC algorithms are \n<code class=\"option\">hmac-md5</code>,\n<code class=\"option\">hmac-md5-96</code>, \n<code class=\"option\">hmac-sha1</code>, \n<code class=\"option\">hmac-sha1-96</code>, \n<span><code class=\"option\">crypticore-mac@ssh.com</code>, </span>\nand \n<code class=\"option\">none</code> (no data integrity verification).</p><p>The default MACs used by the Connection Broker are, in order: \n<span><code class=\"option\">crypticore-mac@ssh.com</code> (on Windows and Linux x86), \n<code class=\"option\">hmac-md5</code>, and <code class=\"option\">hmac-sha1</code>.</span>\n\n</p><a class=\"indexterm\" name=\"id2622539\"></a><p>The <code class=\"option\">hmac-sha1</code> algorithm can operate in the FIPS mode.</p></dd></dl></div><pre class=\"programlisting\">&lt;macs&gt;\n  &lt;mac name=\"hmac-sha1\" /&gt;\n&lt;/macs&gt;\n</pre></dd><dt><a name=\"default-transport-distribution\"></a><span class=\"term\"><span><strong class=\"command\">transport-distribution</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2622587\"></a><a class=\"indexterm\" name=\"id2622597\"></a><p>This setting defines the number of transport channels used \n  by the Secure Shell connection. Using more than one transport may \n  increase the throughput over low bandwidth connections.</p><p>The number of transports is given as value of the \n  <code class=\"option\">num-transports</code> attribute. Currently, a value of 1 to 8 \n  transports is supported. On Unix, the default is <code class=\"option\">1</code> transport.\n  <span>On Windows, the default is <code class=\"option\">2</code> transports.</span></p><pre class=\"programlisting\">&lt;transport-distribution num-transports=\"1\" /&gt;\n</pre></dd><dt><a name=\"default-rekey\"></a><span class=\"term\"><span><strong class=\"command\">rekey</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2622657\"></a><a class=\"indexterm\" name=\"id2622666\"></a><p>This element specifies the number of transferred <code class=\"option\">bytes</code> \n  after which the key exchange is done again. The value <code class=\"option\">\"0\"</code> \n  turns rekey requests off. This does not prevent the server from requesting \n  rekeys, however. The default is 1000000000 (1 GB). </p><pre class=\"programlisting\">&lt;rekey bytes=\"1000000000\" /&gt;\n</pre></dd><dt><a name=\"default-authentication-methods\"></a><span class=\"term\"><span><strong class=\"command\">authentication-methods</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2622711\"></a><a class=\"indexterm\" name=\"id2622721\"></a><p>This element specifies the authentication methods that are requested \n  by the client-side components. The <code class=\"option\">authentication-methods</code> \n  element can contain one of each: <code class=\"option\">auth-hostbased</code>, \n  <code class=\"option\">auth-password</code>, <code class=\"option\">auth-publickey</code>, \n  <code class=\"option\">auth-gssapi</code>, and <code class=\"option\">auth-keyboard-interactive</code>. \n  Alternatively, you can specify multiple <code class=\"option\">authentication-method</code> \n  elements. The order of these elements is free.</p><p>The authentication methods are tried in the order the \n  <code class=\"option\">auth-*</code> or <code class=\"option\">authentication-method</code> elements are \n  listed. This means that the least interactive methods should be placed \n  first.</p><p>When several interactive authentication methods are defined as \n  allowed, SSH Tectia Client will alternate between the methods and offers each \n  of them in turn to the server in case the previous method failed.</p><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">authentication-method</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2622796\"></a><p>This element specifies an authentication method <code class=\"option\">name</code>. \n    It is included for backwards compatibility. Use the <code class=\"option\">auth-*</code> \n    elements instead.</p><p>The allowed authentication method names are: \n    <code class=\"option\">gssapi-with-mic</code>, <code class=\"option\">publickey</code>, \n    <code class=\"option\">keyboard-interactive</code>, <code class=\"option\">password</code>, and \n    <code class=\"option\">hostbased</code>.</p><p>SSH Tectia Client supports host-based authentication only on \n    Unix platforms.</p><pre class=\"programlisting\">&lt;authentication-methods&gt;\n  &lt;authentication-method name=\"hostbased\" /&gt;\n  &lt;authentication-method name=\"gssapi-with-mic\" /&gt;\n  &lt;authentication-method name=\"publickey\" /&gt;\n  &lt;authentication-method name=\"keyboard-interactive\" /&gt;\n  &lt;authentication-method name=\"password\" /&gt;\n&lt;/authentication-methods&gt;\n</pre></dd><dt><span class=\"term\"><span><strong class=\"command\">auth-hostbased</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2622878\"></a><p>This element specifies that host-based authentication will be used.</p><p>The <code class=\"option\">auth-hostbased</code> element can include a \n    <code class=\"option\">local-hostname</code> element.</p><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">local-hostname</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2622916\"></a><p>This element specifies the local hostname, as the value of the \n      <code class=\"option\">name</code> attribute, that is advertised to the remote \n      server during host-based authentication.</p><p>The remote server can use the client host name as a hint when \n      locating the public key for the client host. This information is not \n      significant to the authentication result, but makes it faster to find \n      the relevant client host key, if the server has such a big storage of \n      host identities, that trying them all would be infeasible.</p></dd></dl></div></dd><dt><span class=\"term\"><span><strong class=\"command\">auth-password</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2622961\"></a><p>This element specifies that password authentication will be used.</p></dd><dt><span class=\"term\"><span><strong class=\"command\">auth-publickey</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2622988\"></a><p>This element specifies that public-key authentication will be used.</p><p>The <code class=\"option\">auth-publickey</code> element can include a \n    <code class=\"option\">key-selection</code> element.</p><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">key-selection</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2623027\"></a><p>This element specifies the key selection policy the client uses when \n      proposing user public keys to the server. The <code class=\"option\">policy</code> \n      attribute can take the values <code class=\"option\">automatic</code> (default) and \n      <code class=\"option\">interactive-shy</code>.</p><p>In the <code class=\"option\">automatic</code> mode, the client tries keys \n      in the following order:</p><div class=\"orderedlist\"><ol type=\"1\"><li><p>Keys with public key available and private key without \n      a passphrase (no user interaction)</p></li><li><p>Keys with public key available but private key behind \n      a passphrase (one passphrase query)</p></li><li><p>Keys that need a passphrase to get the public key but \n      private key without passphrase (one user query for each key which is \n      considered and proposed to server, but no user interaction for actual \n      public-key login)</p></li><li><p>The rest of the keys, that is, keys that need a \n      passphrase to get the public key and also to get the private key \n      </p></li></ol></div><p>In the <code class=\"option\">interactive-shy</code> mode, the client does \n      not try any keys automatically, but it prompts the user to select the \n      key from a list of available keys. If the authentication with the \n      selected key fails, the client will prompt the user again, removing \n      the already tried key(s) from the list. If there is only one key \n      candidate available, the key will be tried automatically without \n      asking the user.</p><p>The <code class=\"option\">key-selection</code> element can include a \n      <code class=\"option\">public-key</code> element.</p><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">public-key</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2623135\"></a><p>This element can be used to specify that only plain public \n        keys or only certificates are tried during public-key \n        authentication. The <code class=\"option\">type</code> attribute can take the \n        values <code class=\"option\">plain</code> and <code class=\"option\">certificate</code>. The \n        default is to try both plain public keys and certificates.</p></dd></dl></div></dd></dl></div></dd><dt><span class=\"term\"><span><strong class=\"command\">auth-keyboard-interactive</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2623183\"></a><p>This element specifies that keyboard-interactive methods will be used in \n    authentication.\n    </p></dd><dt><span class=\"term\"><span><strong class=\"command\">auth-gssapi</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2623211\"></a><p>This element specifies that GSSAPI will be used in authentication.\n    </p><p>The <code class=\"option\">auth-gssapi</code> element can take the following attributes:</p><a class=\"indexterm\" name=\"id2623232\"></a><a class=\"indexterm\" name=\"id2623242\"></a><a class=\"indexterm\" name=\"id2623251\"></a><p>The <code class=\"option\">dll-path</code> attribute specifies where the \n    necessary GSSAPI libraries are located. If this attribute is not \n    specified, the libraries are searched for in a number of common \n    locations. The full path to the libraries should be given, for example, \n    <code class=\"filename\">\"/usr/lib/libkrb5.so,/usr/lib/libgssapi_krb5.so\"</code>.\n    </p><p>On AIX, the <code class=\"option\">dll-path</code> should include the archive file, \n    if applicable, for example,\n    <code class=\"filename\">\"&lt;path&gt;/libgssapi_krb5.a(libgssapi_krb5.a.so)\"</code>. \n    The <code class=\"option\">archive(shared_object)</code> syntax is not necessary if \n    the library is a shared object or has been extracted from the shared \n    object.</p><p>On Windows, the <code class=\"option\">dll-path</code> attribute is \n    ignored. SSH Tectia Client locates the correct DLL automatically.</p><p>The <code class=\"option\">allow-ticket-forwarding</code> attribute defines \n    whether SSH Tectia Client allows forwarding the Kerberos ticket over \n    several connections. The attribute can have a value of \n    <code class=\"option\">yes</code> or <code class=\"option\">no</code>. The default is \n    <code class=\"option\">no</code>.</p></dd></dl></div><p>An example of authentication-methods configuration is shown below:</p><pre class=\"programlisting\">&lt;authentication-methods&gt;\n  &lt;auth-hostbased&gt;\n    &lt;local-hostname name=\"host.example.com\" /&gt;\n  &lt;/auth-hostbased&gt;\n  &lt;auth-gssapi allow-ticket-forwarding=\"yes\"/&gt;\n  &lt;auth-publickey&gt;\n    &lt;key-selection policy=\"interactive-shy\"&gt;\n      &lt;public-key type=\"plain\" /&gt;\n    &lt;/key-selection&gt;\n  &lt;/auth-publickey&gt;\n  &lt;auth-keyboard-interactive /&gt;\n  &lt;auth-password&gt;\n    &lt;password file=\"/path/filename\" /&gt;\n  &lt;/auth-password&gt;\n&lt;/authentication-methods&gt;\n</pre></dd><dt><span class=\"term\"><span><strong class=\"command\">hostbased-default-domain</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2623365\"></a><a class=\"indexterm\" name=\"id2623375\"></a><p>This element specifies the host's default domain name (as \n    <code class=\"option\">name</code>). This element is used to make sure the fully \n    qualified domain name (FQDN) of the client host is transmitted to \n    the server when using host-based user authentication.</p><p> The default domain name is appended to the short hostname \n    before transmitting it to the server. This is needed because some \n    platforms (Solaris for instance) use the short format of the hostname, \n    and with that the signature cannot be created.</p><p>The allowed formats of the default domain names are: \n    <code class=\"option\">.example.com</code> and \n    <code class=\"option\">example.com</code> (without the leading dot). For example:</p><pre class=\"programlisting\">&lt;hostbased-default-domain name=\".example.com\" /&gt;\n</pre></dd><dt><a name=\"default-compression\"></a><span class=\"term\"><span><strong class=\"command\">compression</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2623446\"></a><a class=\"indexterm\" name=\"id2623456\"></a><p>This element specifies whether the client sends the data compressed\n  (PUT operation). When activated, compression is applied on-the-fly to all \n  data sent out through the connection and on all channels in it.</p><p>The name of the compression algorithm and the compression level can \n  be given as attributes. The <code class=\"option\">name</code> attribute can be defined \n  as <code class=\"option\">none</code> (compression not used) or <code class=\"option\">zlib</code>, \n  currently the only supported algorithm. By default, compression is not \n  used.</p><p>The <code class=\"option\">level</code> attribute can be given an integer from \n  <code class=\"option\">0</code> to <code class=\"option\">9</code>. The default compression level is\n  <code class=\"option\">6</code>, when compression is activated but no level is given.\n  </p><p><span><strong class=\"command\">Example</strong></span>: to activate maximum level compression of sent data, \n  make the following setting:</p><pre class=\"programlisting\">&lt;compression name=\"zlib\" level=\"9\" /&gt;\n</pre><p>Compression can also be activated per \n  connection with command line tools. For information, see the \n  <a href=\"sshg3.html\" title=\"sshg3\"><span class=\"refentrytitle\">sshg3</span>(1)</a>, <a href=\"sftpg3.html\" title=\"sftpg3\"><span class=\"refentrytitle\">sftpg3</span>(1)</a> and \n  <a href=\"scpg3.html\" title=\"scpg3\"><span class=\"refentrytitle\">scpg3</span>(1)</a> man pages.</p><p>Note that this <code class=\"option\">compression</code> setting does not affect \n  received data (GET operations), but their compression is defined on the \n  Secure Shell server. SSH Tectia Server always uses compression level 6.</p></dd><dt><a name=\"default-proxy\"></a><span class=\"term\"><span><strong class=\"command\">proxy</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2623574\"></a><a class=\"indexterm\" name=\"id2623584\"></a><p>This element defines rules for HTTP proxy or SOCKS servers the \n  client will use for connections. It has a single attribute: \n  <code class=\"option\">ruleset</code>.</p><p>The format of the attribute value is a sequence of rules \n  delimited by semicolons (<code class=\"option\">;</code>). Each rule has a format \n  that resembles the URL format. In a rule, the connection type is \n  given first. The type can be <code class=\"option\">direct</code>, \n  <code class=\"option\">socks</code>, <code class=\"option\">socks4</code>, <code class=\"option\">socks5</code>, or \n  <code class=\"option\">http-connect</code> (<code class=\"option\">socks</code> is a synonym for \n  <code class=\"option\">socks4</code>). This is followed by the server address and \n  port. If the port is not given, the default ports 1080 for SOCKS and \n  80 for HTTP are used.</p><p>After the address, zero or more conditions delimited by commas \n  (<code class=\"option\">,</code>) are given. The conditions can specify IP addresses \n  or DNS names.</p><pre class=\"screen\">direct:///[cond[,cond]...]\nsocks://server/[cond[,cond]...]\nsocks4://server/[cond[,cond]...]\nsocks5://server/[cond[,cond]...]\nhttp-connect://server/[cond[,cond]...]</pre><p>The IP address/port conditions have an address pattern and an \n  optional port range:</p><pre class=\"screen\">ip_pattern[:port_range]</pre><p>The <code class=\"option\">ip_pattern</code> may have one of the following forms:</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><p>a single IP address <code class=\"option\">x.x.x.x</code></p></li><li><p>an IP address range of the form <code class=\"option\">x.x.x.x-y.y.y.y</code></p></li><li><p>an IP sub-network mask of the form <code class=\"option\">x.x.x.x/y</code></p></li></ul></div><p>The DNS name conditions consist of a hostname which may be a regular \n  expression containing the characters \"*\" and \"?\" and a port range:</p><pre class=\"screen\">name_pattern[:port_range]</pre><p>An example <code class=\"option\">proxy</code> element is shown below. It causes \n  the server to access the callback address and the <code class=\"option\">ssh.com</code> \n  domain directly, access <code class=\"option\">*.example</code> with HTTP CONNECT, and \n  all other destinations with SOCKS4.</p><pre class=\"programlisting\">&lt;proxy ruleset=\"direct:///127.0.0.0/8,*.ssh.com;\n                http-connect://http-proxy.ssh.com:8080/*.example;\n                socks://fw.ssh.com:1080/\" /&gt;\n</pre></dd><dt><a name=\"default-idle-timeout\"></a><span class=\"term\"><span><strong class=\"command\">idle-timeout</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2623757\"></a><a class=\"indexterm\" name=\"id2623767\"></a><p>This element specifies how long idle time (after all connection \n  channels are closed) is allowed for a connection before \n  automatically closing the connection. The <code class=\"option\">time</code> is given \n  in seconds. The <code class=\"option\">type</code> is always connection.</p><p>The default setting is 5 seconds. Setting a longer time allows the \n  connection to the server to remain open even after a session (for example, \n  <code class=\"option\">sshg3</code>) is closed. During this time, a new session to the \n  server can be initiated without re-authentication. Setting the time to 0 \n  (zero) terminates the connection immediately when the last channel to the \n  server is closed.</p><pre class=\"programlisting\">&lt;idle-timeout time=\"5\" /&gt;\n</pre></dd><dt><a name=\"default-tcp-timeout\"></a><span class=\"term\"><span><strong class=\"command\">tcp-connect-timeout</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2623827\"></a><a class=\"indexterm\" name=\"id2623837\"></a><a class=\"indexterm\" name=\"id2623844\"></a><a class=\"indexterm\" name=\"id2623853\"></a><p>This element specifies a timeout for the TCP connection. When this \n  setting is made, connection attempts to an Secure Shell server are stopped \n  after the defined time if the remote host is down or unreachable. This \n  timeout overrides the default system TCP timeout, and this timeout setting \n  can be overridden by defining a <code class=\"option\">tcp-connect-timeout</code> setting \n  per connection profile (in the <code class=\"option\">profiles</code> settings) or per   \n  connection (on command line).</p><p>The <code class=\"option\">time</code> is given in seconds. The factory default is 5 \n  seconds. Value 0 (zero) disables this feature and the default system TCP \n  timeout will be used.</p><pre class=\"programlisting\">&lt;tcp-connect-timeout time=\"5\" /&gt;\n</pre></dd><dt><a name=\"default-keepalive\"></a><span class=\"term\"><span><strong class=\"command\">keepalive-interval</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2623917\"></a><a class=\"indexterm\" name=\"id2623926\"></a><a class=\"indexterm\" name=\"id2623936\"></a><a class=\"indexterm\" name=\"id2623942\"></a><p>This element specifies an interval for sending keepalive messages to \n  the Secure Shell server. The <code class=\"option\">time</code> value is given in seconds. \n  The default setting is 0, meaning that the keepalive messages are disabled.</p><pre class=\"programlisting\">&lt;keepalive-interval time=\"0\" /&gt;\n</pre></dd><dt><a name=\"default-exclusive-connection\"></a><span class=\"term\"><span><strong class=\"command\">exclusive-connection</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2623985\"></a><a class=\"indexterm\" name=\"id2623994\"></a><p>The <code class=\"option\">exclusive-connection</code> element can be used to specify \n  that a new connection is opened for each new channel. </p><p>The word <code class=\"option\">yes</code> or <code class=\"option\">no</code> is given as the \n  value of the <code class=\"option\">enable</code> attribute. The default is \n  <code class=\"option\">no</code> (open connections are reused for new channels requested \n  by a client).</p></dd><dt><a name=\"default-server-banners\"></a><span class=\"term\"><span><strong class=\"command\">server-banners</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2624048\"></a><p>This element defines whether the server banner message file (if it \n    exists) is visible to the user before login. The word \n    <code class=\"option\">yes</code> or <code class=\"option\">no</code> is given as the value of the \n    <code class=\"option\">visible</code> attribute. The default is <code class=\"option\">yes</code>.\n    </p><p>To eliminate server banners:</p><pre class=\"programlisting\">&lt;server-banners visible=\"no\" /&gt;\n</pre></dd><dt><a name=\"default-forwards\"></a><span class=\"term\"><span><strong class=\"command\">forwards</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2624105\"></a><p>This element contains <code class=\"option\">forward</code> elements that \n  define whether X11 or agent forwarding (tunneling) are allowed on \n  the client side.</p><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">forward</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2624136\"></a><a class=\"indexterm\" name=\"id2624145\"></a><a class=\"indexterm\" name=\"id2624152\"></a><p>This element defines X11 or agent forwarding settings.</p><p>The <code class=\"option\">type</code> attribute defines the forwarding \n      type (either <code class=\"option\">x11</code> or <code class=\"option\">agent</code>). The \n      <code class=\"option\">state</code> attribute sets the forwarding \n      <code class=\"option\">on</code>, <code class=\"option\">off</code>, or \n      <code class=\"option\">denied</code>. If the forwarding is set as <code class=\"option\">denied</code>, the\n      user cannot enable it on the command-line.</p></dd></dl></div><p>An example forward configuration, which  denies X11 \n  forwarding and allows agent forwarding globally, is shown \n  below:</p><pre class=\"programlisting\">&lt;forwards&gt;\n  &lt;forward type=\"x11\" state=\"denied\" /&gt;\n  &lt;forward type=\"agent\" state=\"on\" /&gt;\n&lt;/forwards&gt;\n</pre><p>For more information on using X11 \n   and agent forwarding, see <a href=\"client-tunnel-x11.html\" title=\"X11 Forwarding\">X11 Forwarding</a> and \n   <a href=\"client-tunnel-agent.html\" title=\"Agent Forwarding\">Agent Forwarding</a>.</p></dd><dt><a name=\"default-extended\"></a><span class=\"term\"><span><strong class=\"command\">extended</strong></span></span></dt><dd><p>This element is reserved for future use. </p></dd><dt><a name=\"default-remote-environment\"></a><span class=\"term\"><span><strong class=\"command\">remote-environment</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2624274\"></a><a class=\"indexterm\" name=\"id2624283\"></a><p>This element contains <code class=\"option\">environment</code> elements which define \n  the environment variables to be passed to the server from the client side. \n  The environment variables are then set on the server when requesting a \n  command, shell or subsystem. </p><p>Note that the server can restrict the setting of environment \n  variables.</p><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">environment</strong></span>\n<a class=\"indexterm\" name=\"id2624316\"></a> \n    </span></dt><dd><p>This element defines the name and value of the environment \n    variables, and whether the Connection Broker should process the value. Possible \n    attributes are <code class=\"option\">name</code>, <code class=\"option\">value</code>, and \n    <code class=\"option\">format</code>. </p><p>An example remote environment configuration:</p><pre class=\"programlisting\">&lt;remote-environment&gt;\n  &lt;environment name=\"FOO\" value=\"bar\" /&gt;\n  &lt;environment name=\"QUX\" value=\"%Ubaz\" format=\"yes\" /&gt;\n  &lt;environment name=\"ZAPPA\" value=\"%Ubaz\" /&gt;\n&lt;/remote-environment&gt;\n</pre><p>You can use <code class=\"option\">%U</code> in the <code class=\"option\">value</code> to indicate \n    a user name. When <code class=\"option\">format=\"yes\"</code> is also defined, the Connection Broker \n    processes the <code class=\"option\">%U</code> into the actual user name before sending \n    it to the server.</p><p>Let's assume the user name is <code class=\"option\">joedoe</code> in this example. \n    The example configuration results in the following environment variables \n    on the server side, provided that the server allows setting the \n    environment variables: </p><pre class=\"programlisting\">FOO=bar \nQUX=joedoebaz \nZAPPA=%Ubaz \n</pre></dd></dl></div><p>You can override the remote environment settings made in the \n  configuration file if you use the <code class=\"option\">sshg3</code> command with the \n  following arguments on the command-line client: \n  <code class=\"option\">--remote-environment</code> or \n  <code class=\"option\">--remote-environment-format</code></p><p>For information on the command-line options, see \n  <span><a href=\"sshg3.html\" title=\"sshg3\"><span class=\"refentrytitle\">sshg3</span>(1)</a>.</span>\n  \n  </p></dd><dt><a name=\"default-server-authentication-methods\"></a><span class=\"term\"><span><strong class=\"command\">server-authentication-methods</strong></span></span></dt><dd><p>This <code class=\"option\">server-authentication-methods</code> element can be \n  used to force the Connection Broker to use only certain methods in server \n  authentication. This element can contain <code class=\"option\">auth-server-publickey</code> and \n  <code class=\"option\">auth-server-certificate</code> elements (one of each). \n  Alternatively, you can specify up to two <code class=\"option\">authentication-method</code> \n  elements. The order of these elements is free.</p><p>If only <code class=\"option\">auth-server-certificate</code> is specified, server \n  certificate is needed. If no server certificate is received, connection \n  fails.</p><p>If only <code class=\"option\">auth-server-publickey</code> is specified, \n  (plain) server public key is needed. If no server public key is received, \n  connection fails.</p><p>If both <code class=\"option\">auth-server-certificate</code> and \n  <code class=\"option\">auth-server-publickey</code> are specified, server certificate \n  is used if present. Otherwise server public key is used.</p><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">auth-server-certificate</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2624519\"></a><p>The <code class=\"option\">auth-server-certificate</code> element specifies \n    that certificates are used for server authentication.</p></dd><dt><a name=\"default-auth-server-publickey\"></a><span class=\"term\"><span><strong class=\"command\">auth-server-publickey</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2624555\"></a><a class=\"indexterm\" name=\"id2624565\"></a><a class=\"indexterm\" name=\"id2624572\"></a><p>The <code class=\"option\">auth-server-publickey</code> element specifies that \n    public host keys are used for server authentication.</p><div class=\"note\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Note\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Note]\" src=\"images/note.gif\"></td><th align=\"left\">Note</th></tr><tr><td align=\"left\" valign=\"top\"><p>The host key policy settings have changed in version 6.1.4 \n    and are now defined in the <code class=\"option\">auth-server-publickey</code> \n    element. </p></td></tr></table></div><p>The element takes attribute <code class=\"option\">policy</code> that defines \n    how unknown server host keys are handled. It can have the following \n    values:</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><p><code class=\"option\">strict</code>: Connect to the server only if \n    the host key is found from the host key store and matches.</p><p>If the policy is set to <code class=\"option\">strict</code>, the Connection Broker never \n    adds host keys to the user's <code class=\"filename\">.ssh2/hostkeys</code> \n    directory upon connection, and refuses to connect to hosts whose key has \n    changed. This provides maximum protection against man-in-the-middle \n    attacks. However, it also means you must always obtain host keys via \n    out-of-band means, which can be troublesome if you frequently connect to \n    new hosts.</p></li><li><p><code class=\"option\">ask</code> (default):\n    If the server host key is not found from the host key store, the user \n    will be asked if he wants to accept the host key. If the host key has \n    changed, the user is warned about it and asked how to proceed. If the \n    client application is not able to ask the user (for example, \n    <span><strong class=\"command\">sftpg3</strong></span> in batch mode, <code class=\"option\">-B</code>), the \n    connection will be disconnected.</p></li><li><p><code class=\"option\">trust-on-first-use</code> or <code class=\"option\">tofu</code>:\n    If the server host key is not found, it is stored to the user's \n    <code class=\"filename\">.ssh2/hostkeys</code> directory. If the host key has \n    changed, the connection will be disconnected.</p></li><li><p><code class=\"option\">advisory</code>:\n    Use of this setting effectively disables server authentication, which \n    makes the connection vulnerable to active attackers.</p><p>If the server host key is not found in the host key store, it will \n    be added to the user's <code class=\"filename\">.ssh2/hostkeys</code> \n    directory without user interaction. If the host key has changed, the \n    connection will be continued without user interaction. The incident will \n    be audited if logging is enabled.</p><p>When the policy is set to <code class=\"option\">advisory</code>, the keys from \n    new hosts are automatically accepted and stored to the host key database \n    without prompting acceptance from the user. However, changed host keys \n    (from hosts whose keys are already in the database) are not stored, but \n    they are accepted for that connection only.</p><p> This setting should be used only if logging is enabled for the \n    Connection Broker (by default, logging is enabled only if the Broker is \n    run by the MFT Events service). </p><div class=\"caution\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Caution\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Caution]\" src=\"images/caution.gif\"></td><th align=\"left\">Caution</th></tr><tr><td align=\"left\" valign=\"top\"><p>Consider carefully before setting the policy to <code class=\"option\">advisory</code>. \n    Disabling the host-key checks makes you vulnerable to man-in-the-middle attacks.</p></td></tr></table></div></li></ul></div><p>In policy modes other than <code class=\"option\">strict</code>, if logging \n    is enabled for the Connection Broker, SSH Tectia Client will log information about \n    changed and new host public keys with their fingerprints in the syslog \n    (on Unix) or Event Viewer (on Windows).</p><div class=\"note\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Note\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Note]\" src=\"images/note.gif\"></td><th align=\"left\">Note</th></tr><tr><td align=\"left\" valign=\"top\"><p>When transparent FTP tunneling or FTP-SFTP \n    conversion is used, accepting the host key cannot be prompted from the \n    user. Either the policy must be set to <code class=\"option\">tofu</code> or the host \n    keys of the Secure Shell tunneling and SFTP servers must be obtained \n    beforehand and stored based on the IP addresses of the servers.</p></td></tr></table></div><p>If the <code class=\"option\">policy</code> attribute is not defined, the host \n    key policy is interpreted based on the values of the old\n    <code class=\"option\">strict-host-key-checking</code>,\n    <code class=\"option\">host-key-always-ask</code>, and\n    <code class=\"option\">accept-unknown-host-keys</code> \n    options as shown in <a href=\"ssh-broker-config.html#host-key-policy\" title=\"Table A.2. Interpretation of old host key policy (SSH Tectia Client 5.0.0-6.1.3) to new host key policy (SSH Tectia Client 6.1.4 and later)\">Table A.2</a> below.</p><div class=\"note\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Note\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Note]\" src=\"images/note.gif\"></td><th align=\"left\">Note</th></tr><tr><td align=\"left\" valign=\"top\"><p>In version 6.1.4 and later, the host key policy setting in \n    the user-specific configuration file always takes precedence over the \n    setting in the global configuration file.</p></td></tr></table></div><div class=\"table\"><a name=\"host-key-policy\"></a><p class=\"title\"><b>Table A.2. Interpretation of old host key policy (SSH Tectia Client 5.0.0-6.1.3) to new host key policy (SSH Tectia Client 6.1.4 and later)</b></p><table summary=\"Interpretation of old host key policy (SSH Tectia Client 5.0.0-6.1.3) to new host key policy (SSH Tectia Client 6.1.4 and later)\" border=\"1\"><colgroup><col align=\"left\"><col align=\"left\"><col align=\"left\"><col align=\"left\"></colgroup><thead><tr><th align=\"left\">strict-host-key-checking</th><th align=\"left\">accept-unknown-host-keys</th><th align=\"left\">host-key-always-ask</th><th align=\"left\"><span><strong class=\"command\">Policy</strong></span></th></tr></thead><tbody><tr><td align=\"left\">-</td><td align=\"left\">-</td><td align=\"left\">-</td><td align=\"left\"><span><strong class=\"command\">ask (default)</strong></span></td></tr><tr><td align=\"left\">enabled</td><td align=\"left\">-</td><td align=\"left\">-</td><td align=\"left\"><span><strong class=\"command\">strict</strong></span></td></tr><tr><td align=\"left\">enabled</td><td align=\"left\">enabled</td><td align=\"left\">-</td><td align=\"left\"><span><strong class=\"command\">strict</strong></span></td></tr><tr><td align=\"left\">enabled</td><td align=\"left\">enabled</td><td align=\"left\">enabled</td><td align=\"left\"><span><strong class=\"command\">ask</strong></span></td></tr><tr><td align=\"left\">enabled</td><td align=\"left\">-</td><td align=\"left\">enabled</td><td align=\"left\"><span><strong class=\"command\">ask</strong></span></td></tr><tr><td align=\"left\">-</td><td align=\"left\">enabled</td><td align=\"left\">-</td><td align=\"left\"><span><strong class=\"command\">trust on first use</strong></span></td></tr><tr><td align=\"left\">-</td><td align=\"left\">enabled</td><td align=\"left\">enabled</td><td align=\"left\"><span><strong class=\"command\">ask</strong></span></td></tr><tr><td align=\"left\">-</td><td align=\"left\">-</td><td align=\"left\">enabled</td><td align=\"left\"><span><strong class=\"command\">ask</strong></span></td></tr></tbody></table></div></dd><dt><span class=\"term\"><span><strong class=\"command\">authentication-method</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2625042\"></a><p>The <code class=\"option\">server-authentication-methods/authentication-method</code> \n    element specifies an authentication method <code class=\"option\">name</code>. This element is \n    included for backwards compatibility. Use the <code class=\"option\">auth-server-*</code> elements instead.</p><pre class=\"programlisting\">&lt;server-authentication-methods&gt;\n  &lt;authentication-method name=\"publickey\" /&gt;\n  &lt;authentication-method name=\"certificate\" /&gt;\n&lt;/server-authentication-methods&gt;\n</pre></dd></dl></div><p>An example <code class=\"option\">server-authentication-methods</code> element is shown below:</p><pre class=\"programlisting\">&lt;server-authentication-methods&gt;\n  &lt;auth-server-publickey policy=\"ask\" /&gt;\n  &lt;auth-server-certificate /&gt;\n&lt;/server-authentication-methods&gt;\n</pre></dd><dt><span class=\"term\"><span><strong class=\"command\">authentication-success-message</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2625114\"></a><p>This setting defines whether the <code class=\"option\">AuthenticationSuccessMsg</code> \n    messages are output. The <code class=\"option\">authentication-success-message</code> \n    element takes attribute <code class=\"option\">enable</code> with value \n    <code class=\"option\">yes</code> or <code class=\"option\">no</code>. The default is \n    <code class=\"option\">yes</code>, meaning that the messages are output and logged.</p></dd><dt><span class=\"term\"><span><strong class=\"command\">sftpg3-mode</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2625168\"></a><p>This setting defines how the <span><strong class=\"command\">sftpg3</strong></span> client behaves \n    when transferring files. The <code class=\"option\">sftpg3-mode</code> element takes attribute  \n    <code class=\"option\">compatibility-mode</code> with the following values:</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><p><code class=\"option\">tectia</code> (the default) - \n    <span><strong class=\"command\">sftpg3</strong></span> fransfers files recursively, meaning that \n    files from the current directory and all its subdirectories are transferred.\n    </p></li><li><p><code class=\"option\">ftp</code> - the <code class=\"option\">get/put</code> commands \n    are executed as <code class=\"option\">sget/sput</code> meaning that they transfer a \n    single file; and commands <code class=\"option\">mget/mput</code> have recursion depth \n    set to 1 meaning that they only transfer files from the specified directory, \n    not from subdirectories.</p></li><li><p><code class=\"option\">openssh</code> - commands <code class=\"option\">get/put/mget/mput</code> \n    behave alike, and the recursion depth is set to 1, meaning that only files \n    from the specified directory are transferred, not from subdirectories.</p></li></ul></div><p>The recursion depth can be overridden by using the <span><strong class=\"command\">sftpg3</strong></span> \nclient's commands <code class=\"option\">get/put/mget/mput</code> with command-line \noption <code class=\"option\">--max-depth=\"LEVEL\"</code>. For more information, see \n<a href=\"sftpg3.html\" title=\"sftpg3\"><span class=\"refentrytitle\">sftpg3</span>(1)</a>. </p></dd><dt><a name=\"default-terminal-selection\"></a><span class=\"term\"><span><strong class=\"command\">terminal-selection</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2625293\"></a><p>This element defines how the SSH Tectia terminal behaves when \n  the user selects text with double-clicks. The element takes one attribute: \n  <code class=\"option\">selection-type</code>, whose value can be:</p><p><code class=\"option\">select-words</code> - double-clicking selects one word at \n  a time, space and all punctuation characters are used as delimiters. \n  This is the default.</p><p><code class=\"option\">select-paths</code> - selects strings of characters between \n  spaces, meaning a selection is extended over characters <code class=\"code\">\\/.-_</code>, \n  so that for example a path to a file can be selected by double-clicking \n  anywhere in the path.</p></dd><dt><a name=\"default-terminal-bell\"></a><span class=\"term\"><span><strong class=\"command\">terminal-bell</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2625350\"></a><p>This element defines whether SSH Tectia terminal repeats audible \n  notifications from the destination server. This option is only applied \n  to connections with Unix servers. The element takes one attribute, \n  <code class=\"option\">bell-style</code>, whose value can be:</p><p><code class=\"option\">none</code> - no audible notifications are used</p><p><code class=\"option\">pc-speaker</code> - the user's PC speakers beep when an \n  audible notification is indicated by the destination server</p><p><code class=\"option\">system-default</code> - the SSH Tectia terminal sounds the \n  default alerts defined in the system on the destination server. This is \n  the default. </p></dd><dt><a name=\"default-close-window-on-disconnect\"></a><span class=\"term\"><span><strong class=\"command\">close-window-on-disconnect</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2625411\"></a><p>This element defines that also the SSH Tectia terminal window is to be \n  closed while disconnecting from a server session by pressing \n  <code class=\"option\">CTRL+D</code>. The element takes one attribute, \n  <code class=\"option\">enable</code>, whose value can be <code class=\"option\">yes</code> or \n  <code class=\"option\">no</code>. The default is <code class=\"option\">no</code> meaning that \n  <code class=\"option\">CTRL+D</code> closes only the server connection but the \n  SSH Tectia terminal window remains open. \n  </p></dd><dt><span class=\"term\"><span><strong class=\"command\">quiet-mode</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2625466\"></a><p>This setting defines whether the command line clients should \n    suppress warnings, error messages and authentication success messages.\n    The <code class=\"option\">quiet-mode</code> element takes attribute <code class=\"option\">enable</code> \n    with value <code class=\"option\">yes</code> or <code class=\"option\">no</code>. The default is \n    <code class=\"option\">no</code>, meaning that the errors and messages are output and \n    logged.</p><p>The <code class=\"option\">quiet-mode</code> element affects command line tools \n    <code class=\"option\">scpg3</code>, <code class=\"option\">sshg3</code>, and <code class=\"option\">sftpg3</code>. \n    Enabling the quiet mode here with setting <code class=\"option\">quiet-mode enable=\"yes\"</code> \n    is the same as running these clients with option <code class=\"option\">-q</code>. \n    Note that the <code class=\"option\">-q</code> command line parameter will take priority \n    over the <code class=\"option\">quiet-mode</code> element set in this configuration file.</p></dd><dt><span class=\"term\"><span><strong class=\"command\">checksum</strong></span></span></dt><dd><p>The <code class=\"option\">checksum</code> element can be used to define a default\nsetting for comparing checksums. This default overwrites the factory setting \nthat checksums are not checked for files smaller than 32kB.</p><p>The <code class=\"option\">checksum</code> element takes attribute \n<code class=\"option\">type</code>, whose value can be:</p><p><code class=\"option\">yes|YES</code> - MD5 checksums are checked on files larger than 32kB</p><p><code class=\"option\">no|NO</code> - checksums are not used</p><p><code class=\"option\">md5|MD5</code> - only MD5 checksums are checked on files larger than 32kB, use \n  this in FIPS mode</p><p><code class=\"option\">sha1|SHA1</code> - only SHA1 checksums are checked on files larger than 32kB, use \n  this in other than FIPS mode</p><p><code class=\"option\">md5-force|MD5-FORCE</code> - MD5 checksums are forced on all files in FIPS mode</p><p><code class=\"option\">sha1-force|SHA1-FORCE</code> - SHA1 checksums are forced on all files</p><p><code class=\"option\">checkpoint|CHECKPOINT</code> - checkpointing is forced on \n  large files that are transferred one by one.</p><p>Note that checksums can also be defined with the command line \n  clients <code class=\"option\">scpg3</code> and <code class=\"option\">sftpg3</code>, or with \n  environment variables. The order of priority of the three checksum \n  settings (in case they are different) is as follows, the later one always \n  overwrites the previous value:</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><code class=\"option\">checksum</code> setting in the configuration file</li><li>environment value </li><li>command line arguments.</li></ul></div></dd></dl></div></div><div class=\"refsect1\" lang=\"en\"><a name=\"brokerconfig-profiles\"></a><h2>The <code class=\"option\">profiles</code> Element</h2><a class=\"indexterm\" name=\"id2625673\"></a><p>The <code class=\"option\">profiles</code> element defines the connection \nprofiles for connecting to the specified servers. Element \n<code class=\"option\">profiles</code> can contain multiple <code class=\"option\">profile</code> \nelements. Each profile defines the connection rules to one server. The \nsettings in the <code class=\"option\">profile</code> element override the default \nconnection settings. </p><p>When a profile is used for the connection, the settings in the profile \noverride the default settings. \n<span>See <a href=\"ssh-broker-config.html#brokerconfig-default\" title=\"The default-settings Element\">the section called “The <code class=\"option\">default-settings</code> Element”</a>.</span>\n</p><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">profile</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2625735\"></a><a class=\"indexterm\" name=\"id2625744\"></a><p>The <code class=\"option\">profile</code> element defines a connection \n  profile. It has the following attributes: <code class=\"option\">id</code>, \n  <code class=\"option\">name</code>, <code class=\"option\">host</code>, <code class=\"option\">port</code>, \n  <code class=\"option\">protocol</code>,\n  <code class=\"option\">connect-on-startup</code>, <code class=\"option\">user</code>, and \n  <code class=\"option\">gateway-profile</code>.</p><p>The profile <code class=\"option\">id</code> must be a unique identifier that \n  does not change during the lifetime of the profile.</p><p>An additional <code class=\"option\">name</code> can be given to the profile. This is \n  a free-form text string. The name can be used for connecting with the \n  profile on the command line, so define a unique name for each \n  profile.</p><p>The <code class=\"option\">host</code> attribute defines the address of the Secure Shell \n  server host and it is a mandatory setting. The address can be either an IP \n  address or a domain name. The value <code class=\"option\">host=\"*\"</code> can be used \n  to prompt the user to enter the host address when starting the session.</p><p>\n  An empty value <code class=\"option\">host=\"\"</code> can be used when the profile \n  is used with transparent TCP or FTP tunneling or FTP-SFTP conversion and \n  the host name is taken from the application \n  (<code class=\"option\">filter-engine/rule[@hostname-from-app=\"yes\"]</code>). \n  <span>See <a href=\"ssh-broker-config.html#brokerconfig-rule-element\"><span><strong class=\"command\">rule</strong></span></a> for details.</span>\n  \n  </p><p>The <code class=\"option\">port</code> is a mandatory setting. It defines the port number \n  of the Secure Shell server listener.\n  The default port is <code class=\"option\">22</code>.</p><p>The <code class=\"option\">protocol</code> is a mandatory setting. It defines the \n  used communications protocol.\n  Currently the only allowed value is <code class=\"option\">secsh2</code>.</p><p>If you want to make the connection specified by the profile \n  automatically when the Connection Broker is started, set the value of the \n  <code class=\"option\">connect-on-startup</code> attribute to <code class=\"option\">yes</code>. In \n  this case, give also the <code class=\"option\">user</code> attribute (the username \n  the connection is made with). You also need to set up some form of\n  non-interactive authentication for the connection.</p><p>The <code class=\"option\">user</code> attribute specifies the user name for opening   \n  the connection. The value \"<code class=\"option\">%USERNAME%</code>\" can be used to \n  apply the user name of the currently logged in user. The value \n  <code class=\"option\">user=\"*\"</code> can be used to prompt the user to enter the user \n  name when logging in. When the <code class=\"option\">user</code> attribute is not defined,\n  the user name defined in the default connection settings will be used.</p><a class=\"indexterm\" name=\"id2625920\"></a><p>\n  The <code class=\"option\">gateway-profile</code> attribute can be used to create \n  nested tunnels. The tunnels defined under the <code class=\"option\">local-tunnel</code> \n  element of the profile, and the tunnels defined under <code class=\"option\">filter-engine</code> \n  and <code class=\"option\">static-tunnels</code> that refer to the profile can be nested. \n  The profile name through which the connection is made is given as the \n  value of the attribute. The first tunnel is created using the gateway host \n  profile and from there the second tunnel is created to the host defined in \n  this profile.</p><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">hostkey</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2625971\"></a><p>This element gives the path to the remote server host \n    public key file as a value of the <code class=\"option\">file</code> \n    attribute.</p><p>Alternatively, the public key can be included as a base64-encoded ASCII block.</p></dd><dt><span class=\"term\"><span><strong class=\"command\">ciphers</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2626007\"></a><p>This element defines the ciphers used with this profile. \n    <span>See <a href=\"ssh-broker-config.html#default-ciphers\"><span><strong class=\"command\">ciphers</strong></span></a> for details.</span>\n    \n    </p></dd><dt><span class=\"term\"><span><strong class=\"command\">macs</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2626046\"></a><p>This element defines the MACs used with this profile. \n    <span>See <a href=\"ssh-broker-config.html#default-macs\"><span><strong class=\"command\">macs</strong></span></a> for details.</span>\n    \n    </p></dd><dt><span class=\"term\"><span><strong class=\"command\">transport-distribution</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2626086\"></a><p>This element defines the transport distribution for this profile. \n    <span>See <a href=\"ssh-broker-config.html#default-transport-distribution\"><span><strong class=\"command\">transport-distribution</strong></span></a> for details.</span>\n    \n    </p></dd><dt><span class=\"term\"><span><strong class=\"command\">rekey</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2626127\"></a><p>This element defines the rekeying settings used with this profile. \n    <span>See <a href=\"ssh-broker-config.html#default-rekey\"><span><strong class=\"command\">rekey</strong></span></a> for details.</span>\n    \n    </p></dd><dt><span class=\"term\"><span><strong class=\"command\">authentication-methods</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2626166\"></a><p>This element defines the authentication methods used with this profile. \n    <span>See <a href=\"ssh-broker-config.html#default-authentication-methods\"><span><strong class=\"command\">authentication-methods</strong></span></a> for details.</span>\n    \n    </p></dd><dt><span class=\"term\"><span><strong class=\"command\">user-identities</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2626206\"></a><a class=\"indexterm\" name=\"id2626216\"></a><p>This element specifies the identities used in user public-key \n    authentication. In contrast to the <code class=\"option\">key-stores</code> element \n    that specifies all the keys that are available for the Connection Broker, this \n    element can be used to control the keys that are attempted in \n    authentication when this connection profile is used and to specify the \n    order in which they are attempted. </p><p>The <code class=\"option\">user-identities</code> element can contain multiple \n    <code class=\"option\">identity</code> elements. When multiple <code class=\"option\">identity</code> \n    elements are used, they are tried out in the order they are \n    listed.</p><a class=\"indexterm\" name=\"id2626252\"></a><a class=\"indexterm\" name=\"id2626261\"></a><p>The <code class=\"option\">identity</code> element has the following attributes: \n    <code class=\"option\">identity-file</code>, <code class=\"option\">file</code>, <code class=\"option\">hash</code>, \n    <code class=\"option\">id</code>, and <code class=\"option\">data</code>. </p><p>The <code class=\"option\">identity-file</code> attribute specifies that the user \n    identity is read in the identification file used with public-key \n    authentication. Enter the full path to the file if it is located \n    somewhere else than the default identification file directory which is\n    <code class=\"filename\">$HOME/.ssh2</code>. See also <a href=\"ssh-broker-g3.html\" title=\"ssh-broker-g3\"><span class=\"refentrytitle\">ssh-broker-g3</span>(1)</a>.</p><a class=\"indexterm\" name=\"id2626320\"></a><p>The <code class=\"option\">file</code> attribute specifies the path to the public-key file \n    (primarily) or to a certificate. Enter the full path and file name as the value.\n    </p><a class=\"indexterm\" name=\"id2626338\"></a><p>The <code class=\"option\">hash</code> attribute is used to enter the hash of the \n    public key that will be used to identify the related private key. The \n    key must be available for the Connection Broker The public key hashes of the \n    available keys can be listed with the <span><strong class=\"command\">ssh-broker-ctl</strong></span> \n    tool. See also <a href=\"ssh-broker-ctl.html\" title=\"ssh-broker-ctl\"><span class=\"refentrytitle\">ssh-broker-ctl</span>(1)</a>.</p><a class=\"indexterm\" name=\"id2626373\"></a><p>The <code class=\"option\">id</code> attribute is reserved for future use.</p><a class=\"indexterm\" name=\"id2626390\"></a><p>The <code class=\"option\">data</code> attribute is reserved for future use.\n    </p><p>An example <code class=\"option\">user-identities</code> element is shown below:</p><pre class=\"programlisting\">&lt;user-identities&gt;\n  &lt;identity identity-file=\"C:\\\\ mykey\" /&gt;\n  &lt;identity file=\"$HOME/user/.ssh2/id_dsa_2048_a\" /&gt;\n  &lt;identity file=\"C:\\\\private_keys\\id_dsa_2048_a\" /&gt;\n  &lt;identity hash=\"#a8edd3845005931aaa658b5573609e7d31e23afd\" /&gt;\n&lt;/user-identities&gt;\n</pre></dd><dt><span class=\"term\"><span><strong class=\"command\">compression</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2626447\"></a><p>This element defines the compression settings used with this profile. \n    <span>See <a href=\"ssh-broker-config.html#default-compression\"><span><strong class=\"command\">compression</strong></span></a> for details.</span>\n    \n    </p></dd><dt><span class=\"term\"><span><strong class=\"command\">proxy</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2626486\"></a><p>This element defines the HTTP proxy and SOCKS server settings used with this profile. \n    <span>See <a href=\"ssh-broker-config.html#default-proxy\"><span><strong class=\"command\">proxy</strong></span></a> for details.</span>\n    \n    </p><p>If <code class=\"option\">gateway-profile</code> has been defined for this profile, \n    the proxy setting is ignored and the default proxy setting or \n    the proxy setting of the gateway profile is used instead.</p></dd><dt><span class=\"term\"><span><strong class=\"command\">idle-timeout</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2626536\"></a><p>This element defines the idle timeout settings used with this profile. \n    <span>See <a href=\"ssh-broker-config.html#default-idle-timeout\"><span><strong class=\"command\">idle-timeout</strong></span></a> for details.</span>\n    \n    </p></dd><dt><span class=\"term\"><span><strong class=\"command\">tcp-connect-timeout</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2626577\"></a><p>This element defines the TCP connection timeout for this profile. \n    The timeout is used to terminate connection attempts to Secure Shell \n    servers that are down or unreachable. The default value is 5 seconds.\n    <span>See <a href=\"ssh-broker-config.html#default-tcp-timeout\"><span><strong class=\"command\">tcp-connect-timeout</strong></span></a> for details.</span>\n    \n    </p></dd><dt><span class=\"term\"><span><strong class=\"command\">keepalive-interval</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2626619\"></a><p>This element defines an interval for sending keepalive messages to \n    the Secure Shell server. The setting applies to this profile. The default \n    value is 0, meaning that no keepalive messages are sent.\n    <span>See <a href=\"ssh-broker-config.html#default-keepalive\"><span><strong class=\"command\">keepalive-interval</strong></span></a> for details.</span>\n    \n    </p></dd><dt><span class=\"term\"><span><strong class=\"command\">exclusive-connection</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2626661\"></a><p>This element defines whether a new connection is opened for each \n    new channel when a connection is made with this profile. \n    <span>See <a href=\"ssh-broker-config.html#default-exclusive-connection\"><span><strong class=\"command\">exclusive-connection</strong></span></a> for details.</span>\n    \n    </p></dd><dt><span class=\"term\"><span><strong class=\"command\">server-banners</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2626702\"></a><p>This element defines the server banner setting used with this profile. \n    <span>See <a href=\"ssh-broker-config.html#default-server-banners\"><span><strong class=\"command\">server-banners</strong></span></a> for details.</span>\n    \n    </p></dd><dt><span class=\"term\"><span><strong class=\"command\">forwards</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2626743\"></a><p>This element defines the forwards allowed with this profile. \n    <span>See <a href=\"ssh-broker-config.html#default-forwards\"><span><strong class=\"command\">forwards</strong></span></a> for details.</span>\n    \n    </p></dd><dt><span class=\"term\"><span><strong class=\"command\">tunnels</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2626784\"></a><p>The <code class=\"option\">tunnels</code> element defines the tunnels that are \n    opened when a connection with this profile is made. The element can \n    contain multiple <code class=\"option\">local-tunnel</code> and <code class=\"option\">remote-tunnel</code> \n    elements. </p><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">local-tunnel</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2626824\"></a><p>This element defines a local tunnel (port forwarding) that is \n      opened automatically when a connection is made with the connection \n      profile. It has five attributes: <code class=\"option\">type</code>, <code class=\"option\">listen-port</code>, \n      <code class=\"option\">listen-address</code>, <code class=\"option\">dst-host</code>, <code class=\"option\">dst-port</code>, \n      and <code class=\"option\">allow-relay</code>.</p><p>The <code class=\"option\">type</code> attribute defines the type of the tunnel. \n      This can be <code class=\"option\">tcp</code> (default, no special processing), \n      <code class=\"option\">ftp</code> (temporary forwarding is created for FTP data \n      channels, effectively securing the whole FTP session), or \n      <code class=\"option\">socks</code> (SSH Tectia Client/ConnectSecure will act as a SOCKS server for other \n      applications, creating forwards as requested by the SOCKS \n      transaction).</p><p>The <code class=\"option\">listen-port</code> attribute defines the listener port \n      number on the local client.</p><p>The <code class=\"option\">listen-address</code> attribute can be used to define \n      which network interfaces on the client should be listened. Its value \n      can be an IP address belonging to an interface on the local host. \n      Value <code class=\"option\">0.0.0.0</code> listens to all interfaces. The default is \n      <code class=\"option\">127.0.0.1</code> (localhost loopback address on the client). \n      Setting any other value requires setting <code class=\"option\">allow-relay=\"yes\"</code>.</p><p>Whenever a connection is made to the specified listener, the \n      connection is tunneled over Secure Shell to the remote server and \n      another connection is made from the server to a specified destination \n      host and port (<code class=\"option\">dst-host</code>, <code class=\"option\">dst-port</code>). \n      The connection from the server onwards will not be secure, it is a \n      normal TCP connection.</p><p>The <code class=\"option\">dst-host</code> and <code class=\"option\">dst-port</code> \n      attributes define the destination host address and port. The value of \n      <code class=\"option\">dst-host</code> can be either an IP address or a domain \n      name. The default is <code class=\"option\">127.0.0.1</code> (localhost = server host).</p><a class=\"indexterm\" name=\"id2626953\"></a><p>The <code class=\"option\">allow-relay</code> attribute defines whether \n      connections to the listened port are allowed from outside the \n      client host. The default is <code class=\"option\">no</code>.\n      If you use <code class=\"option\">allow-relay=\"yes\"</code>, it will check also the \n      <code class=\"option\">listen-address</code> setting.</p><p>For more information on using local tunnels, see \n      <a href=\"tunnel-local.html\" title=\"Local Tunnels\">Local Tunnels</a>.</p></dd><dt><span class=\"term\"><span><strong class=\"command\">remote-tunnel</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2627009\"></a><p>This element defines a remote tunnel (port forwarding) that is \n      opened automatically when a connection is made with the connection \n      profile. It has four attributes: <code class=\"option\">type</code>, <code class=\"option\">listen-port</code>, \n      <code class=\"option\">listen-address</code>, <code class=\"option\">dst-host</code>, <code class=\"option\">dst-port</code>, \n      and <code class=\"option\">allow-relay</code>.</p><p>The <code class=\"option\">type</code> attribute defines the type of the tunnel. \n      This can be either <code class=\"option\">tcp</code> (default, no special processing) \n      or <code class=\"option\">ftp</code> (temporary forwarding is created for FTP data \n      channels, effectively securing the FTP session between the client and \n      server).</p><p>The <code class=\"option\">listen-port</code> attribute defines the listener port \n      number on the remote server.</p><p>The <code class=\"option\">listen-address</code> attribute can be used to define \n      which network interfaces on the server should be listened. Its value \n      can be an IP address belonging to an interface on the server host. \n      Value <code class=\"option\">0.0.0.0</code> listens to all interfaces. The default is \n      <code class=\"option\">127.0.0.1</code> (localhost loopback address on the server). \n      Setting any other value requires that <code class=\"option\">allow-relay=\"yes\"</code>.</p><p>Whenever a connection is made to this listener, the \n      connection is tunneled over Secure Shell to the local client and \n      another connection is made from the client to a specified destination \n      host and port (<code class=\"option\">dst-host</code>, <code class=\"option\">dst-port</code>). The \n      connection from the client onwards will not be secure, it is a \n      normal TCP connection.</p><p>The <code class=\"option\">dst-host</code> and <code class=\"option\">dst-port</code> \n      attributes define the destination host address and port. The value of \n      <code class=\"option\">dst-host</code> can be either an IP address or a domain \n      name. The default is <code class=\"option\">127.0.0.1</code> (localhost = client host).</p><a class=\"indexterm\" name=\"id2627133\"></a><p>The <code class=\"option\">allow-relay</code> attribute defines whether \n      connections to the listener port are allowed from outside the \n      server host. The default is <code class=\"option\">no</code>.</p><p>For more information on using remote tunnels, see \n      <a href=\"client-tunnel-remote.html\" title=\"Remote Tunnels\">Remote Tunnels</a>.</p></dd></dl></div></dd><dt><span class=\"term\"><span><strong class=\"command\">extended</strong></span></span></dt><dd><p>This element is reserved for future use.</p></dd><dt><span class=\"term\"><span><strong class=\"command\">remote-environment</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2627206\"></a><p>This element defines the remote environment settings used with \n    this profile. Within the <code class=\"option\">remote-environment</code> element, define \n    an <code class=\"option\">environment</code> element for each environment variable to be \n    passed to the server. \n    <span>See <a href=\"ssh-broker-config.html#default-remote-environment\"><span><strong class=\"command\">remote-environment</strong></span></a> for details.</span>\n    \n    </p></dd><dt><span class=\"term\"><span><strong class=\"command\">server-authentication-methods</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2627256\"></a><p>This element defines the server authentication methods allowed with this profile. \n    <span>See <a href=\"ssh-broker-config.html#default-server-authentication-methods\"><span><strong class=\"command\">server-authentication-methods</strong></span></a> for details.</span>\n    \n    </p></dd><dt><span class=\"term\"><span><strong class=\"command\">password</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2627297\"></a><p>This element can be used to specify a user password that the \n    client will send as a response to password authentication.</p><p>The password can be given directly in the <code class=\"option\">string</code> \n    attribute, or a path to a file containing the password can be given in \n    the <code class=\"option\">file</code> attribute, or a path to a program or a script \n    that outputs the password can be given in the <code class=\"option\">command</code> \n    attribute.</p><p>When using the <code class=\"option\">command</code> option to refer to a \n    shell script, make sure the script also defines the user's shell, and \n    outputs the actual password. Otherwise the executed program fails, \n    because it does not know what shell to use for the shell script. For \n    example, if the password string is defined in a file named \n    <code class=\"filename\">my_password.txt</code>, and you want to use the bash \n    shell, include these lines in the script:</p><pre class=\"screen\">#!/usr/bash\ncat /full/pathname/to/my_password.txt\n</pre><div class=\"caution\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Caution\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Caution]\" src=\"images/caution.gif\"></td><th align=\"left\">Caution</th></tr><tr><td align=\"left\" valign=\"top\"><p>If the password is given using this option, it is \n    extremely important that the <code class=\"filename\">ssh-broker-config.xml</code> \n    file, the password file, or the program are not accessible by anyone \n    else than the intended user.</p></td></tr></table></div><div class=\"note\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Note\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Note]\" src=\"images/note.gif\"></td><th align=\"left\">Note</th></tr><tr><td align=\"left\" valign=\"top\"><p>Any password given with the command-line options will \n    override this setting.</p></td></tr></table></div></dd></dl></div><p>An example connection profile is shown below:</p><pre class=\"programlisting\">&lt;profile name=\"rock\"\n         id=\"id1\"\n         host=\"rock.example.com\"\n         port=\"22\"\n         connect-on-startup=\"no\"\n         user=\"doct\"&gt;\n\n  &lt;hostkey file=\"key_22_rock.pub\"&gt;\n  &lt;/hostkey&gt;\n\n  &lt;authentication-methods&gt;\n    &lt;auth-publickey /&gt;\n    &lt;auth-password /&gt;\n  &lt;/authentication-methods&gt;\n\n  &lt;server-authentication-methods&gt;\n    &lt;auth-server-publickey policy=\"strict\" /&gt;\n  &lt;/server-authentication-methods&gt;\n\n  &lt;server-banners visible=\"yes\" /&gt;\n\n  &lt;forwards&gt;\n    &lt;forward type=\"agent\" state=\"on\" /&gt;\n    &lt;forward type=\"x11\" state=\"on\" /&gt;\n  &lt;/forwards&gt;\n\n  &lt;tunnels&gt;\n    &lt;local-tunnel type=\"tcp\"\n                  listen-port=\"143\"\n                  dst-host=\"imap.example.com\"\n                  dst-port=\"143\"\n                  allow-relay=\"no\" /&gt;\n  &lt;/tunnels&gt;\n\n  &lt;remote-environment&gt;\n    &lt;environment name=\"FOO\" value=\"bar\" /&gt;\n    &lt;environment name=\"QUX\" value=\"%Ubaz\" format=\"yes\" /&gt;\n    &lt;environment name=\"ZAPPA\" value=\"%Ubaz\" /&gt;\n  &lt;/remote-environment&gt;\n\n&lt;/profile&gt;\n</pre></dd></dl></div></div><div class=\"refsect1\" lang=\"en\"><a name=\"id2627424\"></a><h2>The <code class=\"option\">static-tunnels</code> Element</h2><a class=\"indexterm\" name=\"id2627436\"></a><p>The <code class=\"option\">static-tunnels</code> setting is used to configure the \nbehaviour of the automatic tunnels. You can create listeners for local \ntunnels automatically when the Connection Broker starts up. The actual tunnel is formed \nthe first time a connection is made to the listener port. If the connection \nto the server is not open at that time, it will be opened automatically as \nwell.</p><p>The <code class=\"option\">static-tunnels</code> element can contain any number of \n<code class=\"option\">tunnel</code> elements.</p><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">tunnel</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2627486\"></a><p>The <code class=\"option\">tunnel</code> element specifies a static tunnel. \n  It has the following attributes: <code class=\"option\">type</code>, <code class=\"option\">listen-port</code>, \n  <code class=\"option\">listen-address</code>, <code class=\"option\">dst-host</code>, <code class=\"option\">dst-port</code>, \n  <code class=\"option\">allow-relay</code>, and <code class=\"option\">profile</code>.</p><p>The <code class=\"option\">type</code> attribute defines the type of the \n  tunnel. This can be either <code class=\"option\">tcp</code> or <code class=\"option\">ftp</code>.</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><p><code class=\"option\">tcp</code> specifies a listener for generic TCP \n  tunneling</p></li><li><p><code class=\"option\">ftp</code> specifies a listener for FTP tunneling \n  (also the FTP data channels are tunneled)</p></li></ul></div><p>The <code class=\"option\">listen-port</code> attribute defines the listener port \n  number on the local client.</p><p>The <code class=\"option\">listen-address</code> attribute can be used to define \n  which network interfaces on the client should be listened. Its value \n  can be an IP address belonging to an interface on the local host. \n  Value <code class=\"option\">0.0.0.0</code> listens to all interfaces. The default is \n  <code class=\"option\">127.0.0.1</code> (localhost loopback address on the client). \n  Setting any other value requires that <code class=\"option\">allow-relay=\"yes\"</code>.</p><p>The <code class=\"option\">dst-host</code> and <code class=\"option\">dst-port</code> attributes \n    define the destination host address and port. The value of \n    <code class=\"option\">dst-host</code> can be either an IP address or a domain name. \n    The default is <code class=\"option\">127.0.0.1</code> (localhost = server host).</p><a class=\"indexterm\" name=\"id2627617\"></a><p>The <code class=\"option\">allow-relay</code> attribute defines whether \n      connections to the listened port are allowed from outside the \n      client host. The default is <code class=\"option\">no</code>.</p><p>The <code class=\"option\">profile</code> attribute specifies the connection profile id that is used for the tunnel.</p></dd></dl></div><pre class=\"programlisting\">&lt;static-tunnels&gt;\n  &lt;tunnel type=\"tcp\"\n          listen-address=\"127.0.0.1\"\n          listen-port=\"9000\"\n          dst-host=\"st.example.com\"\n          dst-port=\"9000\"\n          allow-relay=\"no\"\n          profile=\"id1\" /&gt;\n&lt;/static-tunnels&gt;\n</pre></div><div class=\"refsect1\" lang=\"en\"><a name=\"id2627668\"></a><h2>The <code class=\"option\">gui</code> Element</h2><p>The <code class=\"option\">gui</code> element is used to adjust the SSH Tectia terminal \nGUI settings. The <code class=\"option\">gui</code> element takes the following attributes: \n\n <code class=\"option\">hide-tray-icon</code>, <code class=\"option\">show-exit-button</code>, \n <code class=\"option\">show-admin</code>, <code class=\"option\">enable-connector</code>, \n and <code class=\"option\">show-security-notification</code>. The last two settings have \n effect only when transparent TCP tunneling is activated on \n the system.\n \nAll of these must have  <code class=\"option\">yes</code> or <code class=\"option\">no</code> as the \nvalue.</p><p>The <code class=\"option\">hide-tray-icon</code> attribute\tcontrols whether the SSH Tectia \nicon is displayed in the system tray. The default is \n<code class=\"option\">no</code> (the tray icon is displayed).</p><p>The <code class=\"option\">show-exit-button</code> attribute controls whether the \n<span><strong class=\"command\">Exit</strong></span> command is displayed in the shortcut menu of the SSH Tectia icon. \nThe default is <code class=\"option\">yes</code>.</p><p>The <code class=\"option\">show-admin</code> attribute defines whether the \n<span><strong class=\"command\">Configuration</strong></span> command is displayed in the SSH Tectia icon \nshortcut menu. The default is <code class=\"option\">yes</code>. If the button is not \ndisplayed, the SSH Tectia Configuration tool can be started by running \n<code class=\"option\">ssh-tectia-configuration.exe</code>, located by default in directory \n\"<code class=\"filename\">C:\\Program Files\\SSH Communications Security\\SSH Tectia\\SSH Tectia Broker</code>\". </p><p>The <code class=\"option\">enable-connector</code> attribute \ndefines whether transparent TCP tunneling is active and capturing \napplication connections for tunneling. The default is \n<code class=\"option\">yes</code>.</p><p>On Windows, the <code class=\"option\">show-security-notification</code> attribute \ndefines whether the SSH Tectia security notifications are shown upon establishing or \nclosing transparent TCP or FTP tunnels. The default is <code class=\"option\">yes</code>.</p><pre class=\"programlisting\">&lt;gui hide-tray-icon=\"no\"\n     show-exit-button=\"yes\"\n     show-admin=\"yes\"\n     enable-connector=\"yes\"\n     show-security-notification=\"yes\" /&gt;\n</pre></div><div class=\"refsect1\" lang=\"en\"><a name=\"brokerconfig-filters\"></a><h2>The <code class=\"option\">filter-engine</code> Element</h2><a class=\"indexterm\" name=\"id2627842\"></a><a class=\"indexterm\" name=\"id2627851\"></a><p>The <code class=\"option\">filter-engine</code> element handles the \nsettings related to transparent TCP tunneling that has to be separately selected when \ninstalling the SSH Tectia Client.</p><div class=\"note\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Note\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Note]\" src=\"images/note.gif\"></td><th align=\"left\">Note</th></tr><tr><td align=\"left\" valign=\"top\"><p>The <code class=\"option\">filter-engine</code> element is read from the global \nconfiguration file, if such a file is available (SSH Tectia Client/ConnectSecure is controlled \nby SSH Tectia Manager). Only when the global configuration file does not contain the \n<code class=\"option\">filter-engine</code> element, this element is read from the \nuser-specific configuration file.</p><p>On Unix, the global configuration is stored as \n<code class=\"filename\">/etc/ssh2/ssh-broker-config.xml</code>, and on Windows as \n<code class=\"filename\">\"C:\\Program Files\\SSH Communications Security\\SSH Tectia\\SSH Tectia Broker\\ssh-broker-config.xml\"</code>. \n</p></td></tr></table></div><p>For configuration examples, see these sample files:</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><p>On Unix: <code class=\"filename\">etc/ssh2/ssh-broker-config-example-capture.xml</code> and \n<code class=\"filename\">etc/ssh2/ssh-broker-config-example.xml</code></p></li><li><p>On Windows: \"<code class=\"filename\">&lt;INSTALLDIR&gt;\\SSH Tectia Broker\\ssh-broker-config-example-capture.xml</code>\" and\n\"<code class=\"filename\">&lt;INSTALLDIR&gt;\\SSH Tectia Broker\\ssh-broker-config-example.xml</code>\"</p></li></ul></div><p>The top level element is <code class=\"option\">filter-engine</code>. It has two \nattributes: <code class=\"option\">ip-generate-start</code> and \n<code class=\"option\">ftp-filter-at-signs</code> (used with SSH Tectia ConnectSecure, only).</p><p>The <code class=\"option\">ip-generate-start</code> attribute defines the start address \nof the pseudo IP address space. Pseudo IPs are generated by the Connection Broker when \napplications do the DNS query through the SSH connection capture component.</p><p>With SSH Tectia ConnectSecure, the <code class=\"option\">ftp-filter-at-signs</code> attribute can be used with \nFTP-SFTP conversion when scripts are used to open a connection directly from \nthe FTP/SFTP client to the SFTP server, bypassing any proxies. This attribute \ndefines that SSH Tectia ConnectSecure uses the FTP user name, FTP server name, and FTP server \npassword specified in the FTP script.</p><p> The FTP script is expected to specify the username in format \n<code class=\"option\">ftp-user@proxy-user@ftp-server</code> and the password in format \n<code class=\"option\">ftp-password@proxy-password</code>. The @ sign is used to \nextract the relevant data from the strings.</p><p> The <code class=\"option\">ftp-filter-at-signs</code> takes <code class=\"option\">yes</code> and \n<code class=\"option\">no</code> as values, <code class=\"option\">no</code> is the default.</p><p>When <code class=\"option\">ftp-filter-at-signs=\"yes\"</code>, SSH Tectia ConnectSecure cuts the username \nstring at the first @ sign to extract the <code class=\"option\">ftp-user</code> and \nat the last @ sign to extract the <code class=\"option\">ftp-server</code>, and the \nrest of the string is ignored. Likewise, the passwords string is cut at the \nlast @ sign and the first part is used as the password on the SFTP \nserver.</p><div class=\"note\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Note\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Note]\" src=\"images/note.gif\"></td><th align=\"left\">Note</th></tr><tr><td align=\"left\" valign=\"top\"><p>Under the <code class=\"option\">filter-engine</code> \nelement there can be any amount of elements \n<code class=\"option\">network</code>, <code class=\"option\">dns</code>, <code class=\"option\">filter</code>, or <code class=\"option\">rule</code>. \nThe order of the elements is important, because the filter engine uses the elements in \nthe order they were specified in the configuration file.</p></td></tr></table></div><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">network</strong></span>\n<a class=\"indexterm\" name=\"id2628100\"></a>\n<a class=\"indexterm\" name=\"id2628109\"></a>\n\n</span></dt><dd><p>The <code class=\"option\">network</code> element specifies a \"location\" \n    where SSH Tectia Client/ConnectSecure is running. By using the <code class=\"option\">network</code> \n    element, you can implement location-awareness for SSH Tectia Client/ConnectSecure.\n    It has four attributes: <code class=\"option\">id</code>, <code class=\"option\">address</code>, \n    <code class=\"option\">domain</code>, and <code class=\"option\">ip-generate-start</code>.</p><p>The <code class=\"option\">id</code> attribute specifies a unique identifier for the \n    <code class=\"option\">network</code> element. The <code class=\"option\">address</code> attribute specifies the \n    address of the network. It can be missing or empty, in which case it is \n    not used. The <code class=\"option\">domain</code> attribute contains the domain name of \n    the computer. It can also be missing or empty, in which case it is not \n    used. The <code class=\"option\">ip-generate-start</code> attribute defines the start \n    address of the pseudo IP space. If it is defined here, it overrides the \n    <code class=\"option\">ip-generate-start</code> attribute of the <code class=\"option\">filter-engine</code> \n    element.</p></dd><dt><span class=\"term\"><span><strong class=\"command\">dns</strong></span>\n<a class=\"indexterm\" name=\"id2628195\"></a>\n<a class=\"indexterm\" name=\"id2628204\"></a>\n</span></dt><dd><div class=\"note\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Note\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Note]\" src=\"images/note.gif\"></td><th align=\"left\">Note</th></tr><tr><td align=\"left\" valign=\"top\"><p>The <code class=\"option\">dns</code> element exists for backward-compatibility reasons. \n    Currently the <code class=\"option\">rule</code> element is used for the same settings.</p></td></tr></table></div><p>The <code class=\"option\">dns</code> element creates a DNS rule for the \n    filter engine. It has six attributes: <code class=\"option\">id</code>, \n    <code class=\"option\">network-id</code>, <code class=\"option\">application</code>, \n    <code class=\"option\">host</code>, <code class=\"option\">ip-address</code>, and \n    <code class=\"option\">pseudo-ip</code>. \n    <span>For their descriptions, see \n    <a href=\"ssh-broker-config.html#brokerconfig-rule-element\"><span><strong class=\"command\">rule</strong></span></a> below.</span>\n    </p></dd><dt><span class=\"term\"><span><strong class=\"command\">filter</strong></span>\n<a class=\"indexterm\" name=\"id2628282\"></a>\n<a class=\"indexterm\" name=\"id2628291\"></a>\n</span></dt><dd><div class=\"note\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Note\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Note]\" src=\"images/note.gif\"></td><th align=\"left\">Note</th></tr><tr><td align=\"left\" valign=\"top\"><p>The <code class=\"option\">filter</code> element exists for backward-compatibility reasons. \n    Currently the <code class=\"option\">rule</code> element is used for the same settings.</p></td></tr></table></div><p>The <code class=\"option\">filter</code> element specifies an action for a \n    connection. It has the following attributes: \n    <code class=\"option\">dns-id</code>, <code class=\"option\">ports</code>, \n    <code class=\"option\">action</code>, <code class=\"option\">profile-id</code>, \n    <code class=\"option\">destination</code>, <code class=\"option\">destination-port</code>,\n    <code class=\"option\">fallback-to-plain</code>.</p><p>The <code class=\"option\">dns-id</code> attribute is a reference to a \n    <code class=\"option\">dns</code> element. </p><p>For the descriptions of the other \n    attributes, see <a href=\"ssh-broker-config.html#brokerconfig-rule-element\"><span><strong class=\"command\">rule</strong></span></a> below.</p></dd><dt><a name=\"brokerconfig-rule-element\"></a><span class=\"term\"><span><strong class=\"command\">rule</strong></span></span></dt><dd><a class=\"indexterm\" name=\"id2628424\"></a><a class=\"indexterm\" name=\"id2628433\"></a><p>The <code class=\"option\">rule</code> element specifies how a filtered connection\n    will be handled. It has the following attributes: \n    <code class=\"option\">application</code>, <code class=\"option\">host</code>, \n    <code class=\"option\">ip-address</code>, <code class=\"option\">pseudo-ip</code>, \n    <code class=\"option\">ports</code>, <code class=\"option\">action</code>, \n    <code class=\"option\">profile-id</code>, <code class=\"option\">destination</code>, \n    <code class=\"option\">destination-port</code>, <code class=\"option\">username</code>,\n    <code class=\"option\">hostname-from-app</code>, <code class=\"option\">username-from-app</code>,\n    <code class=\"option\">fallback-to-plain</code>.</p><p>The <code class=\"option\">application</code> attribute can be used to specify one or more \n    applications to which the rule is applied. This can be a regular \n    expression using the egrep syntax. \n    <span>For information on the syntax, \n    see <a href=\"egrep-syntax.html\" title=\"Appendix D Egrep Syntax\">Appendix D</a>.</span></p><p>The <code class=\"option\">host</code> attribute specifies a target hostname. It \n    can be a regular expression using the egrep syntax.</p><p>The <code class=\"option\">ip-address</code> attribute specifies the target host \n    IP address. It can be a regular expression using the egrep syntax. \n    If both the hostname and the IP address are defined, the <code class=\"option\">host</code> \n    attribute takes \n    precedence and the <code class=\"option\">ip-address</code> attribute is ignored.</p><p>The <code class=\"option\">pseudo-ip</code> setting has the following effects \n    when the <code class=\"option\">ip-address</code> is left empty and the <code class=\"option\">host</code> \n    matches:</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><p>When <code class=\"option\">pseudo-ip=\"yes\"</code>, the Connection Broker assigns \n      a pseudo IP address for the target host and SSH Tectia Server resolves the real \n      IP address. The pseudo IP addresses should be used when accessing an internal \n      network from the outside, because name resolution for the machines in \n      the internal network is not available from the outside.</p></li><li><p>When <code class=\"option\">pseudo-ip=\"no\"</code>, a normal DNS query \n      is made for the target hostname. The default value is <code class=\"option\">no</code>.\n      </p></li></ul></div><p>The <code class=\"option\">ports</code> attribute can be a single port or a range. \n    A range is specified with a hyphen between two integers (for example\n    <code class=\"option\">\"21-25\"</code>).</p><div class=\"note\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Note\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Note]\" src=\"images/note.gif\"></td><th align=\"left\">Note</th></tr><tr><td align=\"left\" valign=\"top\"><p>For FTP-SFTP conversion, always specify the port unambiguosly if \nfallback mode is set. Do not use an asterisk (*), because it causes problems \nin passive mode file transfer when connected to a plaintext FTP server.</p></td></tr></table></div><p>The <code class=\"option\">action</code> attribute specifies the action to be done \n    when a filter matches. Its value can be <code class=\"option\">DIRECT</code>, \n    <code class=\"option\">BLOCK</code>, <code class=\"option\">TUNNEL</code>, <code class=\"option\">FTP-TUNNEL</code>, or \n    <code class=\"option\">FTP-PROXY</code>.</p><div class=\"itemizedlist\"><ul type=\"disc\"><li><p><code class=\"option\">DIRECT</code> causes the connection \n      to be made directly as plaintext without tunneling or FTP-SFTP \n      conversion.</p></li><li><p><code class=\"option\">BLOCK</code> causes the connection to be \n      blocked.</p></li><li><p><code class=\"option\">FTP-TUNNEL</code> activates transparent FTP\n      tunneling\n      </p></li><li><p><code class=\"option\">TUNNEL</code> activates transparent TCP\n      tunneling </p></li><li><p><code class=\"option\">FTP-PROXY</code> causes the FTP-SFTP conversion \n      to start and a connection to be made to the Secure Shell SFTP server. \n      </p></li></ul></div><p>The <code class=\"option\">profile-id</code> attribute can be used to specify the \n    connection profile that defines the connection settings.</p><p>If the <code class=\"option\">profile-id</code> attribute is left empty and \n    <code class=\"option\">hostname-from-app=\"yes\"</code> is specified, the Secure Shell \n    connection is made to the server specified by the client application \n    using default settings. If a <code class=\"option\">profile-id</code> is specified and \n    also <code class=\"option\">hostname-from-app=\"yes\"</code> is specified, or the referred \n    profile has <code class=\"option\">*</code> (an asterisk) or empty as the value of the \n    <code class=\"option\">host</code> attribute, the Secure Shell connection is made to the \n    server specified by the client application using the profile \n    settings.</p><p>The <code class=\"option\">destination</code> and <code class=\"option\">destination-port</code> \n    attributes can be used to define a static destination address and port number \n    that will be used as the end point of the connection instead of the \n    original address and port given by the application.</p><p>The <code class=\"option\">username</code> attribute can be used to define the user \n    name used for connecting to the Secure Shell server, or you can define the \n    path from where the Connection Broker should retrieve the user name.</p><p>The <code class=\"option\">hostname-from-app</code> attribute defines whether the \n    Connection Broker should extract the Secure Shell server's host name from data sent \n    by the application, or use a Secure Shell server defined by the \n    connection profile in <code class=\"option\">profile-id</code>. The value is \n    <code class=\"option\">yes</code> or <code class=\"option\">no</code>, and the default is \n    <code class=\"option\">no</code>.</p><p>When <code class=\"option\">hostname-from-app=\"no\"</code>, the tunnel \n     will be \n    created to the Secure Shell server specified in the connection profile \n    referred in the <code class=\"option\">profile-id</code> attribute. Note that with \n    transparent tunneling, the connection from the Secure Shell server to \n    the final destination application will be unsecured and in plaintext. To \n    achieve end-to-end security, the Secure Shell server should reside on \n    the same host as the application.</p><p>When <code class=\"option\">hostname-from-app=\"yes\"</code>, the tunnel \n     will be \n    created to the destination server specified by the application.  \n    This setting can be used with both FTP and TCP tunneling and FTP-SFTP conversion.\n    When using <code class=\"option\">hostname-from-app=\"yes\"</code>, it is no longer necessary \n    to create a separate connection profile for each destination host. Note \n    that this requires that a Secure Shell server is installed to each\n    destination server (or that <code class=\"option\">fallback-to-plain</code> is enabled to \n    allow direct connections to those servers that do not have Secure \n    Shell installed).</p><p>The <code class=\"option\">username-from-app</code> attribute defines whether the \n    FTP tunneling or FTP-SFTP conversion extracts the user name from data \n    sent by the FTP application. The value is <code class=\"option\">yes</code> or \n    <code class=\"option\">no</code>. The default is <code class=\"option\">no</code>.</p><p>When <code class=\"option\">username-from-app=\"yes\"</code>, the user name received \n    from the FTP client application is used. This setting can be used with FTP \n    tunneling and FTP-SFTP conversion. This setting will override any user \n    name settings made in a related connection profile. When \n    <code class=\"option\">username-from-app=\"no\"</code>, the user name is taken from the \n    connection profile defined with the <code class=\"option\">profile-id</code> attribute.</p><p>The <code class=\"option\">fallback-to-plain</code> attribute can be used to define \n    whether a direct (unsecured) connection is used if creating the \n    tunnel fails or the connection to the Secure Shell server fails. \n    The default value is <code class=\"option\">no</code>.\n    Normally, when the secured connection fails when applying a filter rule, \n    the Connection Broker will return a \"host not reachable\" error. \n    \n    \n    </p><div class=\"note\" style=\"margin-left: 0.5in; margin-right: 0.5in;\"><table border=\"0\" summary=\"Note\"><tr><td rowspan=\"2\" align=\"center\" valign=\"top\" width=\"25\"><img alt=\"[Note]\" src=\"images/note.gif\"></td><th align=\"left\">Note</th></tr><tr><td align=\"left\" valign=\"top\"><p>Do not enable the <code class=\"option\">fallback-to-plain</code> and \n    <code class=\"option\">pseudo-ip</code> options at the same time. If they both are enabled, \n    and a secure connection fails, the application will try a direct connection \n    with the pseudo IP, which will not work.</p></td></tr></table></div></dd></dl></div></div><div class=\"refsect1\" lang=\"en\"><a name=\"id2628954\"></a><h2>The <code class=\"option\">logging</code> Element</h2><a class=\"indexterm\" name=\"id2628963\"></a><a class=\"indexterm\" name=\"id2628970\"></a><a class=\"indexterm\" name=\"id2628977\"></a><a class=\"indexterm\" name=\"id2628983\"></a><a class=\"indexterm\" name=\"id2628993\"></a><a class=\"indexterm\" name=\"id2629002\"></a><p>The <code class=\"option\">logging</code> element changes the logging settings that \ndefine the log event severities and logging facilities. The element contains \none or more <code class=\"option\">log-target</code> and <code class=\"option\">log-events</code> elements.</p><div class=\"variablelist\"><dl><dt><span class=\"term\"><span><strong class=\"command\">log-target</strong></span></span></dt><dd><p>This element specifies the log target for auditing. By default, the broker \ndoes not log anything. This element can be used to direct log data to a \nfile or syslog.</p><a class=\"indexterm\" name=\"id2629047\"></a><p>The <code class=\"option\">log-target</code> element can have <code class=\"option\">file</code> and <code class=\"option\">type</code> as attributes.</p><p>The <code class=\"option\">type</code> attribute specifies the logging facility \nwhere the audit data is output to. The value can be <code class=\"option\">file</code>, \n<code class=\"option\">syslog</code> or <code class=\"option\">discard</code>.</p><p>The <code class=\"option\">file</code> attribute sets the file system path where \nthe audit data is written to. If the <code class=\"option\">type</code> attribute has \n<code class=\"option\">syslog</code> or <code class=\"option\">discard</code> set, the \n<code class=\"option\">file</code> attribute is not allowed.</p></dd><dt><span class=\"term\"><span><strong class=\"command\">log-events</strong></span></span></dt><dd><p>This element sets the severity and facility of different \n  logging events. The events have reasonable default values, \n  which are used if no explicit logging settings are made. This \n  setting allows customizing the default values.</p><p> The element can also contain one or more \n  <code class=\"option\">log-target</code> elements. When defined here, the \n  <code class=\"option\">log-target</code> element will override the definition given in the \n  <code class=\"option\">logging</code>/<code class=\"option\">log-target</code>.</p><a class=\"indexterm\" name=\"id2629172\"></a><p>For the events, <code class=\"option\">facility</code> and \n  <code class=\"option\">severity</code> can be set as attributes. The events \n  itself should be listed inside the <code class=\"option\">log-events</code> \n  element.</p><p>The facility can be <code class=\"option\">normal</code>, <code class=\"option\">daemon</code>, \n  <code class=\"option\">user</code>, <code class=\"option\">auth</code>, <code class=\"option\">local0</code>, \n  <code class=\"option\">local1</code>, <code class=\"option\">local2</code>, <code class=\"option\">local3</code>, \n  <code class=\"option\">local4</code>, <code class=\"option\">local5</code>, <code class=\"option\">local6</code>, \n  <code class=\"option\">local7</code>, or <code class=\"option\">discard</code>. Setting the \n  facility to <code class=\"option\">discard</code> causes the server to ignore \n  the specified log events.</p><p>On Windows, only the <code class=\"option\">normal</code> and \n  <code class=\"option\">discard</code> facilities are used.</p><p>The severity can be <code class=\"option\">informational</code>, \n  <code class=\"option\">notice</code>, <code class=\"option\">warning</code>, <code class=\"option\">error</code>, \n  <code class=\"option\">critical</code>, <code class=\"option\">security-success</code>, or \n  <code class=\"option\">security-failure</code>. </p><p>Any events that are not specifically defined in the \n  configuration file will use the default values. The defaults \n  can be overridden for all remaining events by giving an empty \n  <code class=\"option\">log-events</code> element after all other definitions \n  and by setting a severity value for it.</p><p>In the names of log events, the characters '*' and '?' can be used as wildcars.</p><p>For a complete list of log events, see \n<a href=\"broker-auditmessages.html\" title=\"Appendix E Audit Messages\">Appendix E</a>.</p></dd></dl></div><p>An example logging configuration that logs all events, which are \nprogrammed to be logged by default, both to <code class=\"filename\">/tmp/foo</code> \nand to <code class=\"filename\">syslog</code>.</p><pre class=\"programlisting\">&lt;logging&gt;\n  &lt;log-target file=\"/tmp/foo\" /&gt;\n  &lt;log-target type=\"syslog\" /&gt;\n&lt;/logging&gt;\n</pre><p>An example logging configuratin in which events are logged to \n<code class=\"filename\">/tmp/foo</code>, except those whose event name matches \n\"<code class=\"code\">Key_store_*</code>\", which will be discarded.</p><pre class=\"programlisting\">&lt;logging&gt;\n  &lt;log-target file=\"/tmp/foo\" /&gt;\n  &lt;log-events facility=\"discard\"&gt;\n    Key_store_*\n  &lt;/log-events&gt;\n&lt;/logging&gt;\n</pre></div></div><div class=\"navfooter\"><table width=\"100%\" summary=\"Navigation footer\"><hr><tr><td width=\"40%\" align=\"left\"></td><th width=\"20%\" align=\"center\"></th><td width=\"40%\" align=\"right\"><a accesskey=\"h\" href=\"index.html\"><img src=\"images/home.gif\" alt=\"Home\"></a><a href=\"ix01.html\"><img src=\"images/index.gif\"></a> <a accesskey=\"p\" href=\"apas02.html\"><img src=\"images/prev.gif\" alt=\"Prev\"></a> <a accesskey=\"u\" href=\"apas02.html\"><img src=\"images/up.gif\" alt=\"Up\"></a> <a accesskey=\"n\" href=\"broker-config-backup.html\"><img src=\"images/next.gif\" alt=\"Next\"></a>  </td></tr></table></div><div class=\"copyrightfooter\" align=\"center\"><p class=\"footer\">\n  Copyright <img src=\"images/copyright.gif\"> 2010 SSH Communications Security Corp.<br>\n  This software is protected by international copyright laws. All rights reserved.<br><a href=\"http://www.ssh.com/company/contact/\">Contact Information</a></p></div></div>","head":"<head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"><title>ssh-broker-config</title><link rel=\"stylesheet\" href=\"sshx.css\" type=\"text/css\"><meta name=\"generator\" content=\"DocBook XSL Stylesheets V1.68.0\"><link rel=\"start\" href=\"index.html\" title=\" SSH Tectia® Client 6.1\"><link rel=\"up\" href=\"apas02.html\" title=\"Configuration File for Connection Broker\"><link rel=\"prev\" href=\"apas02.html\" title=\"Configuration File for Connection Broker\"><link rel=\"next\" href=\"broker-config-backup.html\" title=\"Backup of Configuration Files\"></head>","url":"/manuals/client-user/61/ssh-broker-config.html"}}}