Como instalar uma GUI na minha instância do Amazon EC2 que executa o Amazon Linux 2?

8 minuto de leitura
0

Quero instalar uma interface gráfica de usuário (GUI) na minha instância do Amazon Elastic Compute Cloud (Amazon EC2) executando o Amazon Linux 2. Como faço isso?

Breve descrição

Antes de continuar, considere primeiro uma dessas alternativas para instalar manualmente uma GUI:

  • Inicie a partir de uma AMI do Amazon Linux 2 que vem com o MATE pré-instalado. Para obter mais informações, consulte Configure a conexão com o desktop MATE do Amazon Linux 2.
  • Comece a usar o Amazon WorkSpaces, um serviço de virtualização de desktops persistente e totalmente gerenciado. Para obter mais informações, consulte Amazon WorkSpaces.
  • Comece a usar o NICE DCV, um protocolo de exibição remota que fornece desktops remotos e transmissão de aplicações com segurança de qualquer nuvem ou datacenter para qualquer dispositivo. Para obter mais informações, consulte NICE DCV.

Se quiser continuar com a instalação manual da GUI, faça o seguinte:

  1. Instale o ambiente de desktop MATE, uma GUI leve baseada em GNOME 2 disponível como um elemento extra para o Amazon Linux 2. Para obter mais informações sobre o MATE, consulte o site do ambiente de desktop MATE.
  2. Instale um serviço de computação de rede virtual (VNC), como o TigerVNC. Para obter mais informações sobre o TigerVNC, consulte o site tigervnc.org.
  3. Conecte-se à GUI usando o VNC.
  4. (Opcional) Desative a autenticação por senha para o VNC.
  5. (Opcional) Instale um navegador da Web, como o Chromium ou o Firefox. Para obter mais informações sobre o Chromium, consulte o site chromium.org. Para obter mais informações sobre o Firefox, consulte o site mozilla.org. Observe que o Chromium e o Firefox apenas estão disponíveis na variante X86.

Observação: essas instruções somente são aplicáveis ao Amazon Linux 2. Para confirmar a versão que você está executando, execute o seguinte comando:

$ grep PRETTY_NAME /etc/os-release
PRETTY_NAME="Amazon Linux 2"

Para obter instruções sobre como acessar uma instância macOS do EC2 usando uma GUI, consulte Como acessar minha instância Mac do Amazon EC2 por meio de uma GUI?

Resolução

Antes de começar

1.    Conecte-se à sua instância como usuário do EC2 usando SSH.

A instância deve estar em uma sub-rede pública e acessível por meio de um endereço IP público ou de um endereço IP elástico. Ou você pode estabelecer uma conexão usando a VPN da AWS ou o AWS Direct Connect que permite acessar sua instância por meio de um IP privado. Essas instruções não são aplicáveis a ambientes que usam um bastion host. Por motivos de segurança, o tráfego para o servidor VNC é encapsulado usando SSH. É uma prática recomendada evitar abrir portas VNC em seus grupos de segurança.

2.    Atualize sua instância executando sudo yum update e depois reinicialize a instância. Falhas na atualização e na reinicialização podem levar a resultados imprevisíveis ao seguir essas etapas.

Instale o ambiente de desktop MATE

1.    Instale os pacotes MATE.

sudo amazon-linux-extras install mate-desktop1.x

2.    Defina o MATE como seu desktop padrão para todos os usuários.

sudo bash -c 'echo PREFERRED=/usr/bin/mate-session > /etc/sysconfig/desktop'

Instale o TigerVNC

1.    Instale o servidor TigerVNC:

sudo yum install tigervnc-server

2.    Configure uma senha específica do VNC contendo de seis a oito caracteres para esse usuário. Para a pergunta sobre se você deseja inserir uma senha somente para visualização, pressione “n”.

vncpasswd

3.    Restrinja o acesso à rede do VNC ao host local, para que o VNC possa ser acessado somente usando um túnel SSH seguro.

Crie o diretório de configuração tigervnc:

sudo mkdir /etc/tigervnc

Crie um arquivo de configuração obrigatório contendo a opção localhost:

sudo bash -c 'echo localhost > /etc/tigervnc/vncserver-config-mandatory'

4.    Inicie o servidor VNC na tela número 1 e faça com que ele sempre seja iniciado no momento da inicialização.

Crie uma nova unidade systemd.

sudo cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@.service

Use o comando sed para substituir todas as ocorrências de USER na nova unidade por ec2-user.

sudo sed -i 's/<USER>/ec2-user/' /etc/systemd/system/vncserver@.service

Recarregue a configuração do gerenciador systemd.

sudo systemctl daemon-reload

Ative o serviço.

sudo systemctl enable vncserver@:1

Inicie o serviço.

sudo systemctl start vncserver@:1

Conecte-se à GUI usando o VNC

1.    Instale o software TigerVNC no computador local, se ele ainda não estiver instalado. O TigerVNC está disponível para Windows, Linux e macOS. Consulte o site do TigerVNC para acessar o download.

Linux: o pacote tigervnc está disponível nos repositórios de várias distribuições e pode ser instalado com seus respectivos gerenciadores de pacotes.

macOS: baixe e instale o TigerVNC-x.y.z.dmg, em que x.y.z representa a versão mais recente.**
Windows: **baixe e instale tigervnc64-x.y.z.exe (64-bit) ou tigervnc-x.y.z.exe (32-bit), em que x.y.z representa a versão mais recente.

2.    No computador local, use SSH para se conectar à sua instância durante a criação de um túnel para encaminhar todo o tráfego na porta local 5901/TCP (VNC) ao servidor VNC da instância:

Linux e macOS

Ao se conectar à sua instância usando SSH, adicione o parâmetro -L para ativar o encaminhamento de portas. Substitua PEM_FILE pela sua chave privada e INSTANCE_IP pelo IP público ou privado da sua instância, conforme apropriado.

ssh -L 5901:localhost:5901 -i PEM_FILE ec2-user@INSTANCE_IP

Windows

Ao abrir a conexão com o PuTTY, configure o encaminhamento de portas e abra a conexão:

  1. No menu Conexão, selecione SSH e depois Túneis.
  2. Insira 5901 no campo Porta de origem.
  3. Insira localhost:5901 no campo Destino.
  4. Selecione Adicionar.

3.    Abra o TigerVNC Viewer no computador local. Quando o nome do host do servidor VNC for solicitado, digite localhost:1 e conecte-se a ele.

4.    Insira a senha do VNC que você configurou na etapa 2 da seção Instalar o TigerVNC. Se aparecer um alerta informando que a conexão não é segura, ignore-o. Você está acessando o servidor VNC usando um túnel SSH criptografado.

Seu ambiente de desktop MATE é exibido.

(Opcional) Desative a autenticação por senha para o VNC

Não é uma prática recomendada desativar a autenticação por senha do VNC. Qualquer usuário capaz de usar o SSH para se conectar à sua instância poderá criar um túnel e acessar seu desktop VNC. Se essa for uma instância de usuário único (ou seja, se nenhuma outra pessoa puder fazer login) e você quiser desativar a autenticação por senha para o VNC de qualquer maneira, siga estas etapas:

1.    Altere a configuração de tipos de segurança do servidor VNC para Nenhuma:

echo SecurityTypes=None >> ~/.vnc/config

2.    Reinicie o servidor VNC.

sudo systemctl restart vncserver@:1

(Opcional) Instale um navegador da Web (somente X86)

A AWS não fornece navegadores da Web, como o Chromium ou o Firefox, nos repositórios do Amazon Linux 2. Para instalar um desses navegadores, siga estas etapas. Observe que a AWS não fornece suporte para softwares instalados de fontes de terceiros.

As instruções a seguir são aplicáveis a instâncias do EC2 baseadas em processadores Intel e AMD de 64 bits (x86_64). Essas fontes de terceiros não fornecem navegadores da Web para instâncias baseadas em processadores Graviton (aarch64). Para confirmar a arquitetura da sua instância, execute o seguinte comando:

$ uname -m
x86_64

Para instalar o Chromium (projeto de código aberto por detrás do Google Chrome), faça o seguinte:

1.    Ative o repositório EPEL. Consulte a documentação do EPEL no site FedoraProject.org para obter mais informações.

sudo amazon-linux-extras install epel

2.    Instale os pacotes do Chromium.

sudo yum install chromium

O Chromium é instalado no MATE em Aplicações, Internet, Navegador da Web Chromium.

Para instalar o Mozilla Firefox (somente para usuários atuais), faça o seguinte:

1.    Baixe a versão mais recente do Firefox para Linux de 64 bits no computador local. Consulte o site mozilla.org para acessar o download.

2.    Depois de baixar o Firefox, copie o arquivo para sua instância. Consulte os respectivos sites Linux e Windows para obter instruções.

3.    Conecte-se à sua instância do EC2 usando SSH.

4.    Extraia o conteúdo do arquivo. Este exemplo de comando indica que o arquivo está no diretório inicial de ec2-user. Altere o caminho e a versão do Firefox conforme necessário.

tar jxf ~/firefox-xx.y.tar.bz2 -C ~/

5.    Usando o vim ou seu editor favorito, crie um ícone na área de trabalho. Crie o arquivo ~/Desktop/Firefox.desktop com o conteúdo, conforme mostrado no exemplo a seguir.

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon=/home/ec2-user/firefox/browser/chrome/icons/default/default128.png
Icon[en_US]=/home/ec2-user/firefox/browser/chrome/icons/default/default128.png
Name[en_US]=Firefox
Exec=/home/ec2-user/firefox/firefox
Comment[en_US]=Firefox web browser
Name=Firefox
Comment=Firefox web browser
GenericName[en_US.UTF-8]=Firefox web browser
Categories=Network;WebBrowser;

6.    Use o ícone da área de trabalho que você criou na etapa 5 para iniciar o Firefox.

7.    Se aparecer um aviso informando que o inicializador da aplicação não está marcado como confiável, escolha Marcar como confiável e clique duas vezes para abrir o Firefox.

AWS OFICIAL
AWS OFICIALAtualizada há 2 anos