Introduzione

Xrdp è un'implementazione open source del protocollo RDP (Microsoft Remote Desktop Protocol) che consente di controllare graficamente un sistema remoto. Con RDP, è possibile accedere al computer remoto e creare una sessione desktop reale come se si fosse effettuato l'accesso a un computer locale.

Questo tutorial spiega come installare e configurare il server Xrdp su CentOS 8.

Se preferisci un'alternativa open source, controlla VNC.

Se desideri installare Xrdp su un server in remoto continua a leggere, altrimenti salta il primo paragrafo "Connessione al Server" e leggi il successivo.

Connessione al Server

Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno dell'username e della password per l'autenticazione. Per connettersi al server come utente root digitare il seguente comando:

ssh [email protected]_DEL_SERVER

Successivamente sarà necessario inserire la password dell'utente root.

Se non utilizzate l'utente root potete connettervi con un'altro nome utente utilizzando lo stesso comando, quindi modificare root con il vostro nome_utente:

ssh [email protected]_DEL_SERVER

Successivamente vi verrà chiesto di inserire la password del vostro utente.

La porta standard per connettersi tramite ssh è la 22, se il vostro server utilizza una porta diversa, sarà necessario specificarla utilizzando il parametro -p, quindi digitare il seguente comando:

ssh [email protected]_DEL_SERVER -p PORTA

Installare il Desktop Environment

In genere, nei server Linux non è installato un ambiente desktop. Se il computer a cui si desidera connettersi non dispone di GUI, il primo passo è installarlo. Altrimenti, saltare questo passaggio.

Gnome è l'ambiente desktop predefinito in CentOS 8. Per installare Gnome sul tuo computer remoto, esegui il seguente comando

sudo dnf groupinstall "Server with GUI"

A seconda del sistema in uso, il download e l'installazione dei pacchetti e delle dipendenze di Gnome potrebbero richiedere del tempo.

Installare Xrdp

Per installare il pacchetto Xrdp è necessario abilitare il repository EPEL (Extra Packages for Enterprise Linux) che fornisce pacchetti software aggiuntivi che non sono inclusi nei repository Red Hat e CentOS standard.

L'abilitazione del repository EPEL su CentOS 8 è un'operazione piuttosto semplice poiché il pacchetto rpm EPEL è incluso nel repository extra di CentOS.

Per installare il pacchetto di rilascio EPEL, digitare il comando seguente:

sudo dnf install epel-release

Adesso è possibile installare il pacchetto Xrdp, digitare il seguente comando:

sudo dnf install xrdp 

Al termine del processo di installazione, avviare il servizio Xrdp e abilitarlo all'avvio:

sudo systemctl enable xrdp --now

Puoi verificare che Xrdp sia in esecuzione digitando:

sudo systemctl status xrdp

L'output sarà simile al seguente:

● xrdp.service - xrdp daemon
   Loaded: loaded (/usr/lib/systemd/system/xrdp.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2020-02-22 02:13:05 CET; 4s ago
     Docs: man:xrdp(8)
           man:xrdp.ini(5)
 Main PID: 16737 (xrdp)
    Tasks: 1 (limit: 12251)
   Memory: 1.1M
   CGroup: /system.slice/xrdp.service
           └─16737 /usr/sbin/xrdp --nodaemon

Configurare Xrdp

I file di configurazione di Xrdp si trovano nella directory /etc/xrdp. Per connessioni Xrdp regolari, devi solo impostare Xrdp per usare Gnome. Per fare ciò, apri il seguente file nel tuo editor di testo:

sudo nano /etc/xrdp/xrdp.ini

Aggiungi la seguente riga alla fine del file:

exec gnome-session

Salvare il file e riavviare il servizio Xrdp:

sudo systemctl restart xrdp

Configurazione del firewall

Per impostazione predefinita, Xrdp è in ascolto sulla porta 3389 su tutte le interfacce. Se esegui un firewall sul CentOS, dovrai aggiungere delle regole per consentire il traffico sulla porta Xrdp.

In genere, si desidera consentire l'accesso al server Xrdp solo da un indirizzo IP o intervallo IP specifico. Ad esempio, per consentire connessioni solo dall'intervallo 192.168.1.0/24, immettere il comando seguente:

sudo firewall-cmd --new-zone=xrdp --permanent
sudo firewall-cmd --zone=xrdp --add-port=3389/tcp --permanent
sudo firewall-cmd --zone=xrdp --add-source=192.168.1.0/24 --permanent
sudo firewall-cmd --reload

Per consentire il trasferimento del traffico 3389 da qualsiasi luogo, utilizzare i comandi seguenti. Consentire l'accesso da qualsiasi luogo è altamente sconsigliato per motivi di sicurezza.

sudo firewall-cmd --add-port=3389/tcp --permanent
sudo firewall-cmd --reload

Per una maggiore sicurezza, potresti prendere in considerazione la configurazione di Xrdp per l'ascolto solo su localhost e la creazione di un tunnel SSH che inoltri in modo sicuro il traffico dal tuo computer locale sulla porta 3389 al server sulla stessa porta.

Connessione al server Xrdp

Ora che il server Xrdp è configurato, è tempo di aprire il client Xrdp locale e connettersi al sistema remoto CentOS 8.

Gli utenti Windows possono utilizzare il client RDP predefinito. Digitare "remoto" nella barra di ricerca di Windows e fare clic su "Connessione desktop remoto". Questo aprirà il client RDP. Nel campo "Computer", digitare l'indirizzo IP del server remoto e fare clic su "Connetti".

Nella schermata di accesso, inserisci il tuo nome utente e password e fai clic su "OK".

Una volta effettuato l'accesso, dovresti vedere il desktop Gnome predefinito.

Ora puoi iniziare a interagire con il desktop remoto dal tuo computer locale usando la tastiera e il mouse.

Se stai usando macOS, puoi installare l'applicazione Microsoft Remote Desktop dal Mac App Store. Gli utenti Linux possono utilizzare un client RDP come Remmina o Vinagre.

Conclusione

L'installazione di un server Xrdp consente di gestire il server CentOS 8 dal computer desktop locale tramite un'interfaccia grafica di facile utilizzo.