В файле /etc/xrdp/xrdp.ini добавьте адрес = 0.0.0.0, который является адресом xrdp по умолчанию.
Также вы должны разрешить брандмауэру прослушивать соединения через порт 3389, на котором работает xrdp. Для этого выполните:
sudo ufw allow 3389
Если это тоже не сработает:
- Перезагрузите ПК
- Отключите firewall (
sudo ufw disable
) на серверном ПК, а затем перепроверьте (может потребоваться еще один перезапуск).
В случае, если вы пропустили это, я перечислю всю процедуру ниже (что было трудно собрать). Вы будете в порядке с этим, если вы будете следовать шаг за шагом (обещание!).
Удаленный рабочий стол между пошаговыми инструкциями любой ОС
Я . 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 в / из * nix
- ssh -X [preferedUserName]@[targetIpv4Address] : -X flag enales X11 forwarding
- accept security certificates from trusted hosts when prompted
IV . Обеспечение безопасности соединения (необязательный шаг - относится к любой конфигурации)
Протоколы VNC и 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
Если вышеупомянутое не работает:
- Вам может потребоваться перезагрузить оба компьютера,
- Отключите firewall (
sudo ufw disable
) на серверном ПК, а затем перепроверьте (может потребоваться еще один перезапуск).
- Если вышеперечисленное не работает, значит, вы испортили систему, установив конфликтующие пакеты. Вы должны выполнить поиск и устранение неисправностей вручную (очень маловероятно, что вы достигнете этого шага, если будете правильно следовать инструкциям).
Источники и кредит: