C'è un aspetto negativo nell'installazione di VNC?


20

Abbiamo un Intel NUC nel dipartimento linguistico della mia università che ospiterà presto un'applicazione web utilizzata da docenti e studenti del dipartimento. Il NUC esegue Ubuntu (14.10).

Sono a mio agio con il terminale e SSH-ing nel server, tuttavia trovo che molte attività che devo fare sono molto più facili attraverso la condivisione dello schermo (VNC).

Ho suggerito al nostro nuovo direttore tecnico di installare VNC su questo server per rendere la mia vita molto più semplice (in effetti aveva installato VNC prima che fosse assunto, e poi lo ha disinstallato). Tuttavia, ha risposto con il seguente commento:

Preferirei di gran lunga non eseguire X o VNC sul server se riusciamo a cavarcela. Dopotutto è un server.

Davvero non capisco questa logica. Non è collegato a un monitor; l'unico accesso ad esso tramite SSH. C'è qualche aspetto negativo miracoloso nell'avere accesso VNC a un server di cui non sono a conoscenza?

Ovviamente stai aprendo un'altra porta per un attaccante; confutazione: siamo dietro due firewall universitari (il firewall principale della rete universitaria e il firewall speciale della nostra sottorete). VNC potrebbe essere realizzato solo all'interno della nostra sottorete, quindi non riesco a capire perché questo sarebbe un problema diverso da "è un altro pacchetto da mantenere" e con il aptgestore dei pacchetti di Ubuntu che diventa un problema.

Quali sono gli svantaggi dell'installazione di VNC su un server?

Modifica : questo non è solo un web server. Ospita numerose altre applicazioni. Non sono sicuro se questo fa la differenza.


21
Non riesco a immaginare nulla che potresti aver bisogno di fare con un web server che sarebbe più facile usando una GUI. Forse dovresti anche chiedere se esiste un modo migliore per eseguire le attività che desideri eseguire.
Michael Hampton

3
Ad ogni modo, questa è un'opportunità per imparare qualcosa di nuovo.
Michael Hampton

9
Si tratta di limitare la superficie. Con più servizi, più può andare storto e più può essere violato. Concesso hai detto questo, ma rimane vero. Anche personalmente odio VNC. Che dire dell'inoltro X11 su SSH?
Michael Bailey,

1
Quindi perché hai bisogno di usare questi strumenti su un server? L'uso di un browser senza un'interfaccia grafica sarà inutile nella maggior parte dei casi, ma non prendere in considerazione l'esecuzione del browser su un server. Qualunque strumento tu stia utilizzando, installalo sul tuo client e accedi a tutti i dati di cui hai bisogno sul server preferibilmente tramite ssh. Forse dai un'occhiata a sshfs
Ben

7
Non voglio pubblicare questo come risposta, perché non risponde alla domanda "Quali sono gli svantaggi di VNC", ma per elaborare il commento di @MichaelBailey: Non è necessario X o VNC sul server . SSH al server con l'inoltro X consente ai programmi grafici di essere effettivamente eseguiti sul server mentre vengono visualizzate le finestre su un server X11 in esecuzione sul computer locale . Hai solo bisogno di alcune librerie X11 condivise sul server che non sprecheranno risorse mentre non hai programmi in esecuzione che le usano. IMO un buon compromesso.
Gerald Schneider,

Risposte:


42

Ci sono molte ragioni:

  • Superficie di attacco: più programmi, specialmente quelli in rete, significano più opportunità per qualcuno di trovare un bug e entrare.

  • Superficie del difetto: come sopra, ma sostituisci "qualcuno" con " Murphy " e "entra" con "rovina la tua giornata". In realtà, "rovinare la giornata" probabilmente si applica anche al punto precedente.

  • Efficienza del sistema: X11 e gli ambienti con interfaccia grafica che le persone tendono a eseguire su di essi consumano una discreta quantità di RAM, specialmente su un sistema a risorse limitate come un NUC. Non eseguirli significa più risorse per svolgere un lavoro utile.

  • Efficienza dell'operatore: le GUI non si prestano allo scripting e ad altre forme di automazione. Fare clic sulle cose sembra produttivo, ma in realtà si tratta del modo peggiore di fare qualcosa di profondamente tecnico. Troverai anche le tue opportunità di lavoro future fortemente limitate se non puoi scrivere e automatizzare il tuo lavoro - il settore si sta allontanando dagli strumenti di amministrazione della GUI. Cavolo, anche il server Windows può essere installato senza GUI in questi giorni, e se ciò non ti fa pensare ai vantaggi relativi di sapere solo come fare clic sulle cose, non so davvero cosa dirti.


1
Dang it womble .. mi hai battuto sul pugno di nuovo come 30 secondi. :) Bella risposta.
Tim Brigham,

3
Molto tempo trascorso con Mavis Beacon nella mia giovinezza deve avere alcuni benefici ... <grin>
womble

6
@ChrisCirefice quindi ti suggerisco di chiedere a qualcuno di fare le cose nel modo giusto invece di compromettere la sicurezza dei server di produzione per un po 'di facilità d'uso.
André Borie,

8
È un tocco duro, Andre. Mi piacerebbe pensare che Chris abbia una comprensione leggermente migliore delle implicazioni delle sue preferenze ora, non c'è bisogno di battere il ripieno di lui per questo.
Womble

4
@ChrisCirefice stai molto attento pensando a cose come "nessuna informazione super preziosa" e "dietro i firewall". Il valore dei dati è negli occhi di chi guarda e il ruolo dei sistemi può subire sottili variazioni nel tempo, cosicché i dati più preziosi (per un attaccante) finiscono lentamente per accumularsi su un sistema che tutti pensano che non valga la pena difendere. e poi finisci sulla prima pagina di ogni sito di notizie perché è trapelato qualcosa di imbarazzante.
Womble

15

Il problema non è VNC - non fraintendetemi, VNC è un protocollo orribile e ha molti difetti (il più grande è la mancanza di supporto di crittografia, quindi tutto passa sulla rete in testo semplice), ma non è il principale motivo per cui il suo utilizzo non è raccomandato sui server.

Stai per installare VNC per accedere a cosa, una schermata nera? No, volevi accedere a un intero ambiente desktop e questo è il vero problema.

Una volta installato tutto questo software desktop Gnome (o simile) puoi già considerare il tuo server compromesso, poiché ci sono così tanti bug rimasti da sfruttare in questa orribile, enorme raccolta di applicazioni (oltre al fatto che non è progettato per la produttività e utilizza una tonnellata di risorse). Una delle altre ragioni per cui non consiglio questo software e la maggior parte degli ambienti desktop Linux è che prendono il controllo dell'intero sistema quasi come un rootkit e implementano le proprie versioni di tutto (autenticazione? Niente più utenti e gruppi solidi , eseguiamo questa assurdità di Policykit come root che fornisce autorizzazioni basate su alcuni file XML oscuri illeggibili ... configurazione? Chi ha bisogno di file di configurazione leggibili dall'uomo? Archiviamo tutto in database binari che puoi "

Cercare di installare un ambiente desktop Gnome sul mio server Archlinux mi dice "Dimensione totale installata: 1370,86 MiB". È enorme, immagina la superficie di attacco extra che avrà questo ex-server una volta installato. Gli altri ambienti desktop non sono molto migliori.


"VNC è un protocollo orribile e presenta molti difetti (il più grande è la mancanza di crittografia ...)" In situazioni in cui uno ha bisogno di VNC, non di un ambiente server, il tuo problema viene evitato tunnelando le tue sessioni VNC attraverso ssh.
Keith Reynolds,

@KeithReynolds sì, ma dovrebbe essere integrato soprattutto quando lo si confronta con i suoi concorrenti come il più "aggiornato" RDP che viene crittografato immediatamente (sicuro finché si confida nel certificato del server).
André Borie,

7
Una filosofia di progettazione è quella di avere tutte le possibili soluzioni integrate (generalmente tipiche degli sviluppatori MS) e l'altra è mettere insieme ciò di cui hai bisogno (generalmente tipico degli sviluppatori Linux). Riguardo a VNC: quando è necessaria la sicurezza su una rete non affidabile ssh, richiede un account e fornisce la crittografia. Quando la sicurezza non è un problema, la condivisione dei desktop non richiede un account di sistema o il sovraccarico della crittografia.
Keith Reynolds,

2
@KeithReynolds un altro problema di VNC è che invia bitmap pure invece di comandi draw disegnati sul lato client come RDP. Questo rende VNC orribile da usare su qualsiasi cosa oltre a una rete locale mentre RDP rimane bene anche su reti mobili scadenti.
André Borie,

9

Ovviamente stai aprendo un'altra porta per un attaccante; confutazione: siamo dietro due firewall universitari (il firewall principale della rete universitaria e il firewall speciale della nostra sottorete). VNC potrebbe essere realizzato solo all'interno della nostra sottorete, quindi sono in perdita ...

Non dare mai per scontato che, poiché il tuo sistema è protetto da un firewall, su una rete privata, non devi preoccuparti della sicurezza. Molte, se non la maggior parte, intrusioni di successo vengono eseguite da addetti ai lavori (dipendenti, studenti, ecc.) Che hanno accesso a tali reti.


-8

Prova questo per rendere felice il direttore tecnico:

  • Installa VNC e il desktop che preferisci

  • NON installare uno screensaver di alcun tipo. Perché? Non hai uno schermo e un desktop seduto lì non consuma molte risorse.

  • NON inoltrare la porta VNC. Se è necessario utilizzarlo, eseguire il tunneling della porta VNC (5900) tramite SSH (porta 22) e collegarsi in questo modo.

Questo processo ti fornisce la crittografia e tutta la sicurezza di SSH, che è già aperta. Non aggiungi alcun problema di sicurezza che non avevi già avuto prima.

Lo faccio già sul mio server, non si nota alcun ritardo aggiuntivo nel processo VNC rispetto a una connessione diretta.


9
" Non si aggiungono problemi di sicurezza che non si erano già verificati " non è nemmeno vicino al vero. L'installazione di codice aggiuntivo - e Andre B sopra ti dà un'idea di quanto codice extra stiamo parlando - offre maggiori opportunità di escalation di privilegi da parte di utenti locali (ssh'ed-in).
MadHatter supporta Monica il

4
Concordo sul fatto che la sicurezza sia un atto di bilanciamento, ma affermare che gli atti (installazione di software aggiuntivo) che fanno parte del compromesso non hanno alcun aspetto negativo è insignificante. Dire che ci sono pochi utenti negli utenti è ugualmente fuorviante: l'autore della domanda dice che è proprio in questo momento e non abbiamo modo di sapere quanti altri lo fanno.
MadHatter supporta Monica il

4
" OP ha stabilito che SSH è abbastanza sicuro ". La sicurezza non è una proprietà che hai o meno; è un grado di preparazione nei confronti di un determinato modello di minaccia. Se il modello di minaccia è " accesso non autorizzato da parte di un utente remoto ", allora sì, sshè una buona difesa. Se il modello di minaccia è " escalation di privilegi da parte di un utente locale autorizzato" , allora sshnon è una difesa e l'installazione di tonnellate di codice aggiuntivo sul server aumenta significativamente la superficie di attacco. Womble è un amministratore di sistema esperto con circa settantamila volte la tua reputazione su questo sito, quindi potresti voler andare piano con gli insulti.
MadHatter supporta Monica il

1
@paul No, la mia principale preoccupazione non era la mancanza di crittografia di VNC (può essere mitigata usando il tunneling SSH), il problema principale è l'enorme superficie di attacco di qualsiasi ambiente desktop.
André Borie,

3
@paul: hai ragione, non ho assolutamente senso dell'equilibrio. Non sono Fox News: non ho bisogno di essere "giusto ed equilibrato". Sono un amministratore di sistema: devo avere ragione .
womble
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.