Dopo aver parlato della differenza tra desktop remoto e assistenza remota in Windows, vogliamo tornare sul tema del controllo remoto e vedere quali software possono essere un’alternativa valida agli strumenti integrati di Windows.
Di applicazioni per la gestione del PC da remoto ne esistono diverse. Tra le più famose sicuramente ci sono le varie versioni di VNC, che è un software rilasciato sotto licenza GPL. Cosa ci offrono di diverso dai servizi di Windows e cosa di simile?
Innanzitutto VNC è un software cross-platform, cioè ci permette di controllare o di essere controllati non solo da un PC Windows, ma anche Linux o Mac.
VNC esiste in diverse versioni: ciascuno può scegliere la sua e interfacciarsi attraverso di essa con computer che usano altre versioni di VNC, cioè ogni distribuzione è generalmente compatibile con le altre.
Come l’assistenza remota di Windows, da entrambi i PC sarà possibile seguire le operazioni, anche se il client può temporaneamente oscurare la visione del server.
Per consentire il controllo remoto con VNC, va fatta l’installazione di un modulo server sul computer da controllare e di un modulo client sul computer che deve prenderne possesso.
Per potersi connettere, come per il Desktop remoto di Windows, è necessario che sul server non ci siano blocchi firewall, nel qual caso uno o più router andranno configurati in modo da aprire le porte necessarie. Questa operazione non è di per sé troppo complicata, ma la procedura può variare in base al dispositivo.
Tra le versioni di VNC spiccano certamente:
- RealVNC: è disponibile gratuitamente ma anche a pagamento in versione “Personal Edition” (solo per Windows) e “Enterprise Edition”, che ha in più un controllo avanzato dell’autenticazione;
- TightVNC: completamente gratuito e ottimizzato per consentire connessioni più affidabili tra client e server;
- UltraVNC, è pensato per consentire connessioni anche attraverso firewall, router e proxy.
Qualsiasi di esse preferiate, sappiate che le versioni più datate non funzionano su Vista quindi, se si ha la necessità di installarle su questo sistema operativo, è bene scegliere l’ultima release.
Se vuoi aggiornamenti su Controllo remoto con VNC inserisci la tua e-mail nel box qui sotto:
Ciao Valentina, complimenti per l’interessante articolo. Vorrei soltanto sottolineare che VNC è un protocollo e non un software.
Inoltre, qualche piccolo suggerimento per i lettori del tuo blog da un assiduo utilizzatore di VNC
.
1. Ultravnc è soltanto per Windows e rispetto agli altri ha un’opzione che trovo molto comoda, ovvero l’autoscale. In pratica, se si controlla un pc con risoluzione video diversa dalla nostra, Ultravnc consente di ridurre tale vista agevolando il controllo.
2. Gli altri software, tuttavia, sono compatibili anche su Linux sia come client che come server. Attenzione, tuttavia, perché lanciando il server su Linux, per default verrà aperto un nuovo desktop virtuale sulla porta 5901, oppure sulle successive se le altre sono già bloccate da altri server attivi. Questo accade perché il desktop attuale è già in funzione con X, per cui vnc aprirà per default un altro desktop virtuale. Ciò comporta due cose: a. il client dovrà entrare usando l’ip e la porta relativa dove è aperto il server, per esempio: xxx.xxx.xxx.xxx:1, dove quell’1 individua l’attesa sulla porta 5901 e così via (ricordate però il problema dell’apertura delle porte lato server sul router, giustamente citato nell’articolo); b. Quando si controlla il pc sul desktop virtuale aperto sulla 5901 o sulle altre, l’utente del pc dove il server è in funzione non vedrà alcunché (se si tratta di Linux ovviamente), ovvero siete in grado di pilotare il pc senza che l’utente si accorga di nulla. Alcune volte questo è un bene, come nel caso di manutenzioni speciali di cui l’utente non deve rendersi conto. In altri casi, invece, in cui volete illustrare il funzionamento di applicazioni o quant’altro all’utente questo non è accettabile e la soluzione è l’uso di un altro pacchetto software, specificamente progetto per Linux che indico al punto 3.
3. Il software per poter pilotare un vnc server Linux direttamente sul desktop di X è x11vnc, ormai pacchettizzato in quasi tutte le distribuzioni.
4. Valentina, tu citi giustamente l’apertura delle porte nel router per poter entrare e pilotare un server vnc. Esiste tuttavia un altro modo per poterlo pilotare senza modificare le impostazioni dei router che, generalmente, per default consentono traffico in uscita. Si tratta di usare la funzionalità in Listen Mode, ovvero non è il client ad entrare nel server ma il server stesso che cattura il client e gli consente di entrare. Ovviamente, dalla parte client la porta 5500 (quella di default in Listen Mode) dovrà essere aperta sul router e reindirizzata all’ip locale della rete interna, però è più semplice, visto che in questo caso la persona dovrà modificare i settings del suo router e non quelli di n suoi clienti. Sotto Linux è possibile aprire una shell e digitare: x11vnc -connect xxx.xxx.xxx.xxx dove l’ip è del pc che dovrà prendere il controllo pilotare e che avrà aperto un client vnc in listen mode. Se il pc che deve pilotare, ad esempio, è un windows con installato Ultravnc allora il programma da usare sarà: start – programmi – Ultravnc – Ultravnc Viewer – Run Ultravnc Viewer Listen Mode.
Probabilmente sono stato un pò confusionario, nel qual caso chiedete pure
.
A presto
Antonio
di Antonio Sanguigni - 25 settembre 2008 - 17:58
Grazie Antonio! ^____^
Hai ragione, VNC è il protocollo, mentre i software sono quelli indicati (ed altri), cioè RealVNC, UltraVNC ecc. Ho trattato il discorso come se il software si chiamasse “VNC” perché questi software citati hanno una base di codice comune, almeno da quanto mi risulta dalle ricerche che ho fatto su Internet, che lo chiamano appunto “VNC” e “versioni”
In realtà di software che poi sfruttano il protocollo VNC non ci sono solo quelli che hanno “VNC” nel loro nome, ma sono software diversi, senza quella base comune che ho voluto analizzare qua (ed hanno anche un funzionamento diverso, come ad esempio TeamViewer, su cui sto preparando un altro articolo).
Le tue spiegazioni sono chiarissime, grazie ancora. Io avevo provato personalmente solo RealVNC (sugli altri ho trovato materiale sul web) ed è interessantissimo sapere tutte queste altre spiegazioni, in particolare IMHO la possibilità che sia il server a catturare il client, anziché il client a contattare il server.
In ogni caso, chi volesse provare e avesse dubbi (oltre che contattare il supporto citato nel testo), ora sa a chi chiedere
di Valentina Franzoni - 25 settembre 2008 - 18:21
Potreste spiegarmi cortesemente come faccio io che sono la “controllata” a capire quando lo sono e soprattutto quando sono stata controllata a mia insaputa tenuto presente che chi pilota lo può fare senza che io me ne accorga?
di Anto - 18 marzo 2009 - 14:55
@Anto: Il “pilota” NON lo può fare senza che tu te ne accorga: ognuno dei programmi che usano il protocollo in esame si avvale di meccanismi di sicurezza a riguardo, come la necessità di avere un username/password per entrare nel sistema, oppure la necessità di avviare la procedura dal PC “controllato”.
Ciascun software ha inoltre un modo diverso di avvertirti che in quel momento sei controllata, mostrando delle finestre, avvisi, icone ecc. Spesso si ha anche uno sfarfallamento dello schermo nel momento in cui se ne prende possesso.
P.S. ulteriore, ma non necessario: Nell’uso normale, inoltre, altri segni fanno comprendere di essere controllati: il mouse si muove da solo, viene spesso disabilitato lo sfondo del desktop (si vede lo sfondo nero) e naturalmente tutte le connessioni vengono registrate, con tanto di orario, in un file di log (di testo) che risiederà nella cartella di instalazione del programma.
di Valentina Franzoni - 18 marzo 2009 - 16:32
@Anto
Se usi Linux il problema potrebbe verificarsi perché in genere per default vncserver si attiva su un desktop diverso dallo 0:0, per cui potresti essere controllata senza accorgertene. Se usi windows te en accorgi subito perché chi controlla il tuo pc controlla anche il tuo mouse e quindi vedi ciò che accade.
Con Linux hai diverse soluzioni, la prima è quella di accertarsi che il il vncserver non stia girando e nel caso killarlo:
ps ax | grep vnc
ti restituisce l’eventuale PID del processo e quindi puoi terminarlo con
kill -9 PID (PID è un numero es. 5321)
Se comunque devi avere attivo un server vnc allora periodicamente puoi andare a controllare se qualcuno entra nella tua macchina aprendolo con:
vncviewer localhost:1 perché praticamente stai entrando nella tua macchina, ma in tutti i modi non è infallibile come metodo. Credo ci sia anche un file di log per il vncserver ma puoi verificarlo di persona facendo una ricerca su google.
Antonio
di Antonio Sanguigni - 18 marzo 2009 - 16:57
@Antonio: be’, credo che se Anto ha scritto qui è perché usi Windows, ma grazie delle dritte (come sempre!) che sicuramente possono servire a chi ci trova tramite ricerca ^^
di Valentina Franzoni - 18 marzo 2009 - 20:07
@Valentina
); però dato il mio precedente post su X11 e Linux, forse invece è proprio un utente Linux, non si sa mai !
Vista la domanda lo davo per scontato anche io che non rientrasse nella fetta dell’1% di utilizzatori Linux (o poco meno
di Antonio Sanguigni - 19 marzo 2009 - 07:37
Ciao!
complimenti per l articolo, ottimo!
avrei una domanda..
ma se usassi un per navigare una pen drive invece del browser del pc “spiato” sarei visto ugualmente?
grazie ancora
Marco
di MArco - 25 marzo 2009 - 21:02
@Marco: ciao Marco, grazie dei complimenti.
Non ho capito la tua domanda
Né cosa intendi per usare una pennetta al posto del browser (un browser che risiede su una pennetta usb? browser=software applicativo per navigare nel web, come Internet Explorer, Firefox, Safari ecc), né che intendi con browser sul PC spiato (non usi un browser del PC spiato per connetterti con vnc). In ogni caso sì, sei visto, per le motivazioni espresse nel messaggio n. 4 e seguenti.
di Valentina Franzoni - 30 marzo 2009 - 14:35
Ciao,
grazie per la risposta.
si intendo proprio applicazioni che partono dalla chiavetta, portable appl.
se dai un occhio sul sito winpenpack capisci meglio di che parlo.
praticamente le informazioni e cronologie di navigazione rimangono sulla chiavetta, ma non so se creano una copia nel pc.
di marco - 30 marzo 2009 - 15:15
@Marco.
Ma scusa, se la tua necessità è questa allora sulla chiavetta installati direttamente un sistema operativo come Puppy Linux e sei a posto. Rimarrà tutto lì e non avrai di questi problemi. Se non ricordo male, proprio qui fra i post di Valentina o di qualcun altro c’è come usare Unetbootin per infilare un sistema operativo in una chiave usb.
Antonio
di Antonio Sanguigni - 30 marzo 2009 - 15:23
@Marco: sì, ho ben presenti gli ambienti applicativi che possono partire da pennetta, ma non riesco comunque ad applicarlo al caso in oggetto…
infatti (a parte che il browser, come detto, non c’entra) la “cronologia” che interessa da lato del PC “spiato” (che spiato non è
, ma controllato con autorizzazione) è quella ad esempio dei log che sono appunto sul PC dell’utente server, ovvero il PC controllato.
Cerco di spiegarmi meglio: per effettuare questa comunicazione è necessario che il protocollo VNC sia attivo (quindi installato con software adatto e configurato volontariamente dall’utente) sia sul PC da controllare (server) sia su quello da cui si controlla (client). Dal server si riesce ad accorgersi di avere una connessione con un client per i motivi suddetti (v. messaggi 4 e ss), ma se anche non ci si accorgesse, ci sono dei file dove vengono registrati tutti i movimenti (un file -di testo- di log), sul server. Un utente che si connettesse al server teoricamente potrebbe anche accedere al file di log per cancellare la parte relativa si suoi movimenti (cancellare l’intero log equivale, tranne per la primissima connessione, a far scattare un campanello di allarme, poiché ci si accorgerebbe, se non ci fosse o fosse vuoto, che qualcosa non va), ma anche in questo caso l’azione di disconnessione dal server non potrebbe essere eliminata, poiché viene registrata nel log quando, appunto, il client è oramai disconnesso (e quindi non potrà più effettuare modifiche).
E’ facile dunque accorgersi che qualcosa non va nel caso in cui si vedesse nel file di log che uin client si è disconnesso a una data ora quando risulta che non si sia mai connesso, o che si sia connesso in un orario che evidenzi un lasso di tempo tale da poter effettuare operazioni.
Questa situazione potrebbe comunque verificarsi soltanto da parte di un utente client “amico”, cioè precedentemente autorizzato all’accesso, la cui autorizzazione non sia stata revocata (ogni software per far questo propone diversi sistemi di autenticazione: ad esempio una password generata “a caso” ad ogni accesso e che è valida per la sola sessione corrente).
Spero di essere stata sufficientemente chiara, ma se hai necessità di ulteriori chiarimenti chiedi pure
di Valentina Franzoni - 30 marzo 2009 - 15:36
Cari amici, Vi sembrerà strano, ma io non riesco a connettermi con il “server”. Eppure penso di aver fatto tutto quanto possibile.
Ho installato RealVnc (solo server) sul Pc da controllare, chiaramente con le opzioni (password).Poi ho installato il client su un’altro computer a distanza, ebbene quando apro: Start -> programmi -> RelVnc-> Run Vnc wiewer, immetto nella schermato l’indirizzo IP (nel mio caso è statico), ricevo sempre lo stesso avviso “Failed to connect to server”. Se invece attraverso Internet explorer, immetto “http://xx.xx.xx.xxx:5800″ mi dice dempre “pagina non trovata.
P.s. è inutile dire che sul server è attivo RealVnc, con l’icona sulla barra degli strumenti.
c’è per caso qualcuno di buona volontà che mi puo’ dare altre dritte su come far funzionare sto “benedetto” RealVnc????
di Sergio - 27 aprile 2009 - 13:52
@Sergio.
Poche informzioni per capire l’origine del problema. Intanto, sei in una lan oppure cerchi di controllare un pc con realvnc server installato attraverso Internet ? Nel primo caso, ovvero se sei in una lan, verifica il firewall della macchina server ed aggiungi winvnc come eccezione. Nel secondo caso, ovvero internet, verifica anche qui il firewall sulla macchina server ma devi anche vedere come la macchina server si collega ad internet. Nel caso di un modem (intendo un modem usb) l’ip lo ricevi direttamente (o se è statico lo hai già) dall’ISP sul pc che è esposto sulla Rete, mentre se sei dietro un router è questo che ha l’ip pubblico, per cui dovrai prevedere un forward nella configurazione di quest’ultimo sulla porta 5900 e 5800 (se ti interessa pilotare anche via browser). Il forward va aperto sull’ip interno del pc dove si trova attivo realvnc server. Se dai un’occhiata anche ai post relativi a Linux e tighvnc puoi trovare altre informazioni utili a capire proprio questa origine del problema.
Antonio
di Antonio Sanguigni - 27 aprile 2009 - 14:54
@Sergio: ti consiglio anch’io, come Antonio, di controllare il firewall, se cioè è attivo (sia firewall di macchina che sul/sui router) ed eventualmente che apra le giuste porte, oltre che verificare che in mezzo non ci sia anche qualche router che fa NAT (nel qual caso l’indirizzo visibile all’esterno è quello del router, non quello del PC/rete interna, anche se sinceramente non so come VNC si comporti a riguardo).
Fai pure riferimento ad Antonio per qualsiasi dubbio ^^
di Valentina Franzoni - 27 aprile 2009 - 15:14
Ciao Antonio,
Sei stato gentilissimo nel fornirmi queste delucidazioni, ma purtroppo sono “notizie che già avevo”. Il Pc da controllare fa parte di una Lan, ma devo controllarlo attraverso Internet con l’indisrizzo IP (statico nel mio caso) fornito dall ISP. L’unica cosa che mi lascia con il dubbio è che come ruter il Pc da controllare ha “alice business” della Telecom, e non vorrei che fosse proprio questo apparecchio a darmi problemi.
sono quasi…..disperato!
Che mi consigli di fare?
di sergio - 27 aprile 2009 - 15:18
@Sergio. Intanto, potresti provare a fare il reverse, ovvero non a cercare di entrare nel pc dal viewer ma a fare in modo che il realvnc server ti chiami al suo interno. In questo modo, hai da fare solo l’eventuale forward del TUO router e non quello della rete da controllare. Puoi eseguire questa cosa direttamente dall’icona nella tray zone di Realvnc server con click destro e Add new client. Il tuo client/amico dovrà inserire il tuo ip che gli deve dare, ovviamente, oppure un alias usando servizi come no-ip.com ecc.. ed entri magicamente sul pc remoto.
in precedenza posso magari dirti con precisione dove andare a fare le modifiche.
Se invece devi entrare arbitrariamente senza che nessuno ti chiami, allora devi necessariamente configurare il router della rete remota. Quelli nuovi di alice dovrebbero essere migliori di quelli di un tempo; i nuovi firmware Pirelli sono più aggiornati e configurabili per il forward. L’unico intoppo che puoi trovare è capire dove sta perché alcuni lo chiamano virtual server, altri lo chiamano nat, altri port forwarding ecc.. Se riesci a fare una lista delle opzioni e sotto opzioni del router, a naso oppure per averne configurato qualcuno
Antonio
p.s. Attenzione che può essere un ulteriore problema se la rete locale remota usa ip dinamici assegnati da un dhcp server. Il protocollo dhcp prevede un lease time, ovvero un tempo scaduto il quale il server dhcp può cambiare l’ip dinamico in genere assegnato ad un client ed in questo caso la configurazione inserita nel router non ti funzionerà più a dovere. Puoi attivare la gestione remota (in genere c’è) nel router, dato che hai ip statico ci arrivi subito ma devi comunque avere qualcuno che ti dica il nuovo ip assegnato al pc da controllare.
di Antonio Sanguigni - 27 aprile 2009 - 16:26
@Valentina
Troppo buona
di Antonio Sanguigni - 27 aprile 2009 - 16:28
Grazie amici per tanta disponibilità, spero di ricambiare al più presto.Ho seguito con attenzione le ultime spiegazioni su come poter configurare il VNC, e sinceramente non è che abbia avuto dei benefici. poi, non arrendendomi, ho girovagato sul Web ed ho trovato questo semplice articolo http://www.swzone.it/articoli/vnc/
e ho capito dov’era il problema (una spunta che non c’era)ed ho risolto. In ogni caso, siete fantastici per la vostra disponibilità. Grazie sopratutto ad Antonio!!!!
vi lascio ad una splendida giornata.
alla prossima
di Sergio - 29 aprile 2009 - 11:50
@Sergio
La spunta dove l’hai messa ? E qual’era il problema che nonostante tutto continuavi ad incontrare ? Condividere le soluzioni è sempre importante
Antonio
di Antonio Sanguigni - 29 aprile 2009 - 11:55
nella schermata della configurazione del server non era spuntata la casella” accept socket connections”.
non so per quale motivo non era spuntata (probabilmente un gesto involontario)
ciao
Credo che da questo momento mi iscrivero’ a questo forum perchè è molto seguito
di Sergio - 29 aprile 2009 - 12:19
@Sergio: ottimo, sono contenta che tu abbia risolto e grazie del tuo contributo ^^
sono d’accordo con Antonio, che condividere le soluzioni è molto importante: diverse persone che abbiano lo stesso problema possono trovare più facilmente la soluzione, avere la conferma della buona riuscita delle operazioni indicate nei vari articoli in giro per il Web e, per ultimo ma certo non importante, anche noi impariamo man mano cose nuove ^^
di Valentina Franzoni - 29 aprile 2009 - 15:12