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.
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
Create a user account different from root with a password.²
- Add the user to the sshd group in:
/etc/group
=>sshd:x:6:user1
- Start by executing:
/usr/sbin/sshd
For QNX 6.6.0, you have to do in addition:
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)
Create folders accordingly to fit this path
/var/chroot/sshd/
If you want to use SFTP:
- Create/Use the file
/etc/ssh/sshd_config
and enableSubsystem 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