В
Imaxe:
Instalación do contorno gráfico
Levaremos unha máquina virtual con Ubuntu Server 18.04 LTS con dous núcleos de computación, catro gigabytes de RAM e un disco duro (HDD) de vinte gigabytes. Unha configuración máis débil non é adecuada para un escritorio gráfico, aínda que isto depende das tarefas que se resolvan. Non esquezas usar o código promocional Habrahabr10 para obter un desconto do 10 % no teu pedido.
A instalación do ambiente de escritorio con todas as dependencias faise co seguinte comando:
sudo apt-get install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils
Como no caso anterior, escollemos XFCE debido aos seus requisitos de recursos informáticos relativamente baixos.
Rusificación do servidor e instalación de software
Moitas veces, as máquinas virtuais só se despregan con localización en inglés. No escritorio pode que necesites ruso, que é fácil de configurar. En primeiro lugar, imos instalar traducións para programas do sistema:
sudo apt-get install language-pack-ru
Configuramos a localización:
sudo update-locale LANG=ru_RU.UTF-8
O mesmo efecto pódese conseguir editando manualmente o /etc/default/locale.
Para a localización de GNOME e KDE, o repositorio ten os paquetes language-pack-gnome-ru e language-pack-kde-ru; necesitarás se utilizas programas destes contornos de escritorio. En XFCE, as traducións instálanse con aplicacións. A continuación podes instalar os dicionarios:
# Словари для проверки орфографии
sudo apt-get install hunspell hunspell-ru
# Тезаурус для LibreOffice
sudo apt-get install mythes-ru
# Англо-русский словарь в формате DICT
sudo apt-get install mueller7-dict
Ademais, pode ser necesaria a instalación de traducións para algúns programas de aplicación:
# Браузер Firefox
sudo apt-get install firefox firefox-locale-ru
# Почтовый клиент Thunderbird
sudo apt-get install thunderbird thunderbird-locale-ru
# Офисный пакет LibreOffice
sudo apt-get install libreoffice libreoffice-l10n-ru libreoffice-help-ru
Deste xeito complétase a preparación do entorno de escritorio, só queda configurar o servidor RDP.
Instalación e configuración dun servidor RDP
Os repositorios de Ubuntu teñen un servidor Xrdp distribuído libremente, que utilizaremos:
sudo apt-get install xrdp
Se todo saíu ben, o servidor debería iniciarse automaticamente:
sudo systemctl status xrdp
O servidor Xrdp execútase con dereitos de usuario xrdp e, por defecto, leva o certificado /etc/ssl/private/ssl-cert-snakeoil.key, que se pode substituír polo seu propio. Para ter acceso a ler o ficheiro, cómpre engadir o usuario ao grupo ssl-cert:
sudo adduser xrdp ssl-cert
A configuración predeterminada pódese atopar no ficheiro /etc/default/xrdp, e todos os demais ficheiros de configuración do servidor atópanse no directorio /etc/xrdp. Os parámetros principais están no ficheiro xrdp.ini, que non é necesario cambiar. A configuración está ben documentada e inclúense as páxinas de manual correspondentes:
man xrdp.ini
man xrdp
Só queda editar o script /etc/xrdp/startwm.sh, que se executa cando se inicializa a sesión do usuario. Primeiro, imos facer unha copia de seguridade do script da distribución:
sudo mv /etc/xrdp/startwm.sh /etc/xrdp/startwm.b
sudo nano /etc/xrdp/startwm.sh
Para iniciar o entorno de escritorio XFCE, necesitarás un script como o seguinte:
#!/bin/sh
if [ -r /etc/default/locale ]; then
. /etc/default/locale
export LANG LANGUAGE
fi
exec /usr/bin/startxfce4
Teña en conta: nos scripts é mellor escribir o camiño completo aos ficheiros executables - este é un bo hábito. Imos facer o script executable e neste momento a configuración do servidor Xrdp pódese considerar completa:
sudo chmod 755 /etc/xrdp/startwm.sh
Reinicie o servidor:
sudo systemctl restart xrdp
Configurar un cortalumes
Por defecto, Xrdp escoita o porto TCP 3389 en todas as interfaces. Dependendo da configuración do servidor virtual, pode ter que configurar un firewall de Netfilter. En Linux isto adoita facerse mediante a utilidade iptables, pero en Ubuntu é mellor usar ufw. Se se coñece o enderezo IP do cliente, a configuración realízase co seguinte comando:
sudo ufw allow from IP_Address to any port 3389
Podes permitir conexións desde calquera IP como esta:
sudo ufw allow 3389
O protocolo RDP admite o cifrado, pero expor o servidor Xrdp a redes públicas é unha mala idea. Se o cliente non ten unha IP fixa, o servidor só debería escoitar localhost para aumentar a seguridade. É mellor acceder a el a través dun túnel SSH, que redirixirá de forma segura o tráfico do ordenador cliente. Temos un enfoque similar
Conexión a un servidor RDP
Para traballar co entorno de escritorio, é mellor crear un usuario sen privilexios separado:
sudo adduser rdpuser
Engadimos o usuario ao grupo sudo para que poida realizar tarefas relacionadas coa administración. Se non hai tal necesidade, pode omitir este paso:
sudo gpasswd -a rdpuser sudo
Pode conectarse ao servidor mediante calquera cliente RDP, incluído o cliente de Servizos de escritorio remoto de Windows integrado. Se Xrdp está escoitando a interface externa, non serán necesarias accións adicionais. É suficiente especificar o enderezo IP do VPS, o nome de usuario e o contrasinal na configuración de conexión. Despois de conectar, veremos algo así:
Despois da configuración inicial do ambiente de escritorio, obteremos un escritorio completo. Como vedes, non consume moitos recursos, aínda que todo dependerá das aplicacións utilizadas.
Se o servidor Xrdp só escoita localhost, o tráfico no ordenador cliente terá que ser empaquetado nun túnel SSH (sshd debe estar en execución no VPS). En Windows, pode usar un cliente gráfico SSH (por exemplo, PuTTY) e en sistemas UNIX necesita a utilidade ssh:
ssh -L 3389:127.0.0.1:3389 -C -N -l rdpuser RDP_server_ip
Despois de inicializar o túnel, o cliente RDP xa non se conectará ao servidor remoto, senón ao host local.
É máis difícil cos dispositivos móbiles: haberá que comprar clientes SSH capaces de levantar un túnel e, en iOS e iPadOS, o funcionamento en segundo plano das aplicacións de terceiros é difícil debido a unha moi boa optimización do consumo de enerxía. No iPhone e iPad, non poderás crear un túnel nunha aplicación separada; necesitarás unha aplicación de colleita que poida establecer unha conexión RDP a través de SSH. Como, por exemplo
Xestor de sesións e sesións de usuarios
A capacidade de traballo multiusuario implícase directamente no servidor Xrdp e non require configuración adicional. Despois de iniciar o servizo a través de systemd, un proceso execútase en modo daemon, escoita no porto 3389 e comunícase a través do localhost co xestor de sesións.
ps aux |grep xrdp
sudo netstat -ap |grep xrdp
O xestor de sesións normalmente non é visible para os usuarios, porque o inicio de sesión e o contrasinal especificados na configuración do cliente transfírenselle automaticamente. Se isto non ocorre ou se produce un erro durante a autenticación, aparecerá unha xanela de inicio de sesión interactiva en lugar do escritorio.
O inicio automático do xestor de sesións especifícase no ficheiro /etc/default/xrdp e a configuración gárdase en /etc/xrdp/sesman.ini. Por defecto parece algo así:
[Globals]
ListenAddress=127.0.0.1
ListenPort=3350
EnableUserWindowManager=true
UserWindowManager=startwm.sh
DefaultWindowManager=startwm.sh
[Security]
AllowRootLogin=true
MaxLoginRetry=4
TerminalServerUsers=tsusers
TerminalServerAdmins=tsadmins
; When AlwaysGroupCheck=false access will be permitted
; if the group TerminalServerUsers is not defined.
AlwaysGroupCheck=false
[Sessions]
Non tes que cambiar nada aquí, só tes que desactivar o inicio de sesión con dereitos de root (AllowRootLogin=false). Para cada usuario autorizado no sistema, lánzase un proceso xrdp separado: se se desconecta sen finalizar a sesión, os procesos de usuario seguirán executándose de forma predeterminada e poderá conectarse de novo á sesión. A configuración pódese cambiar no ficheiro /etc/xrdp/sesman.ini (sección [Sesións]).
Cambio de disposición do teclado
Normalmente non hai problemas co portapapeis bidireccional, pero coa disposición do teclado ruso terás que xogar un pouco (a configuración rusa xa debería estar
sudo nano /etc/xrdp/xrdp_keyboard.ini
Debe engadir as seguintes liñas ao final do ficheiro de configuración:
[rdp_keyboard_ru]
keyboard_type=4
keyboard_type=7
keyboard_subtype=1
model=pc105
options=grp:alt_shift_toggle
rdp_layouts=default_rdp_layouts
layouts_map=layouts_map_ru
[layouts_map_ru]
rdp_layout_us=us,ru
rdp_layout_ru=us,ru
Todo o que queda é gardar o ficheiro e reiniciar Xrdp:
sudo systemctl restart xrdp
Como podes ver, non é difícil configurar un servidor RDP nun VPS Linux, pero
Fonte: www.habr.com