Вопрос или проблема
У меня Ubuntu 22.04, и я пытаюсь подключиться к локальному компьютеру с Windows через Remmina. Я могу подключиться к этому же компьютеру с Windows с другого компьютера под управлением Windows, используя удаленный рабочий стол. Когда я пытаюсь подключиться через Remmina, я получаю следующие ошибки:
Это окно может помочь вам найти проблемы с подключением.
Вы можете в любой момент остановить и запустить журналирование с помощью переключателя ВКЛ/ВЫКЛ.
Кнопка статистики (Ctrl+T) может быть полезна для сбора системной информации, которую вы можете поделиться при сообщении об ошибке.
Дополнительную информацию о отладке Remmina можно найти по адресу https://gitlab.com/Remmina/Remmina/-/wikis/Usage/Remmina-debugging
(DEBUG) - (rcw_map_event) - Сопоставление: RemminaConnectionWindow
(DEBUG) - (remmina_protocol_widget_map_event) - Вызов функции сопоставления плагина
(DEBUG) - (remmina_protocol_widget_open_connection_real) - Открытие соединения
(DEBUG) - (remmina_rdp_event_init) - Отключение плавной прокрутки установлено на 0
(DEBUG) - (remmina_rdp_event_init) - Добавление GDK_SMOOTH_SCROLL_MASK
(DEBUG) - (remmina_protocol_widget_open_connection_real) - Имеется SSH
(DEBUG) - (remmina_rdp_main) - Путь к данным RDP составляет /home/xyz/.local/share/remmina/RDP
(DEBUG) - (remmina_rdp_main) - Не используются настройки системного прокси
(DEBUG) - (remmina_rdp_tunnel_init) - Инициализация туннеля
(DEBUG) - (remmina_protocol_widget_start_direct_tunnel) - Инициализация SSH туннеля…
(DEBUG) - (remmina_protocol_widget_start_direct_tunnel) - Вызов remmina_public_get_server_port
(DEBUG) - (remmina_protocol_widget_start_direct_tunnel) - Вызов remmina_public_get_server_port (туннель)
(DEBUG) - (remmina_protocol_widget_start_direct_tunnel) - сервер: 10.0.0.5, порт: 3389
(DEBUG) - (remmina_rdp_tunnel_init) - protocol_plugin_start_direct_tunnel() вернул [10.0.0.5]:3389
(DEBUG) - (remmina_rdp_tunnel_init) - Туннель был опционально инициализирован. Теперь подключаемся к 10.0.0.5:3389
(DEBUG) - (remmina_rdp_main) - gfx_h264_available: 0
(DEBUG) - (remmina_rdp_main) - Разрешение, установленное пользователем: 596x440
(DEBUG) - (remmina_rdp_main) - Разрешение, установленное после обходных путей: 596x440
(DEBUG) - (remmina_rdp_main) - proxy_type: (null)
(DEBUG) - (remmina_rdp_main) - proxy_username: (null)
(DEBUG) - (remmina_rdp_main) - proxy_password: (null)
(DEBUG) - (remmina_rdp_main) - proxy_hostname: (null)
(DEBUG) - (remmina_rdp_main) - proxy_port: 80
(DEBUG) - (remmina_rdp_main) - rdp_keyboard_remapping_list: (null)
(DEBUG) - (remmina_rdp_main) - Уровень журнала установлен на INFO
(DEBUG) - (rco_on_disconnect) - Получен сигнал отключения на RemminaProtocolWidget
(DEBUG) - (remmina_file_save) - Сохранение профиля
(DEBUG) - (remmina_file_save) - У нас есть секрет, и disablepasswordstoring=0
(DEBUG) - (remmina_plugin_glibsecret_delete_password) - пароль "password" удален для файла /home/xyz/.local/share/remmina/group_rdp_xyz_10-0-0-5.remmina
(DEBUG) - (remmina_file_save) - У нас есть секрет, и disablepasswordstoring=0
(DEBUG) - (remmina_plugin_glibsecret_delete_password) - пароль "ssh_tunnel_password" удален для файла /home/xyz/.local/share/remmina/group_rdp_xyz_10-0-0-5.remmina
(DEBUG) - (remmina_file_save) - У нас есть секрет, и disablepasswordstoring=0
(DEBUG) - (remmina_plugin_glibsecret_delete_password) - пароль "gateway_password" удален для файла /home/xyz/.local/share/remmina/group_rdp_xyz_10-0-0-5.remmina
(DEBUG) - (remmina_file_save) - У нас есть секрет, и disablepasswordstoring=0
(DEBUG) - (remmina_plugin_glibsecret_delete_password) - пароль "ssh_tunnel_passphrase" удален для файла /home/xyz/.local/share/remmina/group_rdp_xyz_10-0-0-5.remmina
(DEBUG) - (remmina_file_save) - Профиль сохранен
(DEBUG) - (remmina_file_save) - Состояния профиля подключения сохранены
(DEBUG) - (remmina_network_monitor_status) - G_NETWORK_CONNECTIVITY_FULL
(DEBUG) - (rco_on_disconnect) - Не удалось отключиться
Remmina использует xfreerdp, который использует openssl для шифрования соединения через RDP с компьютером под управлением Windows.
Ubuntu 22.04 поставляется с OpenSSL 3.0. Openssl3 изменил уровень безопасности по умолчанию для tls<1.2 и sha1 с уровня безопасности 1 на 0. Это означает, что Windows 7 и Windows Server 2008 (возможно, и 2012?) и более ранние версии не будут работать по умолчанию.
Если вы хотите провести быстрый тест перед тем, как попытаться получить новую версию Remmina, просто запустите freerdp из терминала с пониженным уровнем TLS:
xfreerdp /v:hostname_or_ip /u:username /p:password /cert:ignore /tls-seclevel:0
Ubuntu 22.04 имеет Remmina 1.4.25 как последнюю версию, но эта проблема была исправлена в Remmina 1.4.26, и по состоянию на 2022-07-21 Remmina в настоящее время находится на версии 1.4.27.
Ведется обсуждение возможности отката Remmina 1.4.26 для Ubuntu 22.04, но до тех пор вы можете установить версию flatpack, snap или перекомпилированную версию. Существует PPA для Remmina, и она находится на версии 1.4.27, так что все в порядке, но она не поддерживается регулярно и может отставать на месяц или два.
Как только у вас будет последняя версия, щелкните правой кнопкой мыши на сохранённое RDP-соединение и выберите “редактировать”. На вкладке “Дополнительно” измените “Уровень безопасности TLS” с умолчанию на “0 – Совместимо с Windows 7”. Затем нажмите кнопку “Сохранить и подключиться”.
Remmina предлагает отличное руководство по обновлению до последней версии.
Учтите, что flatpak и snap не очень хорошо работают с темами, поэтому, если эстетика важна для вас, установите пакет для вашей ОС вместо этого.
Иногда проблемы с подключением (xfreerdp и remmina) определенно связаны с самим паролем, особенно с восклицательными знаками в конце – я предполагаю, что это связано с bash.
Для меня это сработало: xfreerdp /v:hostname /d:domain /u:username /p:’password’ /cert-ignore
Это также работает без пароля в remmina и xfreerdp, если ввести его вручную, когда вас об этом попросят.
Конечно, это лишь обходной путь.
Ответ или решение
Решение проблемы подключения к компьютеру с Windows через Remmina на Ubuntu 22.04
Если вы столкнулись с ошибками при подключении к локальному компьютеру с Windows через Remmina на Ubuntu 22.04, не переживайте. В этом ответе мы рассмотрим возможные причины проблемы и эффективные решения, чтобы помочь вам восстановить подключение.
Проблема
Вы пытаетесь подключиться к Windows-компьютеру, который успешно доступен для других Windows-клиентов через Remote Desktop. Однако при использовании Remmina возникают ошибки, связанные с авторизацией и установлением соединения. Логи Remmina показывают, что инициализация туннеля завершилась успешно, но подактивные параметры и уровень безопасности TLS могут быть источником проблем.
Причины
-
Изменения в OpenSSL 3.0: Начиная с Ubuntu 22.04, установленная версия OpenSSL имеет новые настройки безопасности. Уровень безопасности TLS изменен, что может вызвать проблемы совместимости с более старыми версиями Windows (такими как Windows 7 и Windows Server 2008).
-
Версии Remmina и FreeRDP: В вашей версии Remmina 1.4.25 могут отсутствовать важные исправления, касающиеся работы с протоколом RDP, которые были внедрены в более поздних версиях.
-
Проблема с паролем: В некоторых случаях символы, такие как восклицательный знак в конце пароля, могут вызывать ошибки при передаче пароля через командную строку в xfreerdp или Remmina.
Решения
1. Используйте обновленную версию Remmina
Обновление до последней версии Remmina может решить вашу проблему, так как новые версии содержат исправления и улучшения.
- Установите Remmina через PPA:
sudo add-apt-repository ppa:remmina-ppa-team/remmina-next sudo apt update sudo apt install remmina
2. Используйте xfreerdp с пониженным уровнем безопасности
Для быстрой проверки подключения, вы можете использовать следующую команду в терминале:
xfreerdp /v:hostname_or_ip /u:username /p:'password' /cert:ignore /tls-seclevel:0
Здесь /tls-seclevel:0
понижает требования к безопасности, что позволяет подключаться к более старым версиям Windows.
3. Настройка соединения в Remmina
После обновления Remmina выполните следующие действия:
- Откройте список сохраненных подключений и выберите нужное.
- Щелкните правой кнопкой мыши и выберите "Редактировать".
- На вкладке "Дополнительно" измените "Уровень безопасности TLS" с "По умолчанию" на "0 – Совместимость с Windows 7".
- Сохраните и повторите подключение.
4. Проверка пароля
Убедитесь, что ваш пароль корректен. Попробуйте запустить xfreerdp, вводя пароль вручную, либо заключите его в одинарные кавычки, чтобы избежать проблем с интерпретацией:
xfreerdp /v:hostname /u:username /p:'yourpassword' /cert:ignore
Заключение
Если вы следовали данным рекомендациям, вероятность успешного соединения с компьютером с Windows через Remmina значительно увеличится. Обновление обоих инструментов и корректная настройка параметров соединения помогут предотвратить возможные ошибки. Если проблема сохраняется, рассмотрите возможность обращения в сообщество разработчиков Remmina или FreeRDP для получения дополнительной поддержки.
Помните, что регулярные обновления и мониторинг изменений в программном обеспечении помогут обеспечить стабильную и безопасную работу вашего рабочего окружения.