четверг, 14 марта 2024 г.

Активизация рабочего стола на сервере Linux

Задача: Потребовалось иметь место, куда тонкий клиент THIN CLIENT HP T610 TPC-W006-TC смог бы подключаться по RDP и мониторить аварии в браузере. Одни из вариантов - это подключаться на какой-то действующий виртуальный сервер Linux.

Для этого задействуем на сервере графическое рабочее окружение Xfce, установим службу xrdp и позволим определенному пользователю подключаться к системе.

Проводим обновление и установим репозитарий EPEL.
# dnf update -y
# dnf install epel-release -y


Устанавливаем xrdp:
# dnf install xrdp -y
# systemctl enable xrdp --now
# systemctl status xrdp


Устанавливаем Xfce окружение:
# dnf group install "Xfce"
# systemctl set-default graphical.target


Открываем порт 3389, по которому принимаются подключения по RDP.
# firewall-cmd --add-port=3389/tcp --permanent
(или, если используется определенная зона
# firewall-cmd --zone=internal --add-port=3389/tcp --permanent)
# firewall-cmd --reload

Установка браузера Firefox:
# yum install firefox

Добавляем пользователя operator1 сервера Linux
# adduser operator1
# passwd operator1

И задаем пароль (2 раза)

К сожалению, тонкий клиент имеет ОС на базе урезанной Windows, которая не обладает возможностью подключаться к серверу Linux используя современные безопасные протоколы шифрования.
При попытке подключения тонкий клиент выдает ошибку:
«Connected to IPaddress:3389 SSL_connect: Failure in SSL library (protocol error?)»
На сервере в логах при этом:
[20240312-13:07:53] [INFO ] Socket 12: AF_INET6 connection received from ::ffff:10.0.9.63 port 42912
[20240312-13:07:53] [INFO ] Using default X.509 certificate: /etc/xrdp/cert.pem
[20240312-13:07:53] [INFO ] Using default X.509 key file: /etc/xrdp/key.pem
[20240312-13:07:53] [INFO ] Socket 12: AF_INET6 connection received from ::ffff:10.0.9.63 port 42913
[20240312-13:07:53] [ERROR] libxrdp_force_read: header read error
[20240312-13:07:54] [ERROR] [ITU-T X.224] Connection Sequence: CR-TPDU (Connection Request) failed
[20240312-13:07:53] [INFO ] Using default X.509 certificate: /etc/xrdp/cert.pem
[20240312-13:07:54] [INFO ] Using default X.509 key file: /etc/xrdp/key.pem
[20240312-13:07:54] [ERROR] xrdp_sec_incoming: xrdp_iso_incoming failed
[20240312-13:07:54] [ERROR] libxrdp_force_read: header read error
[20240312-13:07:54] [ERROR] [ITU-T X.224] Connection Sequence: CR-TPDU (Connection Request) failed
[20240312-13:07:54] [ERROR] xrdp_rdp_incoming: xrdp_sec_incoming failed
[20240312-13:07:54] [ERROR] xrdp_process_main_loop: libxrdp_process_incoming failed
[20240312-13:07:54] [ERROR] xrdp_sec_incoming: xrdp_iso_incoming failed
[20240312-13:07:54] [ERROR] xrdp_rdp_incoming: xrdp_sec_incoming failed
[20240312-13:07:54] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[20240312-13:07:54] [ERROR] Sending [ITU T.125] DisconnectProviderUltimatum failed
[20240312-13:07:54] [ERROR] xrdp_process_main_loop: libxrdp_process_incoming failed
[20240312-13:07:54] [ERROR] xrdp_iso_send: trans_write_copy_s failed
[20240312-13:07:54] [ERROR] Sending [ITU T.125] DisconnectProviderUltimatum failed
[20240312-13:07:54] [INFO ] Socket 12: AF_INET6 connection received from ::ffff:10.0.9.63 port 42914
[20240312-13:07:54] [INFO ] Using default X.509 certificate: /etc/xrdp/cert.pem
[20240312-13:07:55] [INFO ] Using default X.509 key file: /etc/xrdp/key.pem
[20240312-13:07:55] [INFO ] Security protocol: configured [SSL|RDP], requested [SSL|HYBRID|RDP], selected [SSL]
[20240312-13:07:55] [ERROR] SSL_accept: Failure in SSL library (protocol error?)
[20240312-13:07:55] [ERROR] SSL: error:14209102:SSL routines:tls_early_post_process_client_hello:unsupported protocol
[20240312-13:07:55] [ERROR] trans_set_tls_mode: ssl_tls_accept failed
[20240312-13:07:55] [ERROR] xrdp_sec_incoming: trans_set_tls_mode failed
[20240312-13:07:55] [ERROR] xrdp_rdp_incoming: xrdp_sec_incoming failed
[20240312-13:07:55] [ERROR] xrdp_process_main_loop: libxrdp_process_incoming failed


К сожалению решение проблемы заключается в понижении уровня безопасности сервера.
Первое действие – это активация старых протоколов, которые в 2024 году уже устарели (например RSA шифрование)
# update-crypto-policies --set LEGACY
После этого требуется перезагрузка
Второе действие – включение протоколов TLSv1 в настройках xrdp
# nano /etc/xrdp/xrdp.ini
В строку
ssl_protocols=TLSv1.2, TLSv1.3
Добавляем настройки TLSv1:
ssl_protocols=TLSv1.2, TLSv1.3, TLSv1, TLSv1.1
После этого ресторуем сервис xrdp
# systemctl restart xrdp

Теперь проблем подключения по RDP у тонкого клиента THIN CLIENT HP T610 TPC-W006-TC нет.

Комментариев нет:

Отправить комментарий