Это вторая статья из цикла статей про установку и настройку 1С Сервера на ОС Linux Centos 7.
Первую статью можно найти по этой ссылке.
В этой же статье мы будем из Centos 7 делать RDP-сервер.
Итак…
Шаг 1.
Открываем терминал.
И подключим репозиторий epel.
yum install -y epel-release
Шаг 2.
Отключаем selinux. Конечно, лучше его не отключать, а настраивать, но при желании мы всегда можем это сделать позже.
cp /etc/selinux/config /etc/selinux/config.old sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
После этого хорошо бы перезагрузиться, но мы сделаем это позже.
Шаг 3.
А теперь установим дополнительные программы, которые нам могут пригодиться.
yum -y install mc screen atop
Шаг 4.
Установим рабочую среду МАТЕ, т.к. она почему-то пользователям нравится больше, чем GNOME.
yum -y groupinstall "Рабочая среда MATE" "MATE"
Шаг 5.
Теперь установим и запустим RDP-сервер.
yum install -y xrdp xorgxrdp systemctl enable xrdp systemctl start xrdp
Шаг 6.
Для того, чтобы можно было подключаться к серверу, откроем в сетевом экране порт 3389/tcp.
firewall-cmd --add-port=3389/tcp --permanent firewall-cmd --reload
Шаг 7.
А теперь немного магии. 🙂
Если во время работы 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
Шаг 8.
Настроим, чтобы пользователи root и mihanik при подключении по RDP использовали рабочую среду MATE.
echo "mate-session"> ~/.Xclients chmod a+x ~/.Xclients su mihanik echo "mate-session"> ~/.Xclients chmod a+x ~/.Xclients exit
Шаг 9.
Перезагружаемся
reboot
Шаг 10.
Подключаемся любым RDP-клиентом к нашему серверу.
Замечание!
Если при подключении к удалённому рабочему столу использовать «удачную» глубину цвета, например, в 15 бит, то установить сессию не получиться. Я обычно использую глубину цвета в 16 бит.
Ура? Всё работает?
Тогда вам повезло!!!
У меня, например, не работало переключение раскладки клавиатуры.
Что я сделал? 😉
Перешёл к следующему шагу. 🙂
Шаг 11.
Доустанавливаем недостающее
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 вам в помощь.