ssh — запуск графических приложений

monitor_soft

Была необходимость запустить графическое приложение на удаленном сервере. Такая возможность существует. Да именно с использованием графики. Все выполняется из терминала по SSH.

Кратко из википедии про ssh:

SSH  — сетевой протокол прикладного уровня, позволяющий производить удалённое управление операционной системой и туннелирование TCP-соединений (например, для передачи файлов). Схож по функциональности с протоколами Telnet и rlogin, но, в отличие от них, шифрует весь трафик, включая и передаваемые пароли. SSH допускает выбор различных алгоритмов шифрования. SSH-клиенты и SSH-серверы доступны для большинства сетевых операционных систем.

SSH позволяет безопасно передавать в незащищённой среде практически любой другой сетевой протокол. Таким образом, можно не только удалённо работать на компьютере через командную оболочку, но и передавать по шифрованному каналу звуковой поток или видео (например, с веб-камеры). Также SSH может использовать сжатие передаваемых данных для последующего их шифрования, что удобно, например, для удалённого запуска клиентов X Window System.

Можно запустить программу, например Gimp, на удаленном сервере с выводом изображения на свой монитор, так же и с выводом на удаленный монитор. Во втором случае вы просто физически не увидите этого, но на удаленном мониторе он запустится.

Подготовка к запуску графического приложения по ssh

Для успешного запуска, нужно внести изменения в файл sshd_config, расположенный в каталоге /etc/ssh

Для его редактирования я использую редактор nano, вы можете использовать свой.

На своем ПК

Устанавливаем, если не установлена служба ssh

sudo apt install ssh

Открываем файл на своем компьютере, командой:

sudo nano /etc/ssh/ssh_config

Раскомментируем или допишем строку

ForwardX11 yes

Сохраняем файл Ctrl+O закрываем Ctrl+X

ssh config на моем компьютере

На удаленном ПК, сервере

Служба ssh должна быть уже установлена, иначе вы не сможете к нему подключится.

Подключаемся к удаленной машине, серверу по ssh.

Далее на удаленной машине, сервере вводим команду:

sudo nano /etc/ssh/ssh_config

Раскомментируем или допишем строку

X11Forwarding yes

Сохраняем файл Ctrl+O закрываем Ctrl+X

ssh config на удаленном сервере

Перезапускаем ssh на удаленной машине командой:

sudo service ssh restart

Теперь, можно подключившись по ssh к серверу или удаленному компьютеру, запустить программу, например gimp, запускается командой:

gimp

И на вашем компьютере откроется окно браузера, но только сам браузер будет работать на удаленной машине, просто изображение будет выводится у вас на ПК.

Для стабильной работы рекомендуется использовать утилиту nohup, команда будет выглядеть так

nohub gimp

Если хотите запустить вывод изображения на удаленной машине

Подключитесь по ssh к удаленной машине и введите вначале команду

export DISPLEY=:0

затем команду для запуска приложения.

Приложение запустится, но вывод будет осуществлятся на монитор подключенный к удаленной машине.

Поэтому вы не увидите удивленное лицо того кто наблюдает этот монитор!

Если хотите что-то добавить пишите в комментариях.

Всем Удачи!

Про ПК
Добавить комментарий