Для подключения с терминальному серверу по протоколу RDP используется клиент из проекта rdesktop.
Работа клиента rdesktop основана на протоколе RDP (Remote Desktop Protocol) - проприетарном протоколе Microsoft, используемом для удаленного доступа к рабочему столу Windows.
Установка Rdesktop
rdesktop - это консольная утилита, а значит для ее работы вам потребуется открыть окно терминала. Вы так же можете установить готовые клиенты с графической оболочкой под ваш Linux, но в рамках этой статьи, мы рассмотрим именно консольный вариант, так как он в будущем позволит вам воспользоваться функцией бесшовных окон. В открывшемся окне терминала введите команду:
rdesktop
Если вы получили сообщение о том, что команда не найдена, то это означает. что по умолчанию у вас не установлена эта утилита и вам придется ее установить. Для Debian-based дистрибутивов (Ubuntu, Linux Mint) команда установки rdesktop будет выглядеть так:
Переключаемся с правами root и вводим команду
apt-get install rdesktop
Подключение к серверу
rdesktop -z -P -g 1280x900 -u USERNAME -p PASSWORD SERVER_IP
Поясним:
- -z включает сжатие потока
- -P кэширование
- -g задает геометрию окна. Вместо -g можно использовать ключ -f, тогда удаленный рабочий стол будет работать в полноэкранном режиме
- -u имя пользователя на сервере
- -p пароль
Следует оговориться - задание пароля в явном виде в качестве опции для rdesktop не является безопасным, так как он может быть просмотрен другими пользователями с помощью команды ps. Поэтому, если компьютер может быть доступен другим пользователям (локальным или удаленным), эту опцию лучше не указывать, тогда пароль нужно будет вводить после установления сессии.
Обмен файлами между Windows и Linux в рамках сеанса rdp
Не редко требуется настроить возможность обмена файлами между локальным и удаленным компьютером, так как стандартная функция Drag and Drop не поддерживается. В этом случае можно при помощи опции "-r disk:<sharename>=<path>" подключить любую локальную папку как диск Windows, который можно будет увидеть в проводнике Windows. Например:
rdesktop -r disk:share=/home/documents -z -P -g 1280x900 -u USERNAME -p PASSWORD SERVER_IP
В результате, после успешного соединения, вам будет подключена папка /home/documents в качестве диска "share" на стороне Windows. Вы сможете читать и записывать файлы.
Следует помнить, что владельцем подключаемой папки должен быть тот пользователь, от лица которого запускается rdp client. Иначе (запуская rdesktop от лица, например, root) вы не сможете потом получить доступ к записанным файлам, пока не установите правильного владельца.
Если это произошло, воспользуйтесь командой chown для смены владельца и группы:
chown -R /home/documents USERNAME:USERGROUP
Создание простой кнопки запуска
Чтобы каждый раз не открывать консоль и не вводить команды с кучей опций, можно сделать кнопку запуска, кликнув по которой вы можете запустить требуемый сеанс.
Для этого нужно поместить команду целиком в текстовый файл в нужном месте (на Рабочий Стол, или любую другую папку), добавить одну строчку до нее и сделать файл исполняемым. Так, используя пример из первой части делаем такой текстовый файл такого содержания:
#!/bin/bash
rdesktop -z -P -g 1280x900 -u USERNAME -p PASSWORD SERVER_IP
И делаем его исполняемым (из консоли):
chmod +x PATH_TO_MY_TEXT_FILE
Список всех опций rdesktop с их описанием вы можете посмотреть здесь.
Приложение для работы с RDP
Если вы не хотите подключаться с использованием консоли, то вы можете воспользоваться готовыми решениями, например Thincast RDP client.
ThincastRemote Desktop Client - позволяет работать не только в режиме рабочего стола, но и в режиме бесшовных окон.