Невозможно сделать удаленный рабочий стол, используя xrdp

У меня есть виртуальная машина Ubuntu, к которой мне нужно сделать удаленный рабочий стол. У меня нет физического доступа к этой машине, и я могу сделать только SSH к машине. Я хотел сделать удаленный рабочий стол и предложил множество вариантов (vnc, xrdp, opennx). Я использовал xrdp и установил необходимые пакеты на машине с Ubuntu (xrdp и зависимые). Затем я включил удаленный доступ в Ubuntu, используя следующую опцию командной строки.

gconftool-2 -s -t bool /desktop/gnome/remote_access/enabled true

gconftool-2 -s -t bool /desktop/gnome/remote_access/prompt_enabled false

Затем я перезапустил xrdp (/etc/init.d/xrdp start). Но когда я пытаюсь сделать rdp с помощью клиента Windows (mstsc), я получаю следующую ошибку. Удаленный доступ к серверу не включен.

Как мне решить эту проблему? Пожалуйста, помогите.

Радж

11
задан 10 June 2016 в 23:05

7 ответов

Я наконец заставил это работать на меня; установка: более старый ноутбук рабочая человечность 13.10 рабочая стандартная единица; я установил каирское прикрепление (который делает его намного более применимым для меня); все еще привыкший к панели приложения левой стороны;

Было бы хорошо смочь использовать мою win7 систему для rdp в эту человечность 13.10, таким образом, я провел несколько часов этим утром, проводя исследование. Вот то, что я сделал:

sudo apt-get update
sudo apt-get install xrdp

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

Установка, казалось, пошла хорошо, и казалось, что xrdp сервис был запущен хорошо.

От моего win7 поля я открыл rdp окно и использовал IP-адрес ноутбука для входа; окно действительно открывалось, но просто стандарт x11 экран окон (шаблон штриховки с x курсором); никакие ссылки, значки или меню для использования.

Больше исследования Google. Я установил нейтрализацию сессии гнома:

$ sudo apt-get install gnome-session-fallback
$ echo "gnome-session --session=gnome-fallback" > ~/.xsession

Это не работало; я получил тот же пустой экран, но нашел другой URL, который предложил другую сессию окон менеджер как XFCE, таким образом, я установил xubuntu рабочий стол:

$ sudo apt-get install xubuntu-desktop
$ echo "xfce4-session" > ~/.xsession

Не забывайте sudo /etc/init.d/xrdp restart после всех изменений.

Это работало. Сначала, на начальном запуске rdp сессии, я получил тот же пустой экран, но после того, как 10 секунд (вероятно, потому что я использую win7 VDI на работе от удаленного местоположения) вытолкали применимый xfce xubuntu рабочий стол; не столь хороший как гном, но очень применимый.

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

Dave

1
ответ дан 10 June 2016 в 23:05
sudo ufw disable 

затем попытайтесь войти в систему с помощью rdp.. клиентское программное обеспечение. Я нахожусь в процессе установки этого для 12,04 Linux vps, до сих пор я подключился, но не наблюдение рабочего стола только командное окно.

Привет зародыш, Вы сказали, что подключились и все, что Вы видите, окно терминала, я не знаю то, что Ваш полный набор - слишком здесь, s шахта, я надеюсь, что это помогает.

Убедитесь, что Ваш vncserver работает vncserver :1 далее nano в ~/.vnc/xstartup это приносит Вам к мусорному ведру!! bla bla файл, где Вы видите последнюю строку (& -x-window-manager), добавьте & /etc/X11/Xsession &

Теперь войдите в этот файл, /etc/xrdp/startwm.sh и УБЕДИТЕСЬ ТАМ, Ваша последняя строка

. /etc/X11/Xsession

после выполнения так перезапускают vncserver путем выполнения этого.

vncserver -kill :1 

затем перезапуск

vncserver :1

По тому, как я должен был установить больше, чем просто Xrdp, и я сделал еще несколько команд для падения назад, если Xrdp перестал работать, все кажется хорошим в минуту для меня, дайте ему уверенное движение, и сообщает тому, что готовит или нет.Удачи. Ps. его гидроразрыв, большой, когда это будет работать, останьтесь с ним.

1
ответ дан 10 June 2016 в 23:05

В частности, я не знаком с xrdp, но первое, что я проверю, это чтобы увидеть, является ли используемый им порт а) прослушиванием соединений и б) открытым для внешнего мира. Порт по умолчанию для RDP: 3389 .

Первое довольно легко проверить; просто запустите это в терминале на машине, к которой вы пытаетесь подключиться (измените 3389, если xrdp прослушивает другой порт):

netstat -an | grep "LISTEN " | grep ":3389"

Если вы получите что-то похожее на следующее, что-то по крайней мере ( надеюсь, xrdp) прослушивает соединения:

tcp        0      0 127.0.1.1:3389            0.0.0.0:*               LISTEN

Если вы не получили никакого вывода, попробуйте (пере) запустить xrdp или убедитесь, что у вас есть правильный порт.

Далее, вам нужно убедиться, что машина доступна для Интернета через этот порт, что включает две вещи: убедитесь, что брандмауэр на самой машине не блокирует соединения с этим портом, и убедитесь, что любой сетевое устройство (то есть маршрутизатор) между компьютером, к которому вы пытаетесь подключиться, и Интернетом не блокирует соединения. PortForward.com может помочь с последним; первое зависит от того, какой брандмауэр установлен на вашем компьютере, если таковой имеется.

Надеюсь, это поможет!

0
ответ дан 10 June 2016 в 23:05

Добро пожаловать в сообщество Ubuntu.

Прежде всего, проверьте сетевые настройки Windows Virtual Machine в Virtual Box. Выберите Bridge Connection в настройках сети. Убедитесь, что RDP разрешено проходить через межсетевой экран Window Client.

0
ответ дан 10 June 2016 в 23:05

Если через брандмауэр разрешен только порт 22, и вы не можете контролировать свой сетевой путь, вы можете использовать ssh-туннелирование для туннелирования выбранного вами порта удаленного устройства через вашу локальную систему.

Если вы делаете это из окна Linux / Unix, посмотрите на флаг -L для ssh:

ssh -L 3390:127.0.0.1:3389 -l remote_user remote_host

где первый 3390 - номер локального порта, а второй 3389 - номер удаленного порта; Вы бы тогда RDC к 127.0.0.1:3390 для подключения. Обратите внимание, что туннель привязан к сеансу ssh - если вы закроете этот сеанс ssh, туннель также закроется, и ваше соединение с удаленным рабочим столом будет разорвано. Убедитесь, что вы используете неиспользуемый порт для локальной сети.

При подключении из системы Windows используйте putty и включите параметры туннелирования ssh для своего сеанса (посмотрите соединения-> SSH-> Туннели в параметрах конфигурации сеанса.)

Как только туннель будет установлен, вы можете используйте выбранный вами RDP-клиент для подключения. Несколько других ответов касаются этой части установки (лично я завелся после предложения xfce4-session.)

0
ответ дан 10 June 2016 в 23:05

В файл /etc/xrdp/xrdp.ini добавить адрес = 0.0.0.0, который является адресом xrdp по умолчанию.

Также вы должны разрешить брандмауэру прослушивать соединения через порт 3389, над которым работает xrdp. Для этого выполните:

sudo ufw allow 3389

Если это тоже не работает:

  1. Перезагрузите ПК
  2. Отключите брандмауэр (sudo ufw disable) на сервере и затем перепроверить (может потребоваться еще один перезапуск).

В случае, если вы пропустили это, я перечислю всю процедуру ниже (это было боль , чтобы собрать). Вы будете в порядке с этим, если вы будете следовать шаг за шагом (обещание!).


Удаленный рабочий стол между пошаговыми инструкциями любой ОС

I . Windows в / из Windows:

Используйте программное обеспечение удаленного рабочего стола Windows

II . Linux / Unix в / из любого места

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

- Allow other users to view your desktop
- Best to require a password
- service ssh status
- To allow computers to connect with X11 graphics system capabilities as well, you need to 
    install an X11 server on the computer that is trying to connect (client). So
    * for a Windows computer use XMing
    * for a Linux Ubuntu computer use XQuartz

IIa . Windows в Linux от терминала с поддержкой графики

- Launch XMing on Windows client
- Launch Putty
    * Fill in basic options
    * Connection -> SSH -> X11
        -> Enable X11 forwarding
        -> X display location = :0.0
        -> MIT-Magic-Cookie-1
        -> X authority file for local display = point to the Xming.exe executable

IIb . (б для лучшего) Windows для Linux с полной поддержкой графического интерфейса. Это то, что большинство из вас захочет.

- install xrdp which uses the remote desktop protocol to present a GUI to the user. 
    It can provide a fully functional Linux terminal server, capable of accepting connections 
    from rdesktop, freerdp, and Microsoft's own terminal server / remote desktop clients. 
    xrdp is the daemon that handles RDP remote desktop access from Windows machines to Linux 
- edit the "/etc/xrdp/xrdp.ini" file to include the line:
    address=0.0.0.0
    right under #background=626x72 line. 0.0.0.0 is the local server address of xrdp
- Restart xrdp service
- allow xrdp port (probably 3389) through firewall
- We also need a VNC server. Install tightvncserver on Linux server machine. 
- run tightvncserver (no need to create a view-only password)
- "netstat -lvp | grep vnc" to check out the ports that tightvnc is listening on for 
    connections
- allow the vncserver port from the firewall: sudo ufw allow #
- allow the xrdp server
- Install xfce4 desktop environment an update to xfce, minimalistic faster and lightweight
    sudo apt-get install xfce4
- sudo apt-get install xfce4-terminal : way better than xterm
- sudo apt-get install gnome-icon-theme-full tango-icon-theme : installs icon sets
- Now we modify 2 files to make sure xrdp uses xfce4
    * echo xfce4-session >~/.xsession
    * secondly we modify startup file for xRDP located at /etc/xrdp/startwm.sh
        so it will start xfce4. Replace the last line with 
        startxfce4 
        (before it had something which started with a ., but no matter whatever it is, just 
        replace the last line)
    * restart xrdp service: sudo service xrdp restart
- Now you are ready to log into the computer from client using Remote Desktop (mstsc.exe). 
    Just supply the ipv4 or hostname of the VNC server.

III . * nix to / from * nix

- ssh -X [preferedUserName]@[targetIpv4Address] : -X flag enales X11 forwarding
- accept security certificates from trusted hosts when prompted

IV . Обеспечение безопасности соединения (необязательный шаг - относится к любой конфигурации)

VNC & amp; Протоколы xrdp не защищены, что означает, что они не зашифрованы.

Чтобы сделать соединение безопасным, отредактируйте файл /etc/xrdp/xrdp.ini так, чтобы адрес стал 127.0.0.1. Это будет локальный адрес сервера ssh. Шифрование SSH будет использоваться для туннелирования трафика vnc.

- sudo service xrdp restart
- sudo service ssh restart
- pkill Xtightvnc
- tightvncserver
- putty -> Connection -> SSH -> Tunnels 
    * Source port: 5555
    * Destination: localhost:3389

Если вышеперечисленное не работает:

  1. Вам может потребоваться перезагрузить оба компьютера,
  2. Отключить брандмауэр (sudo ufw disable) на сервере ПК и затем перепроверьте (возможно, потребуется еще один перезапуск).
  3. Если вышеперечисленное не работает, значит, вы испортили систему, установив конфликтующие пакеты. Вы должны выполнить ручной поиск и устранение неисправностей (очень маловероятно, что вы достигнете этого шага, если вы будете правильно следовать инструкциям).

Удачи.


Источники и кредит:

0
ответ дан 10 June 2016 в 23:05

Выполнить команды в терминале:

sudo apt-get install xrdp
sudo apt-add-repository ppa:ubuntu-mate-dev/ppa
sudo apt-add-repository ppa:ubuntu-mate-dev/trusty-mate
sudo apt-get update 
sudo apt-get upgrade
sudo apt-get install ubuntu-mate-core ubuntu-mate-desktop


echo mate-session >~/.xsession
sudo service xrdp restart
0
ответ дан 10 June 2016 в 23:05

Другие вопросы по тегам:

Похожие вопросы: