Instalace a konfigurace xrdp pro použití Vzdálené plochy s Ubuntu
Platí pro: ✔️ Flexibilní škálovací sady virtuálních počítačů s Linuxem ✔️
Pokud s Linuxem nebo pro scénáře rychlého řešení potíží začínáte, může být použití vzdálené plochy snazší než přístup 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 testován pomocí virtuálního počítače s Ubuntu 18.04.
Poznámka
Použití vzdálené plochy přes internet bude ve srovnání s použitím místní plochy představovat výraznou prodlevu (latence 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.
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:
- Azure CLI
- Azure Portal
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í, ale existuje několik desktopových prostředí, která si můžete nainstalovat. V závislosti na zvoleném desktopovém 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
instalaci na Red Hat Enterprise Linux a nakonfigurujte příslušná selinux
pravidla nebo použijte zypper
například instalaci do SUSE).
Nejprve připojte SSH k virtuálnímu počítači. Následující příklad se připojí k virtuálnímu počítači s názvem myvm.westus.cloudapp.azure.com s uživatelským jménem 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í SSH, přečtěte si téma Použití klíčů SSH s 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
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 opensourcový server RDP (Remote Desktop Protocol), který je k dispozici ve většině distribucí Linuxu a funguje dobře s xfce. Na virtuální počítač s Ubuntu nainstalujte nástroj xrdp následujícím způsobem:
sudo apt-get -y install xrdp
sudo systemctl enable xrdp
V Ubuntu 20 potřebujete udělit přístup k certifikátu uživateli xrdp:
sudo adduser xrdp ssl-cert
Řekněte nástroji xrdp, jaké desktopové prostředí se má použít při spuštění relace. Nakonfigurujte nástroj xrdp tak, aby jako desktopové prostředí používal xfce 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 systemctl restart xrdp
Pokud jste při vytváření virtuálního počítače vytvořili heslo pro uživatelský účet, přeskočte tento krok. Pokud používáte jenom ověřování pomocí klíče SSH a nemáte nastavené heslo místního účtu, zadejte heslo před přihlášením k virtuálnímu počítači pomocí xrdp. Xrdp nemůže přijímat klíče SSH pro ověřování. Následující příklad určuje heslo pro uživatele uživatelského účtu azureuser:
sudo passwd azureuser
Poznámka
Zadání hesla neaktualizuje konfiguraci SSHD tak, aby povolovat přihlášení k heslům, pokud se v současné době neaktualizuje. 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í založeného na klíči 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.
Aby se provoz vzdálené plochy dostal k virtuálnímu počítači s Linuxem, je potřeba vytvořit pravidlo skupiny zabezpečení sítě, které protokolu TCP na portu 3389 umožní přístup 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ě? Pomocí webu Azure Portal můžete také vytvořit pravidlo skupiny zabezpečení sítě.
Následující příklad vytvoří pravidlo skupiny zabezpečení sítě pomocí příkazu az vm open-port na portu 3389. Z Azure CLI, ne relace 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
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.
Uživatelské jméno a heslo pro uživatelský účet na virtuálním počítači zadejte následujícím způsobem:
Po ověření se desktopové prostředí xfce načte a bude vypadat podobně jako v následujícím příkladu:
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. Protokol XRDP v současné době nepodporuje vyrovnávání zatížení sítě. Můžete se také podívat na alternativní řešení RDP, která podporují nlA, jako je FreeRDP.
Pokud se nemůžete připojit k virtuálnímu počítači s Linuxem pomocí klienta vzdálené plochy, pomocí netstat
virtuálního počítače s Linuxem ověřte, že váš virtuální počítač naslouchá připojení RDP následujícím způsobem:
sudo netstat -plnt | grep rdp
Následující příklad ukazuje, že virtuální počítač naslouchá na portu TCP 3389 podle očekávání:
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á, na virtuálním počítači s Ubuntu restartujte službu následujícím způsobem:
sudo systemctl restart xrdp
Zkontrolujte protokoly v /var/log na virtuálním počítači s Ubuntu a zjistěte, proč služba nemusí reagovat. Syslog můžete také monitorovat během pokusu o zobrazení jakýchkoli chyb při připojení ke vzdálené ploše:
tail -f /var/log/syslog
Jiné linuxové distribuce, 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 ke kontrole.
Pokud v klientovi vzdálené plochy neobdržíte žádnou odpověď a v systémovém protokolu se nezobrazují žádné události, toto chování značí, že provoz vzdálené plochy se nemůže spojit s virtuálním počítačem. 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 k aplikaci.
Další informace o vytváření a používání klíčů SSH s virtuálními počítači 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í SSH z Windows najdete v tématu Použití klíčů SSH s Windows.