Letysite.ru

IT Новости с интернет пространства
1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Remoteapp в linux

RDP Linux — лучшие клиенты для удаленного рабочего стола

Удаленный рабочий стол — это удивительная функция, которая позволяет подключаться, как следует из названия, к удаленной операционной системе. Подключение производится через сетевое соединение, так что вы можете управлять им из своего текущего местоположения.

Это отличная функция, потому что у нее много приложений, таких как:

  • помощь вашей маме в исправлении сломанной системы,
  • обучение кого-то, как что-то сделать (такая услуга может даже быть оплачена),
  • выполнение задач, которые вы хотите выполнить на разных машинах или серверах

O RDP

Во-первых, вы должны знать, что для того, чтобы две машины могли общаться друг с другом, им нужен так называемый «протокол». Протокол удаленного рабочего стола — это способ передачи инструкций с одного компьютера на другой. В результате, получается возможность графически управлять другой системой.

Существует много известных протоколов удаленных рабочих столов, таких как RDP (Remote Desktop Protocol). Он является проприетарным протоколом, разработанным Microsoft и реализованным в ОС Windows.

Протокол VNC (Virtual Network Computing), который является бесплатным и открытым исходным кодом.

Теперь, в отличие от протоколов, вам, конечно, понадобится программа для доступа к удаленному рабочему столу. Обычно люди используют для этого проприетарную программу TeamViewer. Но есть много других открытых альтернатив TeamViewer, которые можно использовать.

Подробнее о TeamViewer можно узнать в данной статье.

В этой статье мы перечислим лучшие из этих программ с открытым исходным кодом для удаленного рабочего стола.

TigerVNC

TigerVNC специализируется на высокопроизводительном приложении с открытым исходным кодом для удаленного рабочего стола. Главным образом предназначен для отображения 3D и видео приложений по всему протоколу. Программа имеет архитектуру клиент-сервер, где необходимо установить сервер на хост-компьютере и поддерживать работоспособность, чтобы клиент мог подключиться.

Разработка TigerVNC началась еще в 1999 году компанией At & T, где она была проприетарным ПО. Позже, спустя много лет, он был разветвлен между различными компаниями. В результате, стабилизировался как приложение с открытым исходным кодом. Он выпущен под лицензией GPL.

TigerVNC доступен для Windows, MacOS и Linux. Вы также обычно найдете его в официальных репозиториях вашего дистрибутива Linux.

Rdesktop

Это программа с открытым исходным кодом для подключения к хостам Windows по протоколу RDP.

Разработка Rdesktop началась еще в 2001 году, когда Microsoft начала распространять свой новый протокол RDP в ОС. В то время еще не было реализации с открытым исходным кодом для этого протокола. Разработчик программы спроектировал протокол RDP для создания Rdesktop и сделал его открытым исходным кодом.

Rdesktop очень легкий. Размер загружаемого файла менее 500 КБ. Просто, потому что это не идет с пользовательским интерфейсом. Rdesktop — это приложение командной строки, поэтому вам нужно запустить командную строку и запустить ее с IP-адресом хоста, который вам нужен. В результате вы откроите окно, достаточное для отображения интерфейса удаленного рабочего стола:

Последний выпуск реализован недавно. Вы найдете его в официальных репозиториях дистрибутива или загрузить вместе с исходным кодом с GitHub. Rdesktop выпускается под лицензией GPL.

FreeRDP

FreeRDP является одним из самых известных решений с открытым исходным кодом, когда речь идет об удаленном рабочем столе. Его разработка началась еще в 2009 году как программы rdesktop. FreeRDP лицензируется Apache 2.0.

FreeDRP разветвлен от Rdesktop, потому что, по словам разработчиков , первоначально Rdesktop не хотели использовать открытые спецификации Microsoft, которые были выпущены в этом году для протокола RDP. Вместо этого они предпочитали продолжать работу по обратному инжинирингу. И, похоже, начались жаркие споры о принятии конкретных решений, что привело к созданию FreeRDP в 2009 году.

FreeRDP позволяет вам подключаться к любому хосту Windows, используя протокол RDP.

Он также поддерживает перенаправление:

  • аудио
  • принтеров
  • серийных номеров
  • буфера обмена
  • дисков с хост-компьютера на ваш компьютер

Вы также можете выбрать собственную ширину или высоту для:

  • рабочей области
  • обоев
  • темы
  • режима композиции (вкл или выкл),
  • шрифтов
  • многих других.

Кроме того, можете запускать RemoteApps.

Вы можете скачать FreeRDP или получить доступ к исходному коду на GitHub.

Remmina

Одно из лучших приложений для удаленного рабочего стола с открытым исходным кодом. Remmina — это современное настольное приложение, поддерживающее протоколы RDP, VNC и SSH в одном приложении. Вы также можете открыть много хостов и переключаться между ними одновременно. Remmina поставляется с красивым значком, который позволяет быстро управлять подключениями.

Интерфейс программы поддерживает несколько вкладок. В результате, вы можете запускать несколько удаленных подключений и переключаться между ними одновременно.

Кроме того, приложение поддерживает:

  • автоматическое масштабирование
  • снимки экрана
  • сочетания клавиш
  • функции VNC / RDP
  • шифрование
  • совместное использование устройств
  • перенаправление
  • другие вещи
Читать еще:  Управление памятью linux

Приложение доступно для простой установки во всех основных дистрибутивах Linux, поставляется в форматах Flatpak и Snap и работает на Raspberry Pi. Однако приложение недоступно ни для Windows, ни для MacOS. Он выпущен под лицензией GPL.

Вы можете получить его с официального сайта или выполнить поиск в репозиториях вашего дистрибутива.

Apache Guacamole

Apache Guacamole — это уникальное ПО в нашем списке. Причина в том что, в отличие от других, работает как веб-приложение для просмотра всех удаленных рабочих столов, которые вы хотите. Вот почему разработчики ПО называют его «удаленным рабочим столом без клиента». Потому что, ему не нужен клиент (хотя он и есть), но работает из веб-браузера. Все, что нужно сделать, это установить серверную версию на свой хост, чтобы получить к ней доступ из Интернета.

Кроме того, в отличие от других решений в этом списке, Apache Guacamole предоставляет полный API на многих языках программирования для доступа и расширения своей основной кодовой базы. Огромный перечень документов доступен бесплатно на официальных сайтах. Apache Guacamole предоставляют коммерческую стороннюю поддержку предприятиям, желающим использовать программное обеспечение.

Официальный сайт Apache Guacamole

Вывод

Как вы уже могли видеть, существует множество альтернатив TeamViewer и другим программам удаленного рабочего стола в мире открытого исходного кода. Этот список должен помочь вам в этом.

Кроме того, есть некоторые другие проекты с открытым исходным кодом, которые не были упомянуты здесь подробно, такие как:

  • Grdesktop (графический интерфейс пользователя для Rdesktop, слишком старый),
  • XRDP
  • mRemoteNG
  • UltraVNC

Выбор RDP клиента для Linux

Одно из первых и самых проблемных вопросов при внедрении Linux в офисе , это 1С и другие службы, которые без Windows практически не могут. Что касается 1С, то есть варианты настройки и под Linux и под wine и много других способов. Но есть и извращения, когда 1C работает с базой GT.M (если кто не слышал почитайте кошмары на ночь). В таком варианте базы данных, способов запустить 1С из под Ubuntu не нашлось, и поэтому пришлось оставить бухгалтерию в терминалах Windows.

А вот клиента терминального RDP подключения мы сегодня рассмотрим.

Скажу сразу, что выбор был большой, рассматривались различные варианты, но в финал вышли двое.

Remmina VS Rdesktop

Важные особенности задачи для обоих кандидатов: проброс usb портов для сканера штрих-кодов, для принтера чеков, проброс принтеров в целом, и возможность пробрасывать usb-ключи, а так же общий буфер обмена, и меньше «возни» для конечного пользователя. То есть нажал на кнопку, и Мария Ивановна, которой уже «немного за 30», работает в терминале с 1С, при этом ей ничего не нужно выбирать.

Remmina — очень удобный инструмент для любителей окон. Своя GUI (графическая оболочка), настройка «галочками». Большой список возможных подключений (RDP, VNC, SSH и т.д.). Есть и одно, на мой взгляд, самое важное преимущество remmin’ы — это свободное масштабирование окна подключения, чего к сожалению нет rdesktop.

Так же в Remmine хорошо организованная GUI, что не мало важно для Linux программ. То есть это и список сохранённых удаленных подключений, фильтры списков, и многое другое.

Из минусов работы с remmina выделить можно парочку проблем. В процессе тестирование Remmina (в разных графических оболочках) постоянно закрывалась по непонятным причинам. Никаких логов об этом не было, вообще ничего не удавалось найти. «Хлопалась» просто так, произвольно, в любой момент времени. Проработает 2 часа, 4 часа, 1 день — а потом оп и «хлоп» — Remmin’ы нет. Однажды удалось найти одно из причин следствия такого поведения. При запуске remmina из терминала, работоспособность последней оказалась стабильнее. Однако рано радовались, это лишь так показалось.

Вторая сугубо личная особенность сложности работы remmin’ы — это её скованность. То есть, если нужно будет что-то ещё при решении сложных задач (подключить LPT-порт к примеру), то remmina ограниченна возможностями, которые вложил в неё автор. В следующих статьях я подробно это объясню.

Rdesktop в своей красе оказался более стабильный, по сей день (год+) не было не единого произвольного закрытия программы, даже с техническими «извращениями».

Зато в работе с rdesktop необходимы не малые усилия и знания. Для пользователей с разными мониторами, разрешениями экрана, кол-вами мониторов на одном ПК и не умеющими нажимать сочетания клавиш ctr+alt+enter , пришлось писать дополнительные скрипты для подключения.

Скрипт определял текущий монитор (на котором запускается RDP подключение), разрешение экрана, отнимал небольшое кол-во пикселей сверху/снизу для панели задач в xfce, определял принтер по умолчанию для проброса, и запускал окно для покдлючения к виртуальным средам, которое в принципе нравилось пользователям.

Скрипт подключение на rdesktop (может кому пригодится)

Читать еще:  Mysql linux экспорт

#!/usr/bin/env bash
OFFSET_RE=»+([-0-9]+)+([-0-9]+)»
# Вычисление текущего монитора на котором запускается скрипт подключения
eval «$(xdotool getmouselocation —shell)»
monitor_index=0
while read name width height xoff yoff
do
if [ «$» -ge «$xoff»
-a «$» -ge «$yoff»
-a «$» -lt «$(($xoff+$width))»
-a «$» -lt «$(($yoff+$height))» ]
then
monitor=$name
break
fi
((monitor_index++))
done &2
exit 1
fi

В общем выбор остался за Rdesktop, но это лично моё мнение, и надеюсь remmina будет развиваться. Кстати, последняя очень хороший инструмент для дома, для «блондинок» или домохозяек.

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

Как интегрировать RDP в Ubuntu?

Уверен, что вы часто используете RDP (Remote Desktop Protocol) для подключения к виртуальным машинам, работающим в Hyper-V, XenServer или vSphere, также я уверен, что вы часто запускаете Ubuntu, и, вероятно, тоже захотите подключиться к виртуальным машинам на базе Ubuntu. Каждый раз, когда я настраиваю новую Linux VM, я настраиваю RDP к нему. Я задокументировал этот процесс для своих собственных целей и подумал, что поделюсь им с вами. Конечно, есть альтернативы использованию RDP, но о них в другой раз…

Введите sudo apt-get update и нажмите Enter. При появлении запроса введите соответствующие учетные данные.

Введите sudo apt-get install xrdp и нажмите Enter. Это установит xrdp — агент удаленного рабочего стола.

Введите sudo apt-get install xfce4 и нажмите Enter. Это установит среду рабочего стола Xfce.

Введите echo xfce4-session >

/.xsession и нажмите Enter.

Введите sudo nano /etc/xrdp/startwm.sh и нажмите Enter, чтобы изменить текстовый файл.

Удалить строку . /etc/X11/Xsession и добавьте строку startxfce4, затем нажмите Ctrl + X и сохраните файл.

Введите sudo service xrdp restart и нажмите Enter.

Введите имя хоста -I и нажмите Enter. Запишите IP-адрес.

Введите sudo usermod -a -G tsusers и нажмите Enter. Это добавит вашу учетную запись в группу tsusers, которая по умолчанию является группой с правами RDP на этой машине. Повторите это для всех учетных записей, для которых вы хотите настроить RDP.

Запустите RDP-клиент на вашем компьютере под управлением Windows, Mac или любом другом устройстве и подключитесь к IP-адресу вашей виртуальной машины Ubuntu.

Введите учетные данные вашей учетной записи. Помните, что имя пользователя чувствительно к регистру и нажмите ОК.

Рабочий стол может выглядеть по-другому, но вы уже сможете работать с ним.

Теперь Вы можете работать на удаленном сервере по RDP.

Спасибо за уделенное время на прочтение статьи!

Если возникли вопросы, задавайте их в комментариях.

Подписывайтесь на обновления нашего блога и оставайтесь в курсе новостей мира инфокоммуникаций!

Запускаем RDP сервер под Linux + 1Сv8.

В общем хочу поделиться собственным опытом реализации терминального сервера в вышеозначенной связке.

В результате исследования проблеммы внедрения сервера терминалов без использования серверного ПО от доблестной компании MS
было рассмотрено множество вариантов с соответствующими выводами:

а) Linux + VNC-server (tightVNC) — тормозит
б) Linux + nxFree — в общем-то стоит денег, бесплатно — только одно подключение. Есть free-аналог freenx — но. нужен напильник размером с дом
в) Linux + Xserver + XMing на удаленном windows-хосте — тормозит еще больше, чем VNC

ну собственно и вариант Г 🙂 Linux (Slackware current) + xrdp (0.4.1) + wine(1.1.19) + 1Сv8.1

Шаг 1: 1С
1C(v8.1) завелась без проблем после замещения стандартных библиотек ( browseui mshtml msls31 ole32 oleaut32 olepro32 rpcrt4 shdocvw shlwapi urlmon ) в каталоге

/.wine/drive_c/windows/system32 с последующим прописыванием оных в winecfg, доп.установки Gecko и Internet Explorer 6, единственное что не работает, так это интерфейс SQLDMO.
Еще хотелось бы добавить, что по-умолчанию не работало сглаживание шрифтов в 1С, это можно поменять и руками в реестре из под wine, но есть более элегантное(или простое) решение
http://files.polosatus.ru/winefontssmoothing.sh — запускаем в консоли — далее все понятно.

PS: для эстетов загадочных делаем следующее:

выполняем команду wine

/.wine/drive_c/windows/regedit.exe
и правим следующие параметры

[HKEY_CURRENT_USERControl PanelDesktop]
«FontSmoothing»=»2»
«FontSmoothingType»=dword:00000002
«FontSmoothingGamma»=dword:00000578
«FontSmoothingOrientation»=dword:00000001

Шан 2: Xrdp
Далее настраиваем собственно сам xrdp, домашняя страничка находится в плачевном состоянии (http://xrdp.sourceforge.net/), однако оттуда выкачиваем бинарники (на текущий момент
имеется версия 0.4.1). Как обычно — распаковываем make, make install (можно почитать прилагающийся install.txt).

Так как сам xrdp поддерживает терминалы по vnc и по rdp, то ему понадобятся библиотеки от TightVNC, ставим собснно tightVNC — скачиваем — configure && make && make install.

По-умолчанию xrdp ставится в /usr/local/xrdp (бинарниики) и /etc/xrdp (настройки).
В /etc/xrdp/sesman.ini и /etc/xrdp/xrdp.ini всё достаточно прозрачно настраивается. В sesman увеличиваем макс.количество открываемых сессий и (по желанию) пользователя/группу,
которым будет разрешено входить на сервер терминалов. В rdp.ini я поставил подключения по rdp (а не по vnc) на первое место (просто вставляем секцию про rdp6 после секции c global-настройкам).
Для работы в режим RDP нужен бинарник X11rdp, собственно заточенный под RDP. Исходников найти не удалось, но есть бинарник http://server1.xrdp.org/temp/X11rdp. Скачиваем, кидаем в /usr/bin
Далее шрифты — этот бинарник ищет шрифты в /opt/X11rdp/lib/X11/fonts
Создаем каталоги /opt/X11rdp/lib/X11, сделал симлинк fonts на папку со шрифтами уже стоящего X-сервера (у меня лежали в /usr/share/X11/fonts).

Читать еще:  Linux etc shadow

Сервер уже готов к запуску, но не поддерживает ввод русского языка. Для включения этой непонятной возможности можно использовать утилиту xkbcomp.
Ей подсовываем файл со следующим содержанием:

(допустим назовем его /usr/local/xrdp/rus.map)
выполняем команду ‘xkbcomp /usr/local/xrdp/rus/map $DISPLAY’ в открытой xrdp сессии — и вуяля — получяем переключение по Ctrl+Shift с русского на английский язык.

прописываем эту команду в конец файла /usr/local/xrdp/startwm.sh.
Кстати, в этом файле можно прописать команду WM, который будет стартовать при открытии сеанса, а также саму 1С 🙂
Собственно все настройки готовы — запускаем и наслаждаемся.

Еще немного подводных камней:
1. Для нормального запуска 1С под wine, нужно чтобы каждый пользователь запускал свою копию wine.
Т.е. нужно каждому пользователю в его домашний каталог установить 1С и оттуда уже запускать.
Если запускать из одного места, то 1С начинает конкретно тупить.
2. Под одним пользователем нескольким клиентам работать не получится (у меня запустить по крайней мере не получилось).
3. Иногда замечал, что 1С при запуске начинает кушать 100% процессора. Решение — прибить процесс и перезапустить 🙂
4. Печать на локальный принтер из сессии не получится. Есть задумки насчет CUPS, но нужно время.

Заметите неточности — пишите, будем исправлять

Remmina remoteapp over RDP

Мне было интересно, как использовать remmina для открытия приложений на машине Windows поверх rdp с помощью remoteapp (или бесшовной или любой другой, что она называется).

Я уже использовал инструмент RemoteApp от Kim Knight, чтобы настроить remoteapp на компьютере под управлением Windows 7, и я могу подключать и запускать удаленные приложения в другом окне.

Предположительно FreeRDP (который использует Remmina для своего плагина RDP) поддерживает поддержку remoteapp. Я не уверен, как это использовать. Я не могу найти примеров того, как люди на самом деле делают это в Интернете, но есть ошибка запуска в буфер обмена, не работающая в удаленных приложениях , из чего я могу сделать вывод, что есть способ запуска удаленных приложений.

Я пробовал множество комбинаций настроек для Client, Startup Program и Startup Path на вкладке «Дополнительно» при настройке RDP-соединения в Remmina, но я не могу заставить его работать. Я могу подключиться к окнам Windows с RDP просто отлично, просто не запускать remoteapp.

Насколько мне известно, Remmina не разрешает доступ к клиенту RemoteApp. Однако вы можете сделать это с помощью xfreerdp. Просто используйте что-то подобное в командной строке:

К сожалению, совместное использование данных между локальными и удаленными системами через буфер обмена не работает, поэтому нет необходимости включать параметр —plugin cliprdr . Я ожидаю, что это будет выпущено для решения, чтобы я мог заменить Windows для Ubuntu еще на 5 пользователей / машин!

Вы можете попробовать мое упакованное приложение WinConn .

WinConn упрощает создание, управление и настольную интеграцию удаленных приложений Windows в Ubuntu Linux. Он использует технологию RemoteApp, реализованную проектом FreeRDP для обеспечения беспрепятственного использования пользователями. Приложения запускаются в их собственном окне и могут использоваться как любое другое локально установленное приложение Ubuntu, не принося пользователю полный рабочий стол Windows.

Мы используем клиент Thinomenon Linux. Он имеет гораздо лучшую поддержку RemoteApp, чем freerdp. В то же время, freerdp делает окна немного затянутыми.

@bmullan – посетите сайт thinomenon и узнайте, что является их продуктом. ThinRDP [thinomenon RDC application] является бесплатным. Он поддерживает полную спецификацию RDP7. Это должно быть понятно любому, кто понимает английский.

Перейдите на сайт http://www.thinomenon.com и найдите клиента RDP.

При подключении к Windows Server 2008 или более поздней версии необходимо включить удаленное приложение на сервере в: Start – Administrative Tools – Terminal Services – TS RemoteApp Manager. Там вы выбираете «Действие» – добавьте программы RemoteApp и включите те программы, которые вы хотели бы сделать доступными как удаленная программа RDP.

Все это относится к серверам, которые лицензированы для служб терминалов. Если сервер не лицензирован, то есть находится только в режиме удаленного администрирования, параметры удаленных приложений недоступны.

Я нашел это в случае с Remmina на Ubuntu 12.10 на моем нетбуке.

Надеюсь, этот комментарий не слишком поздно, чтобы быть полезным!

Ссылка на основную публикацию
Adblock
detector