SSH a localhost prima del desktop remoto

0

Al momento ho Xubuntu 18.04 con Remmina e per qualche ragione, la loro opzione SSH non funziona per me. Quindi sono rimasto con accesso incerto alla mia macchina remota su Internet.

Quindi ho ssh'd sulla mia macchina locale con xorg forwarding, cioè ssh -Y myself@localmachine (con autenticazione a chiave pubblica, ecc.) Quindi ho avviato Remmina e poi connesso alla mia macchina remota via Internet (senza l'opzione SSH) .

Questo è sicuro?

    
posta Joshua Tao 27.06.2018 - 21:34
fonte

3 risposte

1

No, non è sicuro.

Chiamiamo le tue macchine locali e remote . Quello che stai facendo ora è creare un tunnel per X11 da locale a locale , quindi eseguire un client VNC su quel tunnel e utilizzarlo per connettersi a remoto . Questo non fa nulla, il traffico tra locale e remoto non va oltre il tunnel SSH.

Inizialmente sembrava che potessi dire che stavi SSH da locale a remoto , eseguendo un client VNC su remote X11 inoltrato a locale , quindi utilizza il client VNC per connetterti da remoto a remoto . Questo sarebbe sicuro (finché ti fidi del computer remoto , l'inoltro X11 è alquanto vulnerabile se remoto è dannoso; non mi è familiare abbastanza con VNC per sapere se questo è meglio o peggio che usare VNC direttamente) ma sembra contorto e non necessario, e suppongo che le prestazioni ne risentirebbero.

Se vuoi che VNC faccia il tunneling attraverso una connessione SSH, il modo corretto per farlo è di inoltrare una porta da locale a remoto usando ssh -L :

ssh -L [localhost port]:[host]:[host port] remote

Questa sintassi può essere un po 'confusa all'inizio, finché non capisci cosa sta succedendo su quale macchina. [host] qui è dal punto di vista di remoto ; ciò che accade è che stai inoltrando [localhost port] a remoto , quindi remoto lo manda a [host]:[host port] , quindi quello che vuoi veramente è:

ssh -L 5900:localhost:5900 remote

In questo modo il traffico viene inviato da locale porta 5900 a remoto , quindi remoto lo invia a se stesso sulla porta 5900 . Quindi puoi utilizzare il tuo client VNC su locale per connettersi a locale sulla porta 5900 (se la porta 5900 è già utilizzata su locale [localhost port] può ovviamente essere cambiato in qualcos'altro).

Non è rilevante qui perché remoto si sta inoltrando a se stesso, ma è importante capire che una volta che il traffico raggiunge remoto verrà inviato non crittografato. Se disponi di un host VNC separato accessibile da remoto e utilizzato ssh -L 5900:vnchost:5900 remote , il traffico verrà crittografato da locale a remoto , ma non da remoto a vnchost .

Non hai specificato quale protocollo stavi utilizzando, quindi questa risposta presuppone VNC, ma funzionerebbe altrettanto bene per altri protocolli semplicemente cambiando la porta che viene inoltrata. Si noti inoltre che alcuni protocolli di condivisione desktop consentono l'utilizzo di TLS, che dovrebbe rendere superfluo l'inoltro SSH se implementato correttamente.

    
risposta data 28.06.2018 - 15:44
fonte
0

Relativamente, ma hai disattivato l'isolamento della sessione in X in modo da essere più vulnerabile agli attacchi da parte del server. Usare -X sarebbe meglio.

    
risposta data 27.06.2018 - 23:41
fonte
0

Hai considerato di eseguire direttamente le tue app X invece di utilizzare un desktop remoto (remmina)? Ad esempio, prova questo comando sul computer locale:

ssh -X user@remotemachine thunar 2>/dev/null &

Questo eseguirà il file manager thunar sulla macchina remota ma lo visualizzerà sul desktop della macchina locale come se fosse locale. È sicuro come la tua connessione SSH. Altri file manager includono nautilus, dolphin e krusader.

Ovviamente, il server SSH remoto deve essere configurato per consentire l'inoltro X11.

    
risposta data 07.07.2018 - 17:02
fonte

Leggi altre domande sui tag