поиск стабильного способа удаленного доступа к рабочему столу Ubuntu 24.04.1 (vncserver и rdp) после перезагрузки [дубликат]

Вопрос или проблема

У меня правильно настроен (tigerVNC) vncserver на новом установленном Ubuntu 24.04.1, и я также попробовал использовать стандартную функцию удаленного входа в ubuntu 24.04. Оба варианта не сохраняют рабочий стол после перезагрузки.

Я использую следующий файл xstartup в папке .vnc для правильной инициализации vncserver с xfce4.

env -i /bin/sh -c "export PATH=$PATH;
                   export XAUTHORITY=$XAUTHORITY;
                   export DISPLAY=$DISPLAY;
                   export HOME=$HOME;
                   export LOGNAME=$LOGNAME;
                   export USER=$USER;
                   /usr/bin/xfce4-session"

Странно, но я могу успешно запустить vncserver только после того, как войду в систему на ПК. Любая попытка запустить vncserver через ssh или при запуске системы завершается неудачей.

Через ssh я могу загрузиться с помощью tigervncserver -xstartup /usr/bin/xterm, но не могу заставить работать xfce4 или стандартный рабочий стол Gnome.

У меня есть доступ к рабочему столу rdp через стандартную функцию удаленного совместного использования (не устанавливал xrdp). Тем не менее, каждый раз, когда я удаленно вхожу в систему (не находясь в одной сети интра или Wi-Fi, а через vpn или маршрутизацию шлюза), я не могу успешно войти в rdp-рабочий стол. Я пробовал ssh -X, а также использовать openVPN для подключения к этой сети. Пока ничего не работает. Подключение либо не удается сразу.

Буду признателен за любые предложения, которые могут помочь решить проблему. Либо это касается запуска vncserver через ssh/при загрузке для Xfce, либо настройки rdp, чтобы я мог удаленно получить доступ к рабочему столу после перезагрузки сервера ubuntu. Поскольку перезагрузка сервера иногда происходит.

Предложенный мной способ в ответе ниже сталкивается с другой проблемой, как упоминали другие:
RDP не сохраняет сеансы в активном состоянии в Ubuntu 24.04 после отключения
Как отключить выход из системы при отключении сеанса в родном RDP Ubuntu

В двух словах, когда я закрываю соединение RDP, сервер ubuntu выходит из системы, и в следующий раз, когда я снова вхожу в ubuntu через RDP, это новая сессия, а не предыдущая.

Я пытался обойти эту проблему, совместив экран, что означает, что я физически вошел в учетную запись перед ноутбуком и оставил машину включенной. Однако я обнаружил, что не могу получить доступ к совместному использованию рабочего стола, когда не нахожусь в интра-сети сервера ubuntu. Тем не менее, удаленный вход работает в такой настройке. Но удаленный вход сбрасывает все после того, как я закрою окно клиента RDP, что нежелательно.

Так что я все еще страдаю от отсутствия надлежащего способа работы с ubuntu 24.04 удаленно. Я жду любых предложений.

Кроме того, vncserver испытывает значительную задержку при подключении через туннель openVPN, я предпочел бы, чтобы работала функция удаленного входа.

обновление 26дек2024
введите описание изображения здесь

использование chrome-remote-desktop наконец-то отлично работает после перезагрузки. Я не получил стандартный интерфейс ubuntu, а интерфейс xfce4 при удаленном входе.
(выберите первый вариант, показанный выше для рабочего стола linux GUI, остальные варианты, похоже, не работают)

###предыдущий ответ##################

Я наконец разобрался с удаленным входом через RDP, используя ответ на следующий вопрос. Vncserver не так полезен, как RDP в 24.04.1. Мне не нужно устанавливать xrdp, так как удаленный вход – это теперь стандартная функция в ubuntu 24.04.1, просто включите её в настройках->система->удаленный рабочий стол. Проблема с таким способом удаленного входа в систему заключается в том, что после отключения клиента RDP вся удаленная сессия выходит из системы, на этот вопрос пока нет ответа.

Черный экран RDP с белым курсором на 24.04LTS

В новом клиенте Microsoft RDP (теперь называемом Windows App) вам нужно
изменить настройки в RDP-файле.

  1. Найдите строку, которая говорит: use redirection server name:i:0
  2. Измените её на: use redirection server name:i:1

Если вы не можете найти RDP-файл, вы можете создать новый:

  1. Щелкните правой кнопкой мыши по вашему текущему соединению.
  2. Выберите “Экспорт”, чтобы сохранить файл.
  3. Откройте сохраненный файл и внесите изменения, упомянутые выше.
  4. Импортируйте отредактированный файл как новое соединение.

Хочу выразить благодарность: Ответ на Reddit от @JohnDoeMan79

Ответ или решение

Для установки надежного удаленного доступа к рабочему столу Ubuntu 24.04.1 после перезагрузки, стоит рассмотреть два основных метода — использование VNC (TigerVNC) и RDP (встроенная функция удаленного доступа). Давайте подробнее рассмотрим каждый из них и предложим эффективные решения.

Удаленный доступ через VNC

Шаг 1: Настройка VNC сервера

  1. Убедитесь, что вы установили TigerVNC:

    sudo apt update
    sudo apt install tigervnc-standalone-server tigervnc-viewer
  2. Создайте и настройте файл .vnc/xstartup в домашнем каталоге вашего пользователя, чтобы использовать XFCE:

    #!/bin/sh
    unset SESSION_MANAGER
    unset DBUS_SESSION_BUS_ADDRESS
    exec /usr/bin/startxfce4 &

    Не забудьте сделать файл исполняемым:

    chmod +x ~/.vnc/xstartup
  3. Запустите VNC сервер:

    vncserver

Шаг 2: Автоматический запуск VNC сервера

Для того чтобы запускать VNC сервер автоматически при загрузке системы, создайте системный сервис:

  1. Создайте файл сервиса:

    sudo nano /etc/systemd/system/vncserver@:1.service
  2. Заполните файл следующим образом:

    [Unit]
    Description=Start VNC Server at startup
    After=display-manager.service
    
    [Service]
    Type=forking
    User=YOUR_USERNAME
    PAMName=login
    PIDFile=/home/YOUR_USERNAME/.vnc/%H:%i.pid
    ExecStart=/usr/bin/vncserver -geometry 1280x1024 -depth 24 :1
    ExecStop=/usr/bin/vncserver -kill :1
    
    [Install]
    WantedBy=multi-user.target

    Не забудьте заменить YOUR_USERNAME на ваше имя пользователя.

  3. Активируйте и запустите сервис:

    sudo systemctl daemon-reload
    sudo systemctl enable vncserver@:1.service
    sudo systemctl start vncserver@:1.service

Проблемы с подключением

  • Чёрный экран и белый курсор: Убедитесь, что у вас корректно настроен файл xstartup. Попробуйте использовать другую графическую оболочку, например, XFCE, как показано выше.

  • Ошибка с авторизацией через SSH: Если вы хотите запускать vncserver через SSH, убедитесь, что все переменные окружения правильно настроены в вашем xstartup.

Удаленный доступ через RDP

Собственная функция удаленного доступа в Ubuntu 24.04.1 может работать, но иногда возникают проблемы с сохранением сессий.

Шаг 1: Включение удаленного доступа

  1. Откройте настройки Ubuntu и перейдите в раздел «Система» -> «Удаленный рабочий стол».
  2. Включите функцию, отметив соответствующий пункт.

Шаг 2: Настройка непрерывности сессий

Чтобы избежать завершения сессии при отключении RDP, вы можете использовать xrdp для управления сессиями:

  1. Установите xrdp:

    sudo apt install xrdp
  2. Настройте xrdp, чтобы он использовал вашу существующую сессию:

    echo "xfce4-session" > ~/.xsession
  3. Перезапустите службу xrdp:

    sudo systemctl restart xrdp

Проблемы с подключением через VPN

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

  • Настройки VPN позволяют проходить трафик на используемый вами порт RDP (обычно 3389).
  • Ваш маршрутизатор и брандмауэр открыты для необходимого трафика.

Резюме

В действительности, для стабильного удаленного доступа к Ubuntu 24.04.1 после перезагрузки, рекомендуем использовать подход VNC с автоматизированным запуском или RDP с корректной настройкой сессий. Поскольку каждый метод имеет свои преимущества и недостатки, выбор должен основываться на вашем конкретном сценарии использования и потребностях.

Если у вас остались вопросы по настройке или возникли трудности, не стесняйтесь обращаться за помощью – в мире IT всегда найдется решение!

Оцените материал
Добавить комментарий

Капча загружается...