Xrdp: различия между версиями
Нет описания правки |
|||
Строка 10: | Строка 10: | ||
* Для доступа к терминальному сеансу — включить в группу '''tsusers''' | * Для доступа к терминальному сеансу — включить в группу '''tsusers''' | ||
* Для проброса папки — включить в группу '''fuse''' | * Для проброса папки — включить в группу '''fuse''' | ||
==Настройки== | |||
Настройки сервера хранятся в файле '''/etc/xrdp/sesman.ini'''. | |||
(воспользуйтесь поиском в текстовом редакторе, чтобы найти параметр) | |||
*Максимальное количество подключений: '''MaxSessions''' | |||
*Разрыв сеанса при отключении пользователя: '''KillDisconnected''' | |||
*Авторизация Root: '''AllowRootLogin'''=false (true/false) | |||
*Название монтируемой папки: '''FuseMountName'''=Mount_FOLDER | |||
= Подключение = | = Подключение = | ||
Строка 20: | Строка 30: | ||
* ''123'' — пароль терминального пользователя. | * ''123'' — пароль терминального пользователя. | ||
Если пользователь или пароль не указаны, появится окно входа | Если пользователь или пароль не указаны, появится окно входа. | ||
Так же вы можете использовать клиент Remmina. | |||
{{Note|В случае проблем с подключением дисков необходимо в настройках подключения в локальных ресурсах отключать галочку “Принтеры»}} | |||
{{Note|При подключении через клиент Windowsна странице авторизации не получится переключить раскладку клавиатуры для требуемого языка ввода. В большинстве случаев по умолчанию стоит Русская раскладка а вводит надо на Английском. | |||
Перед подключением с Windows необходимо вначале перейти на раскладку в которой вводится логин и пароль, как правило это EN.}} | |||
= Дополнительно = | = Дополнительно = | ||
Строка 30: | Строка 48: | ||
<source lang="text" highlight="1">$ runwm --print default | <source lang="text" highlight="1">$ runwm --print default | ||
/usr/bin/mate-session</source> | /usr/bin/mate-session</source> | ||
= Экран входа = | = Экран входа = |
Версия от 22:21, 19 марта 2020
Первоначальная настройка сервера XRDP на сервере
- Установить пакет xrdp.
apt-get install xrdp
- Включить сервисы:
systemctl enable xrdp xrdp-sesman systemctl start xrdp xrdp-sesman
Права доступа пользователя:
- Для доступа к терминальному сеансу — включить в группу tsusers
- Для проброса папки — включить в группу fuse
Настройки
Настройки сервера хранятся в файле /etc/xrdp/sesman.ini.
(воспользуйтесь поиском в текстовом редакторе, чтобы найти параметр)
- Максимальное количество подключений: MaxSessions
- Разрыв сеанса при отключении пользователя: KillDisconnected
- Авторизация Root: AllowRootLogin=false (true/false)
- Название монтируемой папки: FuseMountName=Mount_FOLDER
Подключение
Пример:
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 — пароль терминального пользователя.
Если пользователь или пароль не указаны, появится окно входа.
Так же вы можете использовать клиент Remmina.
Дополнительно
Для использования сервером установленной графической оболочки MATE выполните следующее:
1. Установите пакет mate-session.
2. Убедитесь, что по умолчанию будет запускаться 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
Доступ доменных пользователей
В раздел домена в файле /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
Локальные группы для доменных пользователей
Вариант с локальной группой для доменных пользователей не работает, поэтому для них работает отключение группы (или указание любой нелокальной, даже несуществующей):
В файле /etc/xrdp/sesman.ini
TerminalServerUsers=
После исправления файла запустите
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.
Решение проблем
Проблемы соединения с мобильным rdp-клиентом
В некоторых мобильных rdp-клиентах, особенно предназначенных для работы на старых версиях Android, если выбрать режим "Воспроизведение звука на стороне клиента"(Или аналогичный) возникает ошибка соединения.
Решается запретом воспроизведения звука в настройках клиента или изменением в 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).
Проблемы соединения с тонким клиентом Dell Wyse 3040
Для подключения тонких клиентов Dell Wyse 3040 в /etc/xrdp/xrdp.ini необходимо выключить звуковую поддержку:
rdpsnd=false