Alt linux rdp client

xrdp

    Для доступа к терминальному сеансу — включить в группу tsusers:

Настройки

Настройки сервера хранятся в файле /etc/xrdp/sesman.ini . Некоторые настройки сервера установленные по умолчанию:

  • AllowRootLogin=true — авторизация Root;
  • MaxLoginRetry=4 — максимальное количество попыток подключения;
  • TerminalServerUsers=tsusers — группа, в которую необходимо добавить пользователей для организации доступа к серверу;
  • MaxSessions=50 — максимальное количество подключений к серверу;
  • KillDisconnected=false — разрыв сеанса при отключении пользователя;
  • FuseMountName=Mount_FOLDER — название монтируемой папки.

По умолчанию для подключения по RDP используется порт 3389. Номер порта можно изменить в файле /etc/xrdp/xrdp.ini .

Подключение

Для подключения можно использовать FreeRDP — клиент для подключения к удаленному рабочему столу по протоколу RDP.

Установить пакет xfreerdp :

xfreerdp [файл] [параметры] [/v:[:порт]] 

Описание некоторых параметров:

  • /v:[:порт] — IP-адрес или имя сервера;
  • /u: — имя пользователя;
  • /p: — пароль пользователя;
  • /w: — ширина окна;
  • /h: — высота окна;
  • /f — полноэкранный режим;
  • /size:x — размер окна;
  • /drive:, — подключение каталога.
$ xfreerdp /drive:Epson,/home/cas/epson /v:10.4.129.129 /u:user /p:123
  • Epson — название папки, которая будет показываться в каталоге thinclient_drives в домашней папке терминального пользователя, у локального пользователя пробрасывается папка /home/cas/epson;
  • 10.4.129.129 — адрес терминального сервера;
  • user — имя терминального пользователя;
  • 123 — пароль терминального пользователя.

Если пользователь или пароль не указаны, появится окно входа:

Экран входа

Внимание! Избегайте одновременный сеансов RDP и обычных для одного и того же пользователя. Systemd не позволит полноценно работать в сеансе RDP.

Также для подключения можно использовать клиент Remmina, Connector или Krdc.

Примечание: В случае проблем с подключением дисков необходимо в настройках подключения в локальных ресурсах отключать галочку «Принтеры».

Примечание: Существует известная проблема с тем, что на странице авторизации не реализовано переключение раскладки клавиатуры. Поэтому при подключении с клиента Linux в настройках клиента следует установить раскладку «00000409 — United States — English«. Клиент Windows не содержит настройку раскладки клавиатуры. Перед подключением с помощью клиента Windows необходимо вначале перейти на раскладку, в которой вводится логин и пароль, как правило это EN.

Дополнительно (MATE)

Для использования сервером установленной графической оболочки MATE выполните следующее:

Читайте также:  Check system settings linux

    Установите пакет mate-session .

# apt-get install mate-session 
$ runwm --print default /usr/bin/mate-session

Проброс звука

Для прослушивания звука из терминального сеанса локально установите на терминальный сервер пакет pulseaudio-module-xrdp :

# apt-get install pulseaudio-module-xrdp 

При использовании в качестве клиента xfreerdp добавьте параметр /sound:sys:pulse:

xfreerdp /v:10.4.4.17 /u:user /p:123 /sound:sys:pulse

Проброс USB-устройств

Для проброса USB-устройств на сервере необходимо установить пакет xrdp-usb-session :

# apt-get install xrdp-usb-session 

Данный компонент пробрасывает широкий спектр устройств, начиная от USB-веб-камер, до USB-токенов и смарт-карт. Инструкция по использованию: Xrdp-usb

Внимание! Проброс будет работать только в рамках локальной сети, так как требует доступность клиентского компьютера с сервера

Доступ доменных пользователей

В раздел домена в файле /etc/sssd/sssd.conf необходимо указать ad_gpo_map_service = +xrdp-sesman:

[domain/TEST.ALT] . ad_gpo_map_service = +xrdp-sesman . 

Иначе будет возникать ошибка:

pam_acct_mgmt failed: Permission denied

Локальные группы для доменных пользователей

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

После исправления файла запустите

# systemctl restart xrdp-sesman 

Журнал для sesman (сеансов пользователей) находится в файле /var/log/xrdp-sesman.log .

Данная ситуация возникла потому, что в больших доменах показ всех членов группы нагружает систему, поэтому в /etc/sssd/sssd.conf по умолчанию используется значение enumerate = false.

Если в разделе домена в файле /etc/sssd/sssd.conf явно указать enumerate=true:

[domain/TEST.ALT] id_provider = ad auth_provider = ad chpass_provider = ad default_shell = /bin/bash fallback_homedir = /home/%d/%u debug_level = 0 enumerate = true 

то в /etc/xrdp/sesman.ini можно указать

TerminalServerUsers=domain users

Не забудьте перезапустить службы sssd и xrdp-sesman.

Повышение привилегий

  • consolehelper, beesu — ограничений нет;
  • polkit — требует создание дополнительных правил для удалённых пользователей. Подробнее описано на https://github.com/neutrinolabs/xrdp/issues/1568#issuecomment-624727037

Производительность

Рекомендуется отключить эффекты рабочего стола. Можно установить пакеты:

Среда Пакет
MATE mate-reduced-resource
XFCE xfce-reduced-resource

Решение проблем

Общий подход

Первым делом обратите внимание на логи как сервера, так и сессии:

Например, такие строчки в последнем свидетельствуют о необходимости запроса пересборки xrdp с текущим xorg-server :

(EE) xorgxrdp: module ABI major version (23) doesn't match the server's version (24) (EE) Failed to load module "xorgxrdp" (module requirement mismatch, 0)

Проблемы соединения с мобильным rdp-клиентом

В некоторых мобильных rdp-клиентах, особенно предназначенных для работы на старых версиях Android, если выбрать режим «Воспроизведение звука на стороне клиента» (или аналогичный) возникает ошибка соединения.

Решается запретом воспроизведения звука в настройках клиента или изменением в /etc/xrdp/xrdp.ini в строке rdpsnd=true, значения true на false. При этом клиент лишается возможности воспроизводить звук, однако в остальном соединение работает.

Проблема подключения с Windows XP

Для подключения рабочих станций с Windows XP необходимо в файле /etc/xrdp/xrdp.ini добавить поддержку протокола TLSv1.1:

ssl_protocols=TLSv1.1, TLSv1.2, TLSv1.3

Эта поддержка была исключена из конфигурации по умолчанию в версии 0.9.8 (https://github.com/neutrinolabs/xrdp/releases/tag/v0.9.8).

Читайте также:  Linux подсчет количества строк в файле

Проблемы соединения с тонким клиентом Dell Wyse 3040

Для подключения тонких клиентов Dell Wyse 3040 в /etc/xrdp/xrdp.ini необходимо выключить звуковую поддержку:

Проблемы одновременного запуска локального и удалённого сеанса

С версии 0.9.14-alt5 файл /etc/pam.d/xrdp-sesman стал основан на правилах common-login. Второй сеанс systemd для одного и того же пользователя не удаётся запустить. Если это действительно надо, замените строку

session include common-login
session substack system-auth session required pam_loginuid.so session substack system-policy

Процесс gvfsd-trash занимает 100% процессора

Создайте раздел или файл подкачки. Например, по статье: Swap

Рабочий стол Mate в сеансе не показывает значки

Создайте файл /etc/xdg/autostart/caja-restart.desktop :

[Desktop Entry] Type=Application Name=Restart Caja in remote session Exec=dbus-launch caja --force-desktop 

Замените строку в файле /usr/share/applications/caja.desktop

Exec=/usr/bin/caja --force-desktop

Чтобы избежать сообщение об ошибке получения имени сессии, в файл /etc/xrdp/startwm.sh добавьте следующие строки

unset DBUS_SESSION_BUS_ADDRESS exec mate-session

Если пользователь ранее не регистрировал локальный сеанс, то при подключении новым пользователем xrdp не создаёт окружение пользователя в /home

Данная ситуация характеризуется следующей ошибкой при попытке подключения новым пользователем по xrdp:

[ERROR] another Xserver might already be active on display 9 - see log [DEBUG] aborting connection.

Для решения этой проблемы необходимо добавить в конец файла /etc/pam.d/xrdp-sesman строки:

session required pam_env.so readenv=1 user_readenv=0 session required pam_mkhomedir.so skel=/etc/skel/ umask=0077

Источник

Rdesktop

Чтобы подключиться из ALT Linux к рабочему столу Windows по протоколу RDP, можно установить пакет rdesktop через Synaptic или apt-rpm .

$ sudo apt-get install rdesktop

Затем необходимо запустить терминал и в нем набрать следующую команду:

rdesktop ip_адрес_компьютера_к_которому_хотим_подсоединиться

У этой команды много ключей. Чтобы посмотреть их все надо набрать в терминале команду rdesktop и нажать клавишу ENTER.

На случай если у кого не получится, то вот эти ключи:

-u: user name -d: domain -s: shell / seamless application to start remotely -c: working directory -p: password (- to prompt) -n: client hostname -k: keyboard layout on server (en-us, de, sv, etc.) -g: desktop geometry (WxH[@DPI][+X[+Y]]) -i: enables smartcard authentication, password is used as pin -f: full-screen mode -b: force bitmap updates -L: local codepage -A: path to SeamlessRDP shell, this enables SeamlessRDP mode -V: tls version (1.0, 1.1, 1.2, defaults to negotiation) -B: use BackingStore of X-server (if available) -e: disable encryption (French TS) -E: disable encryption from client to server -m: do not send motion events -M: use local mouse cursor -C: use private colour map -D: hide window manager decorations -K: keep window manager key bindings -S: caption button size (single application mode) -T: window title -t: disable use of remote ctrl -N: enable numlock synchronization -X: embed into another window with a given id. -a: connection colour depth -z: enable rdp compression -x: RDP5 experience (m[odem 28.8], b[roadband], l[an] or hex nr.) -P: use persistent bitmap caching -r: enable specified device redirection (this flag can be repeated) '-r comport:COM1=/dev/ttyS0': enable serial redirection of /dev/ttyS0 to COM1 or COM1=/dev/ttyS0,COM2=/dev/ttyS1 '-r disk:floppy=/mnt/floppy': enable redirection of /mnt/floppy to 'floppy' share or 'floppy=/mnt/floppy,cdrom=/mnt/cdrom' '-r clientname=': Set the client name displayed for redirected disks '-r lptport:LPT1=/dev/lp0': enable parallel redirection of /dev/lp0 to LPT1 or LPT1=/dev/lp0,LPT2=/dev/lp1 '-r printer:mydeskjet': enable printer redirection or mydeskjet="HP LaserJet IIIP" to enter server driver as well '-r sound:[local[:driver[:device]]|off|remote]': enable sound redirection remote would leave sound on server available drivers for 'local': libao: libao output driver, default device: system dependent '-r clipboard:[off|PRIMARYCLIPBOARD|CLIPBOARD]': enable clipboard redirection. 'PRIMARYCLIPBOARD' looks at both PRIMARY and CLIPBOARD when sending data to server. 'CLIPBOARD' looks at only CLIPBOARD. '-r scard[:"Scard Name"="Alias Name[;Vendor Name]"[. ]] example: -r scard:"eToken PRO 00 00"="AKS ifdh 0" "eToken PRO 00 00" -> Device in GNU/Linux and UNIX environment "AKS ifdh 0" -> Device shown in Windows environment example: -r scard:"eToken PRO 00 00"="AKS ifdh 0;AKS" "eToken PRO 00 00" -> Device in GNU/Linux and UNIX environment "AKS ifdh 0" -> Device shown in Microsoft Windows environment "AKS" -> Device vendor name -0: attach to console -4: use RDP version 4 -5: use RDP version 5 (default) -o: name=value: Adds an additional option to rdesktop. sc-csp-name Specifies the Crypto Service Provider name which is used to authenticate the user by smartcard sc-container-name Specifies the container name, this is usually the username sc-reader-name Smartcard reader name to use sc-card-name Specifies the card name of the smartcard to use -v: enable verbose logging

rdesktop также является основой дистрибутива live-rdesktop, который представляет из себя «живой» тонкий rdp клиент.

rdesktop -u user -g 800x600 -r scard:"Aktiv Rutoken ECP 00 00"="Rutoken" 192.168.0.3:3389
  • user — имя пользователя на машине к которой подключаемся
  • 800х600 — разрешение с которым соединяемся (можно так же использовать ключ -f для запуска полноэкранного режима)
  • 192.168.0.3:3389 — ip адрес машины на которую соединяемся и номер порта на котором доступно RDP подключение, по умолчанию 3389
  • параметр, включающий возможность проброса устройств в удалённую сессию (может быть использован неоднократно). В примере выше мы пробрасываем токен, определяемый в системе Linux как «Aktiv Rutoken ECP 00 00», и дополнительно указываем, что он должен отображаться в окружении Windows как «Rutoken».
Читайте также:  Linux ubuntu failed to fetch

Источник

Оцените статью
Adblock
detector