Connessione via proxy SSH+SOCKS a un server web interno del Dipartimento di Matematica ‘Tullio Levi-Civita’ dell’Università di Padova


Queste istruzioni sono basate su:

https://linuxize.com/post/how-to-setup-ssh-socks-tunnel-for-private-browsing/


Il processo prevede tre passi:

  1. Connessione via ssh ad un server del Dipartimento per creare un "tunnel"
  2. Configurazione del browser web per l'utilizzo del tunnel (solo la prima volta se si crea un "profilo" separato per il browser)
  3. Navigazione

1. Collegamento SSH

collegarsi via ssh ad uno dei server del Dipartimento aggiungendo al comando l’opzione “-D 9090” che istruisce a creare il punto di ingresso per la navigazione. Un esempio del comando è:


ssh myusername@ssh.studenti.math.unipd.it -D 9090


dove ‘myusername’ è la username utilizzata per l’area riservata del sito web dipartimentale o, per gli studenti, la username utilizzata per l’accesso alle aule informatiche (LabTA, LabP140, LabP36);

ssh.studenti.math.unipd.it’ è il nome dell’host a cui si effettua la connessione, in questo esempio quello riservato agli studenti (riemann.math.unipd.it o galileo.math.unipd.it per il personale strutturato)


Questo comando funziona praticamente su ogni sistema operativo:

- Linux: attraverso qualsiasi finestra di terminale

https://www.howtogeek.com/686955/how-to-launch-a-terminal-window-on-ubuntu-linux/

- MacOS: utilizzando l’utility ‘Terminale’

https://www.howtogeek.com/682770/how-to-open-the-terminal-on-a-mac/

- Windows: utilizzando la finestra del ‘command prompt’

https://www.lifewire.com/how-to-open-command-prompt-2618089

2.a. Configurazione di Firefox browser

2.a.1 – aprire il browser e nell’hamburger menù (quello identificato da tre righe orizzontali sovrapposte nella parte superiore destra della finestra) selezionare la voce ‘Impostazioni’ o ‘Settings’

2.a.2 – nella schermata che compare selezionare nella parte sinistra la voce ‘Generale’, scrollare verso il fondo fino alla voce ‘Network settings’ o ‘Impostazioni di rete’ e cliccare su ‘Settings’ o ‘Impostazioni’ per far comparire la finestra delle impostazioni per i proxy.

2.a.3 – nella nuova finestra attivare ‘Manual proxy configuration’, nel campo ‘SOCKS Host’ inserire la sequenza ‘127.0.0.1’ e il valore ‘9090’ nel campo ‘Port’ adiacente.


L’aspetto finale della schermata dovrà essere qualcosa di simile:


Dopo aver cliccato ‘OK’ possiamo cominciare a navigare. Tutte le connessioni del browser per qualsiasi sito richiesto passeranno attraverso la connessione SSH effettuata all’inizio che dovrà rimanere attiva perché la cosa funzioni.

Per disabilitare l’impostazione accedere alla schermata mostrata in figura e cliccare su ‘No proxy’.


SUGGERIMENTO

Per evitare di dover attivare la connessione SSH per navigare su qualsiasi sito, (anche quelli normalmente disponibili) si suggerisce di creare un profilo alternativo per il browser come spiegato su: https://support.mozilla.org/it/kb/Gestione%20dei%20profili#w_avvio-del-gestore-profili

Ogni profilo creato rappresenta un’istanza di Firefox separata dalle altre, con impostazioni separate, sfondi, motore di ricerca, estensioni, ecc. Si suggerisce di creare un profilo dedicato alla navigazione attraverso proxy ssh+socks da avviare alla bisogna.


2.b. Configurazione di Chrome Browser

Questo browser non prevede un sistema di controllo nativo per i proxy. Occorre scegliere una estensione tra quelle disponibili per la gestione di questa modalità di collegamento. Nell’esempio che segue è usata l’estensione ‘Socks5 configurator’.


2.b.1 – Lanciare il browser e aprire la URL:

https://chromewebstore.google.com/category/extensions

2.b.2 – Nel campo di ricerca in alto sulla pagina inserire la sequenza: ‘Socks5 Configurator’ e digitare invio, compare la seguente immagine:


Cliccare sull’immagine, e nella schermata che compare cliccare su ‘Add to Chrome’ confermando le richieste sucessive.

2.b.4 – Accedere al pannello di controllo delle estensioni cliccando sul menù indicato dai tre puntini in alto a destra sulla finestra, selezionando la voce ‘Settings’ o ‘Impostazioni’ e, nell’elenco che compare sulla parte destra della finestra, cliccando su ‘Extensions’.

2.b.5 – Tra la lista delle estensioni installate dovrebbe ora comparire ‘Socks5 Configurator’, cliccare in questo caso sul bottone ‘Details’ associato. Compare la lista delle opzioni configurabili per questa estensione, cliccare su ‘Extension options’ o ‘Opzioni’.

2.b.6 – Inserire il valore ‘127.0.0.1:9090’ come indicato nella figura seguente e cliccare su ‘Save’

2.b.7 – Chiudere la scheda estensioni, possiamo cominciare a navigare. Tutte le connessioni del browser per qualsiasi sito richiesto passeranno attraverso la connessione SSH effettuata all’inizio che dovrà rimanere attiva perché la cosa funzioni.


SUGGERIMENTO

Per evitare di dover attivare la connessione SSH per navigare su qualsiasi sito, (anche quelli normalmente disponibili) si suggerisce di creare un profilo alternativo per il browser come spiegato su: https://support.google.com/chrome/answer/2364824?hl=it&co=GENIE.Platform%3DDesktop

Ogni profilo creato rappresenta un’istanza di Chrome con impostazioni separate, sfondi, motore di ricerca, estensioni, ecc. Si suggerisce di creare un profilo dedicato alla navigazione attraverso proxy ssh+socks da avviare alla bisogna.


3. Navigazione

Provare a navigare su uno dei siti 'protetti' da una finestra del browser appena configurato. Esempio: