Bootstrap

Remmina: универсальный клиент удалённого доступа для Linux

Remmina: универсальный клиент удалённого доступа для Linux

? Remmina: Универсальный клиент удалённого доступа для Linux-экосистемы

? Что такое Remmina?

Remmina — это бесплатный клиент удалённого рабочего стола с открытым исходным кодом, разработанный преимущественно для Linux и других UNIX-подобных систем. Его основная задача — предоставить единый, быстрый и предсказуемый интерфейс для подключения к удалённым машинам по множеству сетевых протоколов. Вместо установки десятков разрозненных утилит пользователь получает одно приложение с вкладочным интерфейсом, системой профилей, централизованным хранением учётных данных и гибкой настройкой сессий.

Проект позиционируется как рабочая лошадка для системных администраторов, разработчиков, инженеров поддержки и всех, кто регулярно взаимодействует с удалёнными системами. Благодаря модульной архитектуре и минимальному потреблению ресурсов, Remmina стабильно работает как на современных десктопах, так и на слабых машинах или тонких клиентах.


? История: от личной утилиты до стандарта де-факто

ГодСобытие
2009Итальянский разработчик Вик Ли (viclee) начинает писать клиент для RDP и VNC на GTK+. Название «Remmina» выбрано в честь небольшого города в Тоскане, Италия, который вдохновил автора.
2010Код выложен в открытый доступ. Проект быстро набирает популярность благодаря простоте и стабильности.
2011–2012Архитектура переработана под плагины. Появляется возможность подключать новые протоколы без переписывания ядра. Добавляются SSH, SPICE, XDMCP.
2014–2015Переход на GTK3, интеграция с современными версиями FreeRDP, улучшение менеджера паролей (libsecret/GNOME Keyring), поддержка масштабирования и синхронизации буфера обмена.
2016–2018Развитие переходит к сообществу. Ключевыми мейнтейнерами становятся Antenore Gatta (teg), Giovanni Panozzo, Michael Goffioul. Проект переезжает на GitHub, получает статус рекомендуемого клиента в Ubuntu, Fedora, Debian, Linux Mint.
2019–2021Внедрение поддержки FreeRDP 2.x, улучшение работы с RD Gateway, NLA-аутентификацией, смарт-картами, HiDPI. Появление официальных сборок в Flatpak и Snap.
2022–2024Оптимизация под Wayland, добавление поддержки аппаратного декодирования, улучшение работы с множественными мониторами, расширение CLI-интерфейса для автоматизации.
2025–2026Активная подготовка к переходу на GTK4, экспериментальные ветки с улучшенной производительностью при высоких разрешениях, интеграция с современными стандартами аутентификации (FIDO2, Kerberos, SAML-шлюзы).

> ? Факт: Remmina не имеет коммерческой версии или «про-подписки». Весь код распространяется под GPL v2, а развитие финансируется за счёт волонтёрского труда, грантов от Linux-фондов и поддержки корпоративных контрибьюторов.


? Архитектура и техническая основа

КомпонентОписание
Язык ядраC (высокая производительность, прямая работа с сетевыми стеками)
GUIGTK3 (стабильная ветка), GTK4 (экспериментальная/в разработке)
Модель плагиновДинамически загружаемые библиотеки libremmina-plugin-*.so. Каждый протокол изолирован, что позволяет обновлять их независимо от основного приложения.
Бэкенды протоколовFreeRDP (RDP), libVNC/libvncserver (VNC), libssh (SSH/SFTP), spice-gtk (SPICE), libx264/libvpx (кодеки)
Хранение настроек~/.local/share/remmina/ (профили, кэш, сессии). Учётные данные делегируются системным хранилищам: libsecret (GNOME Keyring), KDE Wallet, libsecret-совместимые менеджеры.
ЛицензияGNU GPL v2

Преимущества модульной архитектуры:

  • Минимальные зависимости: вы устанавливаете только нужные плагины.
  • Безопасность: уязвимость в одном протоколе не ломает ядро клиента.
  • Расширяемость: разработчики пишут собственные плагины по открытому API.
  • Обновляемость: плагины следят за версиями внешних библиотек (например, FreeRDP 3.x).

? Поддерживаемые протоколы и система плагинов

ПротоколПлагинСтатусКлючевые возможности
RDPrdp✅ СтабильныйNLA, RD Gateway, RemoteFX, H.264/HEVC, UDP-режим, перенаправление дисков/принтеров/USB, смарт-карты, множественные мониторы
VNCvnc✅ СтабильныйTight/ZRLE/Raw, SSH-туннели, масштабирование, шифрование (VeNCrypt/TLS)
SSHssh✅ СтабильныйИнтерактивный терминал, туннели (local/remote/dynamic), выполнение команд, SFTP-браузер, клавиатурные профили
SPICEspice✅ СтабильныйНизкая задержка, аудио/видео стриминг, интеграция с Proxmox/oVirt, динамическое разрешение
XDMCPxdmcp⚠️ LegacyПодключение к X-серверам, ограниченная безопасность
EXECexec⚠️ ЭкспериментальныйЗапуск локальных команд как «удалённых сессий» для унификации интерфейса
NXnx❌ DeprecatedИсторическая поддержка, рекомендуется миграция на X2Go/SPICE

> ? Кастомные плагины: Сообщество публикует расширения для HTTP-прокси, Telnet, Serial-портов, Kiosk-режима. Установка обычно сводится к копированию .so в ~/.local/share/remmina/plugins/ или /usr/lib/remmina/plugins/.


? Ключевые возможности и интерфейс

✅ Рабочая поверхность

  • Вкладочный интерфейс: каждая сессия открывается в отдельной вкладке с возможностью перетаскивания в отдельное окно.
  • Менеджер профилей: группировка по папкам, поиск, теги, экспорт/импорт (формат .remmina), шаблоны для массового создания подключений.
  • Динамическое масштабирование: адаптация под размер окна, фиксированное разрешение, 1:1, подгонка под экран (с сохранением соотношения сторон).
  • Синхронизация: буфер обмена, перенаправление папок, принтеров, аудио, смарт-карт, последовательных портов.

? Безопасность

  • Интеграция с системными хранилищами паролей (без plaintext-файлов).
  • Поддержка NLA, Kerberos, SAML-шлюзов, FIDO2 (через внешние агенты).
  • Валидация сертификатов, пиннинг, отключение небезопасных протоколов по умолчанию.
  • Изоляция сессий: крах одного подключения не влияет на остальные.

⚙️ Автоматизация и CLI

  • Запуск профилей из командной строки: remmina -c profile.remmina
  • Поддержка переменных окружения и скриптов-обёрток.
  • Интеграция с n8n, Ansible, Makefile для развёртывания тестовых стендов.
  • Режим --quiet для headless-сценариев и CI/CD-пайплайнов.

? Сценарии оптимального применения

РольКак использовать Remmina
Системный администраторЦентрализованные профили серверов, jump-хосты через SSH-туннели, группировка по окружениям (prod/stage/dev), автоматическое подключение по расписанию через cron + CLI.
РазработчикБыстрый доступ к удалённым стендам, Docker-хостам, CI-раннерам. Перенаправление локальных папок в RDP-сессию для сборки и отладки.
ТехподдержкаПодключение к ПК пользователей через VNC/RDP, запись сессий (через сторонние утилиты), перенаправление принтеров и файлов для быстрой диагностики.
Образование/ЛабораторииТонкие клиенты на базе Remmina + SPICE/RDP, массовое развёртывание профилей через Ansible, изоляция сессий для студентов.
ДокументированиеЭкспорт профилей в .remmina + импорт в Obsidian/MkDocs для ведения инфраструктуры-карты. Автоматическая генерация списков подключений через скрипты.

? Интеграция в рабочий стек

Remmina легко встраивается в современные open source-экосистемы:

ИнструментИнтеграция
n8nАвтоматическое создание/удаление профилей при развёртывании виртуальных машин, отправка уведомлений о статусе сессий.
Obsidian / ZimХранение .remmina-файлов в базе знаний, линковка на профили из заметок, версионирование конфигураций через Git.
KeePassXCПрямое чтение записей через libsecret, экспорт паролей в Remmina без ручного ввода.
Firefox / ThunderbirdСсылки rdp://, vnc://, ssh:// в почте/вебе открывают Remmina автоматически (настройка MIME-типов).
Yakuake / NeovimБыстрый запуск терминальных сессий через SSH-плагин, интеграция с таск-раннерами и скриптами деплоя.

> ? Совет по настройке: Включите Аппаратное декодирование (если доступно), привяжите хранилище паролей к системе, настройте горячие клавиши для переключения вкладок и полноэкранного режима, используйте шаблоны для повторяющихся окружений.


? Сообщество, разработка и вектор развития

  • Репозиторий: https://github.com/FreeRDP/Remmina (официальный форк, исторически связан с проектом)
  • Мейнтейнеры: Antenore Gatta, Giovanni Panozzo, Michael Goffioul, сообщество контрибьюторов
  • Цикл релизов: Стабильные версии каждые 3–6 месяцев, ночные сборки (nightly) для тестирования новых функций
  • Поддержка языков: 30+ локализаций, включая русский
  • Каналы связи: GitHub Discussions, Matrix (#remmina:matrix.org), mailing list, IRC/Libera.Chat
  • Планы на 2025–2027: - Полный переход на GTK4 с адаптацией под Wayland - Улучшение поддержки многомониторных RDP-сессий с независимым масштабированием - Нативная интеграция с WebAuthn/FIDO2 для корпоративных шлюзов - Расширение публичного API плагинов для сторонних разработчиков - Оптимизация потребления памяти при 10+ одновременных сессиях

? Заключение

Remmina — это не просто «ещё один RDP-клиент». Это зрелая, модульная платформа для удалённого доступа, которая балансирует между минимализмом и мощностью. Благодаря открытой архитектуре, строгой приверженности стандартам и активному сообществу, она остаётся одним из самых надёжных и предсказуемых решений в Linux-экосистеме.

Если ваша работа требует регулярного подключения к серверам, виртуальным машинам, рабочим станциям или лабораторным стендам, Remmina позволяет:

  • ✅ Сократить время на настройку подключений
  • ✅ Устранить дублирование инструментов
  • ✅ Централизовать учётные данные и профили
  • ✅ Автоматизировать повторяющиеся сценарии

Инструмент не навязывает вендорные ограничения, не собирает телеметрию и работает ровно так, как вы его настроите. В этом и заключается его главная ценность.


? Полезные ссылки

  • ? Официальный сайт: https://remmina.org
  • ? Исходный код: https://github.com/FreeRDP/Remmina
  • ? Документация: https://remmina.org/docs/
  • ? Пакеты: Flatpak (com.remmina.Remmina), Snap (remmina), нативные репозитории дистрибутивов
  • ? Участие в проекте: CONTRIBUTING.md в репозитории, переводы через Weblate

Свежие статьи

Ошибка STATUS_ACCOUNT_RESTRICTION в Remmina при подключении к RDP-серверу Windows: причины и решение
15
янв

Ошибка STATUS_ACCOUNT_RESTRICTION в Remmina при подключении к RDP-серверу Windows: причины и решение

Подключаетесь к Windows-серверу из Linux через Remmina, а он выдаёт STATUS_ACCOUNT_RESTRICTION? Пароль верный, с другой учётки всё работает, а с вашей — нет. Проблема не в пароле и не в блокировке. Всё дело в том, что FreeRDP (ядро Remmina) передаёт серверу имя клиента «FreeRDP», а Windows ожидает «Microsoft Terminal Services Client». Сервер или групповая политика отклоняет «чужой» клиент именно этой ошибкой. Решение — подменить имя клиента одной строкой. В статье: точная диагностика, варианты исправления через xfreerdp и Remmina, дополнительные параметры и рекомендации для администраторов.

Прочитать