<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://m204wiki.rocketsoftware.com/index.php?action=history&amp;feed=atom&amp;title=Janus_SSH</id>
	<title>Janus SSH - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://m204wiki.rocketsoftware.com/index.php?action=history&amp;feed=atom&amp;title=Janus_SSH"/>
	<link rel="alternate" type="text/html" href="https://m204wiki.rocketsoftware.com/index.php?title=Janus_SSH&amp;action=history"/>
	<updated>2026-08-28T11:37:15Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://m204wiki.rocketsoftware.com/index.php?title=Janus_SSH&amp;diff=120972&amp;oldid=prev</id>
		<title>Alex: Create Janus SSH page: SSH server port type, RSA public-key trusted login, JANUS TRUST/DELTRUST/DISPLAYTRUST/DISTOFU/SSHKEY commands, TOFU (new in 8.0)</title>
		<link rel="alternate" type="text/html" href="https://m204wiki.rocketsoftware.com/index.php?title=Janus_SSH&amp;diff=120972&amp;oldid=prev"/>
		<updated>2026-08-27T01:40:53Z</updated>

		<summary type="html">&lt;p&gt;Create Janus SSH page: SSH server port type, RSA public-key trusted login, JANUS TRUST/DELTRUST/DISPLAYTRUST/DISTOFU/SSHKEY commands, TOFU (new in 8.0)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;var class=&amp;quot;product&amp;quot;&amp;gt;Janus SSH&amp;lt;/var&amp;gt; is part of the Janus family of products that provides connectivity to the &amp;lt;var class=&amp;quot;product&amp;quot;&amp;gt;Model&amp;amp;nbsp;204&amp;lt;/var&amp;gt; database. A Janus SSH port is a built-in SSH (Secure Shell) server that lets users connect to a &amp;lt;var class=&amp;quot;product&amp;quot;&amp;gt;Model&amp;amp;nbsp;204&amp;lt;/var&amp;gt; &amp;lt;var class=&amp;quot;product&amp;quot;&amp;gt;Online&amp;lt;/var&amp;gt; from a standard SSH client over an encrypted connection, obtaining an interactive &amp;lt;var class=&amp;quot;product&amp;quot;&amp;gt;Model&amp;amp;nbsp;204&amp;lt;/var&amp;gt; command session.&lt;br /&gt;
&lt;br /&gt;
Janus SSH was introduced in &amp;lt;var class=&amp;quot;product&amp;quot;&amp;gt;Model&amp;amp;nbsp;204&amp;lt;/var&amp;gt; version 8.0. Like the other Janus products, it requires the &amp;lt;var class=&amp;quot;product&amp;quot;&amp;gt;[[Janus TCP/IP Base]]&amp;lt;/var&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The SSH server implements the standard SSH transport, authentication, and connection protocols (RFC&amp;amp;nbsp;4250, RFC&amp;amp;nbsp;4253, and RFC&amp;amp;nbsp;4254). The following algorithms are supported:&lt;br /&gt;
&amp;lt;table&amp;gt;&lt;br /&gt;
&amp;lt;tr class=&amp;quot;head&amp;quot;&amp;gt;&amp;lt;th&amp;gt;Function&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Algorithm&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Key exchange&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;diffie-hellman-group14-sha256&amp;lt;/code&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Host and user keys&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;rsa-sha2-256&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;ssh-rsa&amp;lt;/code&amp;gt; (RSA)&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Encryption&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;aes256-ctr&amp;lt;/code&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&amp;lt;td&amp;gt;Message authentication&amp;lt;/td&amp;gt;&amp;lt;td&amp;gt;&amp;lt;code&amp;gt;hmac-sha2-256&amp;lt;/code&amp;gt;&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Defining a Janus SSH port==&lt;br /&gt;
An SSH port is defined with the &amp;lt;var&amp;gt;[[JANUS DEFINE]]&amp;lt;/var&amp;gt; command, using the &amp;lt;var&amp;gt;SSH&amp;lt;/var&amp;gt; port type. The server&amp;#039;s host key is supplied by an &amp;lt;var&amp;gt;SSL PROFILE&amp;lt;/var&amp;gt;, in the same way as for Janus SSL ports. For example:&lt;br /&gt;
&lt;br /&gt;
 JANUS DEFINE SSHPORT 5996 SSH 10 IBSIZE 4096 OBSIZE 8192 -&lt;br /&gt;
       SSL PROFILE SSH.PKEY SSLCACHE 80 SSLIBSIZE 16512 SSLOBSIZE 4096&lt;br /&gt;
&lt;br /&gt;
In this example, &amp;lt;code&amp;gt;SSHPORT&amp;lt;/code&amp;gt; is the port name, &amp;lt;code&amp;gt;5996&amp;lt;/code&amp;gt; is the TCP port number, &amp;lt;code&amp;gt;SSH&amp;lt;/code&amp;gt; is the port type, and &amp;lt;code&amp;gt;10&amp;lt;/code&amp;gt; is the maximum number of concurrent connections. The &amp;lt;var&amp;gt;SSL PROFILE&amp;lt;/var&amp;gt; names the certificate profile that provides the server&amp;#039;s RSA host key.&lt;br /&gt;
&lt;br /&gt;
Once the port is started with the &amp;lt;var&amp;gt;[[JANUS START]]&amp;lt;/var&amp;gt; command, users can connect with any standard SSH client:&lt;br /&gt;
&lt;br /&gt;
 ssh -p 5996 myuserid@myhost.example.com&lt;br /&gt;
&lt;br /&gt;
==Authentication==&lt;br /&gt;
Janus SSH supports two forms of user authentication:&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;b&amp;gt;Password authentication&amp;lt;/b&amp;gt; &amp;amp;mdash; the user supplies a &amp;lt;var class=&amp;quot;product&amp;quot;&amp;gt;Model&amp;amp;nbsp;204&amp;lt;/var&amp;gt; userid and password, which are validated the same way as for any other &amp;lt;var class=&amp;quot;product&amp;quot;&amp;gt;Model&amp;amp;nbsp;204&amp;lt;/var&amp;gt; login.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;b&amp;gt;Public-key (trusted) authentication&amp;lt;/b&amp;gt; &amp;amp;mdash; the user is authenticated by an RSA SSH public key that has been registered as trusted for that userid on the port, so no password is required.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Trusted public-key login==&lt;br /&gt;
With trusted public-key login, an RSA public key is associated with a &amp;lt;var class=&amp;quot;product&amp;quot;&amp;gt;Model&amp;amp;nbsp;204&amp;lt;/var&amp;gt; userid on a specific SSH port. When a user connects and offers a private key whose public key is registered for the userid, the user is logged in without a password.&lt;br /&gt;
&lt;br /&gt;
The following commands manage trusted keys. Each command applies to SSH ports only.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;table&amp;gt;&lt;br /&gt;
&amp;lt;tr class=&amp;quot;head&amp;quot;&amp;gt;&amp;lt;th&amp;gt;Command&amp;lt;/th&amp;gt;&lt;br /&gt;
&amp;lt;th&amp;gt;Description&amp;lt;/th&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td nowrap&amp;gt;&amp;lt;var&amp;gt;JANUS TRUST&amp;lt;/var&amp;gt; &amp;#039;&amp;#039;portname userid base64key&amp;#039;&amp;#039;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Registers a trusted SSH public key for &amp;#039;&amp;#039;userid&amp;#039;&amp;#039; on the named SSH port. &amp;#039;&amp;#039;base64key&amp;#039;&amp;#039; is the base64-encoded public key blob (the middle field of an OpenSSH &amp;lt;code&amp;gt;id_rsa.pub&amp;lt;/code&amp;gt; line). The key data may be continued across command lines.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td nowrap&amp;gt;&amp;lt;var&amp;gt;JANUS DELTRUST&amp;lt;/var&amp;gt; &amp;#039;&amp;#039;portname userid&amp;#039;&amp;#039;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Removes the trusted key for &amp;#039;&amp;#039;userid&amp;#039;&amp;#039; on the named port.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td nowrap&amp;gt;&amp;lt;var&amp;gt;JANUS DISPLAYTRUST&amp;lt;/var&amp;gt; [&amp;#039;&amp;#039;portname&amp;#039;&amp;#039;]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Displays the trusted keys registered on the named port, or on all ports if &amp;#039;&amp;#039;portname&amp;#039;&amp;#039; is omitted or is &amp;lt;code&amp;gt;*&amp;lt;/code&amp;gt;. &amp;lt;var&amp;gt;DISTRUST&amp;lt;/var&amp;gt; is an accepted abbreviation.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td nowrap&amp;gt;&amp;lt;var&amp;gt;JANUS DISTOFU&amp;lt;/var&amp;gt; [&amp;#039;&amp;#039;portname&amp;#039;&amp;#039;]&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Displays keys that were automatically registered by trust-on-first-use (TOFU). &amp;lt;var&amp;gt;DISPLAYTOFU&amp;lt;/var&amp;gt; is a synonym.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;tr&amp;gt;&lt;br /&gt;
&amp;lt;td nowrap&amp;gt;&amp;lt;var&amp;gt;JANUS SSHKEY&amp;lt;/var&amp;gt;&amp;lt;/td&amp;gt;&lt;br /&gt;
&amp;lt;td&amp;gt;Displays the SSH public key that the current user authenticated with. This is a convenient way for a user to obtain the exact key blob to hand to an administrator for a &amp;lt;var&amp;gt;JANUS TRUST&amp;lt;/var&amp;gt; command.&amp;lt;/td&amp;gt;&amp;lt;/tr&amp;gt;&lt;br /&gt;
&amp;lt;/table&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example, to trust a user&amp;#039;s key on the port defined above:&lt;br /&gt;
&lt;br /&gt;
 JANUS TRUST SSHPORT MYUSER AAAAB3NzaC1yc2EAAAADAQAB...&lt;br /&gt;
&lt;br /&gt;
==Trust-on-first-use (TOFU)==&lt;br /&gt;
Trust-on-first-use lets an SSH port automatically register a user&amp;#039;s public key the first time that user connects and authenticates, so that subsequent connections use public-key login without further administration.&lt;br /&gt;
&lt;br /&gt;
TOFU is enabled by specifying the &amp;lt;var&amp;gt;TOFU&amp;lt;/var&amp;gt; option on the &amp;lt;var&amp;gt;[[JANUS DEFINE]]&amp;lt;/var&amp;gt; command for an SSH port, with a maximum number of keys to retain (1 to 9999):&lt;br /&gt;
&lt;br /&gt;
 JANUS DEFINE SSHPORT 5996 SSH 10 SSL PROFILE SSH.PKEY TOFU 100&lt;br /&gt;
&lt;br /&gt;
Keys registered by TOFU are shown by the &amp;lt;var&amp;gt;JANUS DISTOFU&amp;lt;/var&amp;gt; command. When the maximum count is reached, the least recently used TOFU key is evicted to make room for a new one. Keys added explicitly with &amp;lt;var&amp;gt;JANUS TRUST&amp;lt;/var&amp;gt; are never evicted by TOFU.&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&amp;lt;ul&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;var&amp;gt;[[JANUS DEFINE]]&amp;lt;/var&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;var&amp;gt;[[JANUS START]]&amp;lt;/var&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;var class=&amp;quot;product&amp;quot;&amp;gt;[[Janus TCP/IP Base]]&amp;lt;/var&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;[[Release notes for Model 204 version 8.0#Janus SSH server|Model 204 version 8.0 release notes]]&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Category:Janus SSH]]&lt;br /&gt;
[[Category:Janus commands]]&lt;/div&gt;</summary>
		<author><name>Alex</name></author>
	</entry>
</feed>