How do you install an ssh server on qnx?

If you want to start a SSH server to transfer files easily. The SSH daemon (sshd) is already installed, but the 'configuration' is missing.

  1. Create the keys (do NOT use a password):¹

    random -t
    ssh-keygen -t rsa -f /etc/ssh/ssh_host_key -b 1024
    ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
    ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key
    
  2. Create a user account different from root with a password.²

  3. Add the user to the sshd group in: /etc/group => sshd:x:6:user1
  4. Start by executing: /usr/sbin/sshd

For QNX 6.6.0, you have to do in addition:

  1. Create another key

    ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key
    

    (The ECDSA key generation is only necessary for QNX 6.6.0 - see also here)

  2. Create folders accordingly to fit this path /var/chroot/sshd/

If you want to use SFTP:

  1. Create/Use the file /etc/ssh/sshd_config and enable Subsystem sftp /usr/libexec/sftp-server by adding this line to the file

Some steps are also covered here on the QNX manual about sshd command.


¹ Here: the folder ssh/ was created in /etc/ and make sure the files belong to the user running the sshd!

² (i.e. direct root access via ssh is disabled by default but can be enabled by specifying PermitRootLogin yes in the /etc/ssh/sshd_config) file


QNX have removed support for packages since version 6.4. This means that it is difficult to install SSH and SSL from the 3rd Party Applications CD, because the utilities required arent there anymore.

It turns out their qpk file package is really just a tgz in disguise. So what you can do is untar the openssl and openssh packages. It will create a file structure like public/core-//opt All you need to do is copy all of the contents from /opt to /, and then add /opt/bin:/opt/sbin to your path, and /opt/lib to your LD_LIBRARY_PATH.

Other things to note are:

  • your random number generator needs to be started (random -t)
  • you will need to set up a new /etc/openssh/sshd_config if you want to use the server, I copied mine from a Ubuntu machine
  • You will need to generate keys, there is lots of information on doing this online

From what I have read, QNX 6.4.1 should come pre-installed with ssh. I am yet to confirm this

Tags:

Ssh

Qnx