Come posso installare una GUI su un’istanza Amazon EC2 con Amazon Linux 2?

7 minuti di lettura
0

Desidero installare un'interfaccia utente grafica (GUI) nella mia istanza Amazon Elastic Compute Cloud (Amazon EC2) con Amazon Linux 2. Come si fa?

Breve descrizione

Prima di procedere, considera una di queste alternative all’installazione manuale di una GUI:

  • Esegui l’avvio da un'AMI Amazon Linux 2 fornita con MATE preinstallato. Per ulteriori informazioni, consulta Configure the Amazon Linux 2 MATE desktop connection.
  • Inizia a usare Amazon WorkSpaces, un servizio di virtualizzazione desktop persistente e completamente gestito. Per ulteriori informazioni, consulta Amazon WorkSpaces.
  • Inizia a usare NICE DCV, un protocollo di visualizzazione remoto che fornisce desktop remoti e streaming di applicazioni in modo sicuro da qualsiasi cloud o data center a qualsiasi dispositivo. Per ulteriori informazioni, consulta NICE DCV.

Se desideri continuare con l'installazione manuale della GUI, procedi come segue:

  1. Installa l'ambiente desktop MATE, una GUI lightweight basata su GNOME 2 disponibile come componente aggiuntivo per Amazon Linux 2. Per ulteriori informazioni su MATE, consulta il sito Web sull'ambiente desktop MATE.
  2. Installa un servizio di virtual network computing (VNC), come TigerVNC. Per ulteriori informazioni su TigerVNC, consulta il sito Web tigervnc.org.
  3. Connettiti alla GUI usando VNC.
  4. (Facoltativo) Disattiva l'autenticazione tramite password per VNC.
  5. (Facoltativo) Installa un browser Web, come Chromium o Firefox. Per ulteriori informazioni su Chromium, consulta il sito Web chromium.org. Per ulteriori informazioni su Firefox, consulta il sito Web mozilla.org. Nota: Chromium e Firefox sono disponibili solo nella variante X86.

Nota: wueste istruzioni si applicano solo ad Amazon Linux 2. Per verificare la versione che stai utilizzando, esegui il comando seguente:

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

Per istruzioni sull'accesso a un'istanza EC2 per macOS tramite una GUI, consulta Come posso accedere alla mia istanza Amazon EC2 per Mac tramite una GUI?

Risoluzione

Prima di iniziare

1.    Connettiti alla tua istanza come utente EC2 tramite SSH.

L'istanza deve trovarsi in una sottorete pubblica ed essere accessibile tramite un indirizzo IP pubblico o un indirizzo IP elastico. In alternativa, puoi stabilire una connessione utilizzando AWS VPN o AWS Direct Connect che ti consente di accedere alla tua istanza tramite un IP privato. Queste istruzioni non si applicano agli ambienti che utilizzano un host bastione. Per motivi di sicurezza, il traffico verso il server VNC viene incanalato tramite SSH. È consigliabile evitare l'apertura di porte VNC nei gruppi di sicurezza.

2.    Aggiorna la tua istanza eseguendo sudo yum update, quindi riavvia l'istanza. Il mancato aggiornamento e riavvio può causare risultati imprevedibili durante l'esecuzione di questi passaggi.

Installa l'ambiente desktop MATE

1.    Installa i pacchetti MATE.

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

2.    Imposta MATE come desktop predefinito per tutti gli utenti.

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

Installa TigerVNC

1.    Installa il server TigerVNC:

sudo yum install tigervnc-server

2.    Configura una password specifica per VNC composta da sei a otto caratteri per questo utente. Alla richiesta di inserire una password di sola visualizzazione, premi "n".

vncpasswd

3.    Limita l'accesso alla rete VNC al localhost in modo che sia possibile accedere a VNC solo utilizzando un tunnel SSH sicuro.

Crea la directory di configurazione tigervnc:

sudo mkdir /etc/tigervnc

Crea un file di configurazione obbligatorio contenente l'opzione localhost:

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

4.    Avvia il server VNC sul display numero 1 e fai in modo che parta sempre all'avvio.

Crea una nuova unità systemd.

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

Usa il comando sed per sostituire tutte le ricorrenze di USER nella nuova unità con ec2-user.

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

Ricarica la configurazione di gestione systemd.

sudo systemctl daemon-reload

Attiva il servizio.

sudo systemctl enable vncserver@:1

Avvia il servizio.

sudo systemctl start vncserver@:1

Connettiti alla GUI usando VNC

1.    Installa il software TigerVNC sul tuo computer locale, se non già installato. TigerVNC è disponibile per Windows, Linux e macOS. Consulta il sito Web TigerVNC per accedere al download.

Linux: il pacchetto tigervnc è disponibile nei repository di molte distribuzioni e può essere installato utilizzando i rispettivi gestori di pacchetti.

macOS: scarica e installa TigerVNC-X.Y.Z.dmg, dove x.y.z rappresenta la versione più recente.**
Windows:** Scarica e installa tigervnc64-x.y.z.exe (64 bit) o tigervnc-x.y.z.exe (32 bit), dove x.y.z rappresenta la versione più recente.

2.    Sul tuo computer locale, usa SSH per connetterti alla tua istanza mentre crei un tunnel per inoltrare tutto il traffico sulla porta locale 5901/TCP (VNC) al server VNC dell'istanza:

Linux e macOS

Quando ti connetti alla tua istanza tramite SSH, aggiungi il parametro -L per attivare il port forwarding. Sostituisci PEM_FILE con la tua chiave privata e INSTANCE_IP con l'IP pubblico o privato della tua istanza, a seconda dei casi.

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

Windows

Quando apri la connessione con PuTTY, configura il port forwarding, quindi apri la connessione:

  1. Dal menu Connessione, seleziona SSH, quindi Tunnel.
  2. Immetti 5901 nel campo Porta di origine.
  3. Immetti localhost:5901 nel campo Destinazione.
  4. Seleziona Aggiungi.

3.    Apri il TigerVNC Viewer sul tuo computer locale. Quando viene richiesto il nome host del server VNC, inserisci localhost:1 e connettiti ad esso.

4.    Inserisci la password VNC che hai impostato nel passaggio 2 della sezione Installa TigerVNC. Se appare un avviso che indica che la connessione non è sicura, ignoralo. Stai accedendo al server VNC utilizzando un tunnel SSH crittografato.

Viene visualizzato l'ambiente desktop MATE.

(Facoltativo) Disattiva l'autenticazione tramite password per VNC

Non è consigliabile disattivare l'autenticazione tramite password VNC. Tutti gli utenti in grado di utilizzare SSH per connettersi alla tua istanza saranno in grado di creare un tunnel e accedere al tuo desktop VNC. Se si tratta di un'istanza per utente singolo (ovvero, nessun'altra persona può accedere) e desideri comunque disattivare l'autenticazione tramite password per VNC, procedi nel seguente modo:

1.    Modifica l'impostazione dei tipi di sicurezza del server VNC su Nessuno:

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

2.    Riavvia il server VNC.

sudo systemctl restart vncserver@:1

(Facoltativo) Installa un browser Web (solo X86)

AWS non fornisce browser Web come Chromium o Firefox nei repository Amazon Linux 2. Per installare uno di questi browser, segui questi passaggi. Nota: AWS non fornisce supporto per software installato da fonti di terze parti.

Le seguenti istruzioni si applicano alle istanze EC2 basate su processori Intel e AMD a 64 bit (x86_64). Queste terze parti non forniscono browser Web per istanze basate su processori Graviton (aarch64). Per confermare l'architettura della tua istanza, esegui il comando seguente:

$ uname -m
x86_64

Per installare Chromium (un progetto open source basato su Google Chrome), procedi come segue:

1.    Attiva il repository EPEL. Per ulteriori informazioni, consulta la documentazione EPEL sul sito Web FedoraProject.org.

sudo amazon-linux-extras install epel

2.    Installa i pacchetti Chromium.

sudo yum install chromium

Chromium si installa su MATE in Applications, Internet, Chromium Web Browser.

Per installare Mozilla Firefox (solo per l'utente corrente), procedi come segue:

1.    Scarica la versione più recente di Firefox per Linux a 64 bit sul tuo computer locale. Visita il sito Web mozilla.org per accedere al download.

2.    Dopo aver scaricato Firefox, copia il file nella tua istanza. Per istruzioni, consulta i rispettivi siti Web per Linux e Windows.

3.    Connettiti alla tua istanza EC2 tramite SSH.

4.    Estrai il contenuto del file. Questo comando di esempio indica che il file si trova nella home directory di ec2-user. Modifica il percorso e la versione di Firefox in base alle esigenze.

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

5.    Usando vim o il tuo editor preferito, crea un'icona sul desktop. Crea il file ~/Desktop/Firefox.desktop con i contenuti come mostrato nell'esempio seguente.

[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.    Usa l'icona sul desktop che hai creato nel passaggio 5 per avviare Firefox.

7.    Se viene visualizzato un messaggio che indica che il programma di avvio dell'applicazione non è contrassegnato come attendibile, scegli Mark as Trusted, quindi clicca due volte per aprire Firefox.

AWS UFFICIALE
AWS UFFICIALEAggiornata 2 anni fa