Rendere un sistema remoto amministrabile con un semplice doppio clic

Quando si ha la necessità di effettuare un intervento di assistenza remota, talvolta ci si trova a doversi interfacciare con persone che non sono dotate di particolari competenze ed abilità informatiche.

Quando si ha la necessità di effettuare un intervento di assistenza remota, talvolta ci si trova a doversi interfacciare con persone che non sono dotate di particolari competenze ed abilità informatiche. Fornire le istruzioni per fare in modo che un sistema possa essere gestito in modalità remota, quindi, potrebbe diventare cosa piuttosto complessa. Solitamente, infatti, sulla macchina remota da amministrare deve essere installato un programma che funga da “server” ponendosi in ascolto su di una determinata porta di comunicazione ed accettando le richieste di connessione autorizzate provenienti dall’esterno. Il modulo “server” spesso necessita di essere installato e correttamente configurato. Inoltre, qualora la macchina remota da amministare faccia parte di una rete locale protetta da firewall, il traffico dati in ingresso dovrà essere opportunamente reindirizzato verso il sistema corretto. Ad esempio, se il modulo “server” del software di amministrazione remota si ponesse in ascolto sulla porta TCP 5900, si dovrà configurare una regola a livello firewall affinché tutto il traffico in arrivo su tale porta venga automaticamente inoltrato verso l’IP associato alla macchina corretta.
Una serie di operazioni, insomma, che l’utente dotato di scarse conoscenze informatiche avrà difficoltà a mettere in pratica.

In questo nostro articolo avevamo illustrato il funzionamento di UltraVNC, un completo programma che dà modo di gestire in tutta sicurezza – grazie anche all’utilizzo di un apposito plugin aggiuntivo – le attività di amministrazione remota di uno o più sistemi.

Vi invitiamo a leggere le indicazioni riportate In queste pagine per comprendere il funzionamento di UltraVNC prima di applicare i suggerimenti qui presentati.

In questo articolo, forniremo alcuni spunti per creare una sorta di versione personalizzata di UltraVNC che possa essere utilizza, lato server, senza la necessità di operare alcun intervento di configurazione né per ciò che riguarda il funzionamento dell’applicazione né per quanto concerne l’impostazione di eventuali firewall.

Per cominciare, è indispensabile scaricare uno dei seguenti due pacchetti compressi:
UltraVNC per versioni Windows x86 (a 32 bit)
UltraVNC per versioni Windows x64 (a 64 bit)
I file contenuti nel primo archivio compresso dovranno essere utilizzati sulle macchine Windows che utilizzano una versione del sistema operativo a 32 bit mentre il contenuto del secondo file Zip potrà essere impiegato sulle piattaforme x64 (ved. anche questo nostro articolo).

A questo punto, si dovrà estrarre il contenuto del file compresso sul disco fisso (ad esempio nella cartella C:\UltraVNC).
Nella medesima directory, è necessario memorizzare il file SecureVNCPlugin.dsm, contenuto nei seguenti archivi:
Plugin SecureVNC per sistemi a 32 bit
Plugin SecureVNC per sistemi a 64 bit

Eseguendo il file WinVNC.exe, apparirà la schermata – densa di opzioni – che consentirà di configurare UltraVNC per l’accettazione delle connessioni in ingresso. Si provveda ad impostare il programma come se quella locale fosse la macchina da amministrare in modalità remota.

In particolare, è necessario impostare una password (riquadro Authentication) ed abilitare il plugin per l’utilizzo della crittografia (spuntare la casella Use in corrispondenza di DSM Plugin e scegliere SecureVNCPlugin.dsm dal menù a tendina).
Facendo clic sul pulsante Config, si dovrà usare il pulsante Generate Client Authentication Key in modo da produrre le chiavi che saranno utilizzate da parte dell’algoritmo a chiame asimmetrica per mettere in sicurezza la connessione e cifrare i dati scambiati tra client e server (e viceversa).
Saranno così prodotte due diverse chiavi crittografiche: la prima con estensione .pubkey mentre la seconda con estensione .pkey.

Nella casella Passphrase dovrà essere indicata una password sufficientemente lunga e complessa che sostituirà l’impiego della parola chiave di otto caratteri precedentemente impostata nella casella VNC Password. Tale password non verrà più utilizzata.

Adesso, dopo aver chiuso la finestra relativa alla configurazione del plugin SecureVNCPlugin, si dovrà fare clic sul pulsante OK quindi accedere alla traybar di Windows, cliccare col tasto destro del mouse sull’icona di UltraVNC e scegliere Close VNC connections:

Nella cartella di UltraVNC si troverà così un file denominato ultravnc.ini che potrà essere sfruttato per distribuire e configurare automaticamente il modulo server dell’applicazione.

La preparazione del “modulo server” in sei passaggi

Per fare in modo che l’utente inesperto possa avviare il modulo server di UltraVNC senza compiere azioni particolari (tranne che un semplice doppio clic su un file eseguibile), l’idea è quella di realizzare un unico file EXE contenente tutto il necessario.
Allo scopo, utilizzeremo un modulo capace di modificare il funzionamento del celeberrimo software di compressione 7-Zip.

).
L’archivio .7z può essere gestito utilizzando la versione di 7-Zip dotata d’interfaccia grafica (che dovrà essere installata sul sistema in uso; il programma è scaricabile gratuitamente da questa scheda).

.

).

collocandovi i seguenti file:
SecureVNCPlugin.dsm (si trova nella cartella di UltraVNC: è il plugin che attiva l’uso della crittografia)
WinVNC.exe (si trova nella cartella di UltraVNC: è l’eseguibile del modulo server dell’applicazione)
ultravnc.ini (si trova nella cartella di UltraVNC: è il file di configurazione per il modulo server)
nome_del_file.pubkey (si trova nella cartella di UltraVNC: contiene la chiave pubblica che sarà usata dal server per l’instaurazione della sessione dati crittografata)
avvia.bat (il file è contenuto nell’archivio compresso scaricabile da qui. Si tratta di un file batch che s’incarica di avviare UltraVNC attivando una “reverse connection“; ved. più avanti).

Ciò che si otterrà all’interno della sottodirectory bin dovrà essere simile a quanto riportato nell’immagine seguente:

con l’IP della macchina con cui si amministrerà il sistema remoto:

Si supponga che l’IP associato al router della macchina server remota (il sistema da amministrare) sia 151.123.123.123 mentre la macchina locale (quella che si utilizzerà per gestire i sistemi remoti) si affacci su Internet con l’IP 82.99.66.66. Nel file avvia.bat, si dovrà indicare – al posto di 192.168.1.2 – l’indirizzo IP 82.99.66.66.

Nella cartella C:\UVNCMOD, invece, si dovrà aver cura di memorizzare i file crea.cmd e crea.cmdconfig.txt

contenuti nell’archivio winvnc_listen.zip già prelevato in precedenza. Il contenuto della directory C:\UVNCMOD apparirà quindi così come segue:

.

A questo punto, è tutto pronto per effettuare una connessione remota.

Avvio della sessione di amministrazione remota

Sul sistema locale, che si impiegherà per amministrare i sistemi remoti, si dovrà aprire il prompt dei comandi, accedere alla cartella di UltraVNC e digitare quanto segue:

vncviewer -listen -dsmplugin securevncplugin.dsm

Il comando consente di avviare il modulo client di UltraVNC abilitando la cosiddetta “reverse connection” che è di solito utilizzata per “bypassare” le limitazioni imposte dai firewall. In questo nostro articolo, che vi inviatimo a consultare, abbiamo spiegato il funzionamento dell’approccio basato sulle “reverse connection” che, sostanzialmente, inverte il classico schema client-server. Rispetto alla soluzione abituale, infatti, in una “reverse connection” è il client ad aprire una porta locale per la connessione del server remoto.

Proprio per questo motivo, eseguendo il comando vncviewer -listen -dsmplugin securevncplugin.dsm, di default, il modulo client di UltraVNC aprirà la porta TCP 5500 mettendosi in ascolto per i tentativi di connessione in ingresso.
Nel caso di Windows Vista e di Windows 7, il modulo firewall segnalerà tale comportamento mostrando la finestra che segue:

Cliccando sul pulsante Consenti accesso, verrà automaticamente creata una regola per le comunicazioni in ingresso accettando, per i collegamenti effettuati su reti classificate come aziendali o domestiche (non pubbliche), i dati in arrivo su qualunque porta (protocolli TCP ed UDP).
Ovviamente, il router dal quale dipende il sistema locale e che fornisce l’interfaccia per l’accesso alla rete Internet dovrà essere opportunamente configurato in modo da instradare i dati in arrivo sulla porta TCP 5500 verso la macchina ove è in esecuzione vncviewer.

L’icona di UltraVNC Viewer nell’area della traybar segnala che il sistema locale – utilizzato per la gestione remota – è in attesa di eventuali richieste di connessione:

Il passo successivo consiste nella distribuzione del file eseguibile amministrazione_remota.exe.

Inviando il file amministrazione_remota.exe all’utente la cui macchina dovrà essere amministrata da remoto, egli avrà a disposizione tutto il necessario per condividere il desktop del personal computer. L’unica operazione che l’utente remoto dovrà compiere consiste nel fare doppio clic sul file amministrazione_remota.exe. I file di UltraVNC saranno così automaticamente estratti all’interno di una directory temporanea che verrà automaticamente rimossa al termine della sessione di lavoro.

Si tenga presente che tutti i sistemi utilizzeranno la medesima chiave crittografica, la stessa password e lo stesso file di configurazione definiti precedentemente.

Con un doppio clic sul file amministrazione_remota.exe, il modulo server di UltraVNC si connetterà automaticamente all’IP stabilito in precedenza nel file avvia.bat (messaggio “Waiting for connection“):

L’amministratore vedrà apparire una finestra per l’inserimento della password che dovrà coincidere con la Passphrase definita inizialmente nella schermata di SecureVNCPlugin:

Il messaggio successivo, che apparirà dopo la pressione del pulsante Logon, indicherà la tipologia del sistema remoto, il suo indirizzo IP e consentirà di confermare o meno la connessione:

Se tutto sarà andato per il meglio, dovrebbe comparire la finestra da UltraVNC raffigurante il desktop del sistema remoto. Le funzionalità utilizzabili sono quelle già enumerate in questa pagina.

Per modificare l’icona associata al file assistenza_remota.exe è possibile servirsi del software Resource Hacker, prelevabile da questa pagina.
Prima di rigenerare l’eseguibile assistenza_remota.exe cliccando sul file crea.cmd, si dovrà avviare Resource Hacker e modificare l’icona associata al file 7zsd.sfx seguendo le istruzioni riportate qui.
Ricordiamo, infine, un aspetto d’importanza cruciale. UltraVNC, così come le applicazioni presentate in quest’articoli, sono assolutamente benigne e non includono componenti potenzialmente dannosi. Alcuni motori di scansione antivirus ed antimalware, talvolta “bollano” – ancor’oggi – UltraVNC come sospetto.
Si tratta di segnalazioni che mettono in luce il fatto che UltraVNC possa essere utilizzato, anche da parte di utenti malintenzionati, per controllare a distanza un sistema senza l’autorizzazione del legittimo proprietario. Ciò, però, può accadere nel caso di qualunque software di gestione remota, se installato all’insaputa dell’utente oppure se configurato in modo scorretto.
Com’è possibile verificare esaminando l’analisi di VirusTotal, sono ad oggi quattro i motori antivirus che insistono nel classificare UltraVNC come una minaccia. In generale, però, come si vede, l’applicazione viene o riconosciuta come RealVNC oppure classificata con la dizione “not-a-virus” (non si tratta di un virus, Kaspersky).
Il modulo viewer di UltraVNC (consente di connettersi ad un server remoto) non viene erroneamente classificato come una minaccia da nessun motore antivirus (fatta eccezione per ByteHero). E’ il modulo server che viene indicato come potenzialmente pericoloso da quattro motori: Antiy-AVL, ByteHero, Kaspersky e VIPRE.

Ti consigliamo anche

Link copiato negli appunti