Instalace a konfigurace xrdp pro používání Vzdálené plochy s Ubuntu

Platí pro: ✔️ Flexibilní škálovací sady virtuálních počítačů s Linuxem ✔️

Pokud s Linuxem začínáte, nebo v případě rychlých scénářů řešení potíží může být použití vzdálené plochy jednodušší než přístup k protokolu SSH (Secure Shell). Tento článek podrobně popisuje, jak nainstalovat a nakonfigurovat desktopové prostředí (xfce) a vzdálenou plochu (xrdp) pro virtuální počítač s Linuxem s Ubuntu.

Článek byl napsán a otestován pomocí virtuálního počítače s Ubuntu 18.04.

Poznámka

Používání Vzdálené plochy přes internet přináší ve srovnání s používáním místní plochy znatelnou prodlevu (latenci vstupu). To může být ovlivněno několika faktory, včetně rychlosti místního internetu a vzdálenosti od datacentra, kde je virtuální počítač hostovaný. Tato prodleva obvykle neodráží výkon samotného virtuálního počítače.

Požadavky

Tento článek vyžaduje existující virtuální počítač s Ubuntu 18.04 LTS nebo Ubuntu 20.04 LTS v Azure. Pokud potřebujete vytvořit virtuální počítač, použijte jednu z následujících metod:

Instalace desktopového prostředí na virtuální počítač s Linuxem

Většina virtuálních počítačů s Linuxem v Azure nemá ve výchozím nastavení nainstalované desktopové prostředí. Virtuální počítače s Linuxem se běžně spravují pomocí připojení SSH místo desktopového prostředí, existuje však několik desktopových prostředí, která si můžete nainstalovat. V závislosti na vašem výběru desktopového prostředí spotřebuje až 2 GB místa na disku a instalace a konfigurace všech požadovaných balíčků trvá až deset minut.

Následující příklad nainstaluje zjednodušené desktopové prostředí xfce4 na virtuální počítač s Ubuntu. Příkazy pro jiné distribuce se mírně liší (použijte yum například k instalaci v Systému Red Hat Enterprise Linux a konfiguraci příslušných selinux pravidel nebo k zypper instalaci v SUSE).

Nejprve se k virtuálnímu počítači SSH. Následující příklad se připojí k virtuálnímu počítači s názvem myvm.westus.cloudapp.azure.com pomocí uživatelského jména azureuser. Použijte vlastní hodnoty:

ssh azureuser@myvm.westus.cloudapp.azure.com

Pokud používáte Windows a potřebujete další informace o používání protokolu SSH, přečtěte si téma Jak používat klíče SSH ve Windows.

Dále nainstalujte xfce pomocí apt :

sudo apt-get update
sudo DEBIAN_FRONTEND=noninteractive apt-get -y install xfce4
sudo apt install xfce4-session

Instalace a konfigurace serveru vzdálené plochy

Teď, když máte nainstalované desktopové prostředí, nakonfigurujte službu Vzdálené plochy tak, aby naslouchala příchozím připojením vzdáleného přístupu. xrdp je server open source RDP (Remote Desktop Protocol), který je k dispozici ve většině distribucí Linuxu a funguje dobře s xfce. Nainstalujte xrdp na virtuální počítač s Ubuntu následujícím způsobem:

sudo apt-get -y install xrdp
sudo systemctl enable xrdp

V Ubuntu 20 musíte udělit přístup certifikátu uživateli xrdp:

sudo adduser xrdp ssl-cert

Řekněte xrdp, jaké desktopové prostředí má použít při spuštění relace. Nakonfigurujte xrdp tak, aby jako desktopové prostředí používal xfce, a to následujícím způsobem:

echo xfce4-session >~/.xsession

Restartujte službu xrdp, aby se změny projevily následujícím způsobem:

sudo service xrdp restart

Nastavení hesla místního uživatelského účtu

Pokud jste při vytváření virtuálního počítače vytvořili heslo pro svůj uživatelský účet, tento krok přeskočte. Pokud používáte pouze ověřování pomocí klíče SSH a nemáte nastavené heslo místního účtu, zadejte heslo před použitím xrdp pro přihlášení k virtuálnímu počítači. xrdp nemůže přijmout klíče SSH pro ověřování. Následující příklad určuje heslo pro uživatelský účet azureuser:

sudo passwd azureuser

Poznámka

Zadáním hesla se neaktualizuje konfigurace SSHD tak, aby umožňovala přihlášení heslem, pokud tomu tak aktuálně není. Z hlediska zabezpečení se můžete chtít připojit k virtuálnímu počítači pomocí tunelu SSH pomocí ověřování na základě klíčů a pak se připojit k xrdp. Pokud ano, přeskočte následující krok k vytvoření pravidla skupiny zabezpečení sítě, které povolí provoz vzdálené plochy.

Vytvoření pravidla skupiny zabezpečení sítě pro provoz vzdálené plochy

Aby se provoz vzdálené plochy mohl dostat k virtuálnímu počítači s Linuxem, je potřeba vytvořit pravidlo skupiny zabezpečení sítě, které umožní připojení protokolu TCP na portu 3389 k vašemu virtuálnímu počítači. Další informace o pravidlech skupiny zabezpečení sítě najdete v tématu Co je skupina zabezpečení sítě? K vytvoření pravidla skupiny zabezpečení sítě můžete použít také Azure Portal.

Následující příklad vytvoří pravidlo skupiny zabezpečení sítě pomocí příkazu az vm open-port na portu 3389. V Azure CLI, nikoli v relaci SSH k vašemu virtuálnímu počítači, otevřete následující pravidlo skupiny zabezpečení sítě:

az vm open-port --resource-group myResourceGroup --name myVM --port 3389

Připojení virtuálního počítače s Linuxem pomocí klienta vzdálené plochy

Otevřete místního klienta vzdálené plochy a připojte se k IP adrese nebo názvu DNS virtuálního počítače s Linuxem.

Snímek obrazovky klienta vzdálené plochy

Následujícím způsobem zadejte uživatelské jméno a heslo pro uživatelský účet na virtuálním počítači:

Snímek obrazovky s přihlašovací obrazovkou xrdp

Po ověření se desktopové prostředí xfce načte a bude vypadat podobně jako v následujícím příkladu:

Desktopové prostředí xfce prostřednictvím xrdp

Pokud váš místní klient RDP používá ověřování na úrovni sítě (NLA), možná budete muset toto nastavení připojení zakázat. XRDP v současné době nepodporuje NLA. Můžete se také podívat na alternativní řešení protokolu RDP, která podporují NLA, například FreeRDP.

Řešení potíží

Pokud se nemůžete připojit k virtuálnímu počítači s Linuxem pomocí klienta Vzdálené plochy, pomocí příkazu netstat na virtuálním počítači s Linuxem ověřte, že virtuální počítač naslouchá připojení RDP, a to následujícím způsobem:

sudo netstat -plnt | grep rdp

Následující příklad ukazuje, že virtuální počítač podle očekávání naslouchá na portu TCP 3389:

tcp     0     0      127.0.0.1:3350     0.0.0.0:*     LISTEN     53192/xrdp-sesman
tcp     0     0      0.0.0.0:3389       0.0.0.0:*     LISTEN     53188/xrdp

Pokud služba xrdp-sesman nenaslouchá , restartujte ji na virtuálním počítači s Ubuntu následujícím způsobem:

sudo service xrdp restart

Projděte si protokoly v /var/log na virtuálním počítači s Ubuntu, kde najdete informace o tom, proč služba nemusí reagovat. Můžete také monitorovat syslog během pokusu o připojení ke vzdálené ploše a zobrazit případné chyby:

tail -f /var/log/syslog

Jiné distribuce Linuxu, jako je Red Hat Enterprise Linux a SUSE, můžou mít různé způsoby restartování služeb a alternativních umístění souborů protokolu, které je potřeba zkontrolovat.

Pokud v klientovi vzdálené plochy neobdržíte žádnou odpověď a v systémovém protokolu se nezobrazí žádné události, znamená to, že provoz vzdálené plochy se nemůže dostat k virtuálnímu počítači. Zkontrolujte pravidla skupiny zabezpečení sítě a ujistěte se, že máte pravidlo pro povolení protokolu TCP na portu 3389. Další informace najdete v tématu Řešení potíží s připojením aplikace.

Další kroky

Další informace o vytváření a používání klíčů SSH na virtuálních počítačích s Linuxem najdete v tématu Vytvoření klíčů SSH pro virtuální počítače s Linuxem v Azure.

Informace o používání protokolu SSH z Windows najdete v tématu Jak používat klíče SSH ve Windows.