Вопрос
Я работаю над устройством qnx, и я хочу иметь возможность подключаться к нему по ssh.У кого-нибудь есть руководство по запуску чего-нибудь вроде OpenSSH?
Решение
В зависимости от того, будет ли это 6.2, 6.3 или 6.4, вы на самом деле сделаете это по-другому.
В 6.2 есть "Установщик" или "Установка программного обеспечения из QNX" в Photon, программе с графическим интерфейсом, которая позволяет загружать и устанавливать ее вроде Fedora's Pup, YaST или подобных.Эквивалентом командной строки является cl-installer .
6.3 не имеет файловой системы пакета 6.2, но поддерживает ее при необходимости.В версии 6.3 самым простым способом было бы получить пакет версии 6.2 из http://download.qnx.com/contrib/repository621a/ , распакуйте его (это просто архив) - вы должны быть в состоянии определить, какой файл куда отправляется.
В 6.4 есть поддержка pkgsrc, которая была бы моим предпочтительным способом сделать это там.
Другие советы
QNX удалила поддержку пакетов начиная с версии 6.4.Это означает, что установить SSH и SSL с компакт-диска сторонних разработчиков сложно, поскольку необходимых утилит там больше нет.
Оказывается, их пакет файлов qpk на самом деле просто замаскированный tgz.Итак, что вы можете сделать, это разархивировать пакеты openssl и openssh.Это создаст файловую структуру типа public/core-//opt Все, что вам нужно сделать, это скопировать все содержимое из /opt в /, а затем добавить /opt/bin:/opt/sbin в свой path и /opt/lib в ваш LD_LIBRARY_PATH.
Другие вещи, на которые следует обратить внимание, это:
- необходимо запустить ваш генератор случайных чисел (random -t).
- вам нужно будет настроить новый файл /etc/openssh/sshd_config, если вы хотите использовать сервер, я скопировал свой с компьютера Ubuntu
- Вам нужно будет сгенерировать ключи, в Интернете есть много информации о том, как это сделать
Из того, что я прочитал, QNX 6.4.1 должен быть предустановлен с ssh.Мне еще предстоит подтвердить это
Если вы хотите запустить SSH-сервер для легкой передачи файлов.SSH-демон (sshd) уже установлен, но "конфигурация" отсутствует.
Создайте ключи (НЕ используйте пароль):1
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
Создайте учетную запись пользователя, отличную от root, с паролем.²
- Добавьте пользователя в группу sshd в:
/etc/group
=>sshd:x:6:user1
- Начните с выполнения:
/usr/sbin/sshd
Для QNX 6.6.0 вы должны дополнительно сделать:
Создайте другой ключ
ssh-keygen -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key
(Генерация ключа ECDSA необходима только для QNX 6.6.0 - смотрите также здесь)
Создавайте папки соответствующим образом, чтобы соответствовать этому пути
/var/chroot/sshd/
Если вы хотите использовать SFTP:
- Создайте / Используйте файл
/etc/ssh/sshd_config
и включитьSubsystem sftp /usr/libexec/sftp-server
добавив эту строку в файл
Также описаны некоторые этапы здесь в руководстве QNX о команде sshd.
¹ Здесь:папка ssh/
был создан в /etc/
и убедитесь, что файлы принадлежат пользователю, использующему sshd!
² (т.е.прямой root-доступ через ssh по умолчанию отключен, но может быть включен путем указания PermitRootLogin yes
в /etc/ssh/sshd_config
) файл
В стандартной системе 6.5, 6.5.0SP1 или 6.6 все, что вам нужно сделать, это создать свои ключи:
ssh-keygen -tdsa -f/etc/ssh/ssh_host_dsa_key
ssh-keygen -trsa -f/etc/ssh/ssh_host_rsa_key
Затем запустите сервер sshd (вам нужно указать полный путь).:
/usr/sbin/sshd
Если что-то не работает, запустите сервер с включенным отладочным выводом, и проблема должна стать очевидной:/usr/sbin/sshd -ddd
Согласно это вы должны иметь возможность установить его с компакт-диска третьего производителя, также доступного здесь: сторонние приложения.Для этого требуется использовать приложение qnxinstall.
Приложения с открытым исходным кодом для QNX предоставляет портированный открытый исходный код инструменты / приложения, включая их полные исходные тексты и / или готовые к использованию двоичные файлы для QNX, такие как XFree86, Lesstif, DDD, VNC, Nedit и cluster промежуточное программное обеспечение, подобное PVM.
Я понятия не имею, что это значит, но я надеюсь, что это даст вам что-то, с чего можно начать.
К вашему сведению - вы можете запустить telnet с помощью "inetd", который подключит вас и запустит ftp, чтобы затем вы могли перемещать библиотеки ssh и т.д.