Установка и настройка RDP-сервера на ОС Linux CentOS 7

Экспорт в PDF Преобразовать страницу в формат Open Document

Дата создания: 2022/08/26 04:51 (C) mihanik

В этой же статье мы будем из Centos 7 делать RDP-сервер.

Итак…

Шаг 1

Открываем терминал.

Все остальные команды будем выполнять в терминале.

При помощи команды

sudo su

становимся суперпользователем root.

Шаг 2

Установим рабочую среду МАТЕ, т.к. она почему-то пользователям нравится больше, чем GNOME.

yum -y groupinstall "Рабочая среда MATE" "MATE"

Шаг 3

Теперь установим и запустим RDP-сервер.

yum install -y xrdp xorgxrdp
systemctl enable xrdp
systemctl start xrdp

Шаг 4

Для того, чтобы можно было подключаться к серверу, откроем в сетевом экране порт 3389/tcp.

firewall-cmd --add-port=3389/tcp --permanent
firewall-cmd --reload

Шаг 5

А теперь немного магии. 🙂

Если во время работы RDP-клиента сессия будет случайно или специально прервана, то при новом подключении откроется НОВАЯ сессия, а СТАРАЯ сессия со всеми открытыми программами так и останется висеть в памяти сервера, что, возможно, будет мешать работе. Чтобы при повторном подключении попадать в свой прежний сеанс нужно немного изменить настройки XRDP, для этого в файле /etc/xrdp/xrdp.ini меняем fork=true на fork=false

cp /etc/xrdp/xrdp.ini /etc/xrdp/xrdp.ini.old
sed -i 's/fork=true/fork=false/' /etc/xrdp/xrdp.ini

Шаг 6

Настроим, чтобы пользователи root и mihanik при подключении по RDP использовали рабочую среду MATE.

echo "mate-session"> ~/.Xclients
chmod a+x ~/.Xclients
su mihanik
echo "mate-session"> ~/.Xclients
chmod a+x ~/.Xclients
exit

Шаг 7

Перезагружаемся

reboot

Шаг 8

Подключаемся любым RDP-клиентом к нашему серверу.

Важно!
Если при подключении к удалённому рабочему столу использовать “удачную” глубину цвета, например, в 15 бит, то установить сессию не получиться. Я обычно использую глубину цвета в 16 бит.
Если всё работает, - вам повезло.
У меня, например, не работало переключение раскладки клавиатуры.

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

Шаг 9

Доустанавливаем недостающее

yum -y groupinstall "Окружение GNOME"

Далее в файле /etc/xrdp/xrdp.ini комментируем секцию [Xvnc] , а секцию [Xorg] наоборот, – раскомментируем.

cp /etc/xrdp/xrdp.ini /etc/xrdp/xrdp.ini.old2
mcedit /etc/xrdp/xrdp.ini

При помощи редактора приведите всё примерно к такому виду:

;
; Session types
;

; Some session types such as Xorg, X11rdp and Xvnc start a display server.
; Startup command-line parameters for the display server are configured
; in sesman.ini. See and configure also sesman.ini.
[Xorg]
name=Xorg
lib=libxup.so
username=ask
password=ask
ip=127.0.0.1
port=-1
code=20

#[Xvnc]
#name=Xvnc
#lib=libvnc.so
#username=ask
#password=ask
#ip=127.0.0.1
#port=-1
#xserverbpp=24
#delay_ms=2000
; Disable requested encodings to support buggy VNC servers
; (1 = ExtendedDesktopSize)
#disabled_encodings_mask=0

И перезапускаем xrdp

systemctl restart xrdp

Вот теперь должно быть “Ура! Работает!” 😉

PS. Решение проблемы с переключением языка клавиатуры при подключении из Windows

Если всё ещё будут проблемы с переключением раскладки, откройте файл /etc/xrdp/xrdp_keyboard.ini :

cp /etc/xrdp/xrdp_keyboard.ini /etc/xrdp/xrdp_keyboard.ini.old
mcedit /etc/xrdp/xrdp_keyboard.ini

И добавьте в конец файла:

[layouts_map_ru]
rdp_layout_us=ru,us
rdp_layout_ru=ru,us

[rdp_keyboard_ru]
keyboard_type=4
keyboard_type=7
keyboard_subtype=1
options=grp:alt_shift_toggle
rdp_layouts=default_rdp_layouts
layouts_map=layouts_map_ru

В данной конфигурации раскладка переключается сочетанием клавиш Alt+Shift.

Для применения настроек перезагрузите сервер xrdp:

systemctl restart xrdp
Если и это не поможет, то google | yandex вам в помощь.

Наверх

В моей WIKI постоянно ведётся какая-то работа со статьями.
Если у вас возникли вопросы или замечания,
можете их отправлять на почту support@mihanik.net
Только авторизованные участники могут оставлять комментарии.
операционные_системы/linux/centos_7/установка_и_настройка_rdp-сервера_на_ос_linux_centos_7.txt · Последнее изменение: 2022/08/30 19:30 — mihanik
GNU Free Documentation License 1.3
Powered by PHP Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0 Valid HTML5 Яндекс.Метрика