Salta la navigazione

Tag Archives: cygwin

Una piccola aggiunta all’articolo Bypassare restrizioni proxy o firewall con SSH:

Qual’ora si utilizzi un proxy SOCKS per la navigazione in internet (come nel caso dell’articolo precedente) può sorgere un piccolo (se volgiamo definirlo tale..) problema: non tutte le comunicazioni di un applicazione configurata per utilizzare il SOCKS passano realmente attraverso lo stesso. Per esempio  le richieste di tipo DNS; le quali potrebbero essere intercettate con la conseguenza di un possibile blocco o “furto” (non passando per la connessione SSH passano per la rete locale).

Una di questi casi avviene proprio con Firefox: oltre alla configurazione già spiegata bisognerà quindi:

far puntare la barra degli indirizzi a questo indirizzo:

about:config

confermare il messaggio che ci avvisa della pericolosità di modificare le configurazioni presenti nella pagina, e cambiare controllare che il parametro booleano di

network.proxy.socks_remote_dns

abbia come valore true.

Per poter far girare gli applicativi di windows in un sistema operativo linux molti avranno, almeno sentito parlare, di Wine.

Fare l’esatto contrario è possibile?

Quando ancora ero estraneo al mondo Linux (in effetti mica troppo tempo fa)  mi ero imbattuto in CigWin per poter far girare una paio di programmi che non erano stati sviluppati per windows (soprattutto programmi per test sulla sicurezza).

L’impatto fu doloroso e abbandonai presto l’idea di cimentarmi in sistemi operativi a me ignoti (linux & co.). CygWin non è molto amichevole, non è la simpatica Ubuntu, ma è un applicativo molto potente per poter far il porting di software che gira su sistemi POSIX (che non è esattamente quello che Wine fa su linux).

Oltre a poter far girare piccoli programmi linux su windows CygWin può essere utilizzato per molto altro.

per esempio ci si potrebbe loggare al xdm di un server linux tramite XDMCP (quindi montando !XFree86, o qualcosa di più leggero, per X server). Il tutto da un sistema windows.

Oppure (qualcosa di più semplice) collegarsi tramite SSH a un’altra macchina (evitando così l’utilizzo di Putty).

Utile se si vuole tutelare la propria privacy in una rete pubblica. Utilizzando la macchina a cui si accede come proxy, criptando così tutto il traffico. (una spiegazione in questo atricolo: Bypassare restrizioni proxy o firewall).

Inoltre è disponibile il pacchetto ssh-server quindi è possibile utilizzare CygWin da remoto.

Inoltre una curiosa implementazione potrebbe essere KDE 4.4 per windows =)

Note di installazione:

Devo dire che ho avuto un po’ di problemi con il download, ho avuto fortuna scaricando prima tutti i pacchetti che mi interessavano utilizzando il mirror ftp://ftp.mirrorservice.org e poi installando successivamente.

ho quindi prima selezionato "Download from internet" e successivamente "Install from Local Directory "

Una possibile alternativa potrebbe essere scaricare il cd comprendente tutti i pacchetti dal server dell’università di Milano, che è reso disponibile a questo indirizzo

Appunti utili:

Per poter usare programmi ad interfaccia grafica come nedit è necessario avviare prima l’ambiente grafico: X.

Il comando è il solito:

 startx 

da dare nella Shell di Cygwin.

Per cambiare la mappatura della tastiera dell’ambiente X, bisogna dare il comando

 setxkbmap us 

se si vuole la mappatura americana, oppure

setxkbmap it

se si vuole la mappatura italiana.

Se vi capita di dover imbattervi in un proxy un po troppo restrittivo, o in una rete poco sicura su cui invece volete mantenere la privacy dei vostri dati, non disperate, la soluzione è semplice e veloce:

 ssh -D 8081 utente@server 

cosa vuol dire questo?

è un tunnel creato con una Secure SHell:

SSH da Wikipedia:

SSH (Secure SHell, shell sicura) è un protocollo che permette di stabilire una sessione remota cifrata adinterfaccia a linea di comando con un altro host.

[…]

Il client ed il server SSH sono installati o installabili su molte versioni di UNIXGNU/LinuxMac OS X eMicrosoft Windows. Inoltre è disponibile come strumento di amministrazione su alcuni apparati di rete

La sintassi su sistemi UNIX-like è la seguente:

$ ssh [opzioni] nomeutente@host [comando]

dove con “$” si intende il prompt della shell utilizzata.

Spieghiamo meglio quindi il comando:

 ssh -D 8081 utente@server 

-D: l’opzione del comando per creare un tunnel, questa opzione vuole un numero ed infatti:

8081 : è una porta aperta in uscita sul server (non dobbiamo quindi aprirla per il traffico entrante, se non abbiamo fatto configurazioni troppo paranoiche dovrebbe essere aperta),

utente : il nostro nick per il login

server : l’indirizzo del server, per esempio il nostro server di casa, il nostro router o anche un sito web che permetta l’accesso con ssh.

Vediamo quindi dove applicare questo comando: openSSH – lato client

Su linux basta installare il pacchetto ” openssh-client” dai repositori della propria distro oppure da qua (il sito ufficiale).

Su windows famoso client è putty ma ci sono anche altre alternative tra cui cygwin (di cui si parlerà nel successivo articolo)!

Per MAC e altri sistemi vi rimando sempre al sito ufficiale di openssh dove poter scaricare l’applicativo.

Caso mac OS o Cygwin:

In caso siate su MAC e avete installato la shell SSH o abbiate installato Cygwin su windows basta dare il comando con i giusti parametri.

Caso Putty:

Se invece abbiate optato per putty (molto comodo in quanto non necessita di installazione) o  (installando il pacchetto openssh e dando poi il comando sopracitato)  è la seguente:

Una volta scaricato e avviato nella prima finestra inserire l’indirizzo del server sotto “host name”, spuntando ovviamente “SSH” appena sotto la casella di inserimento.

Quindi spostarsi fra le categorie a lato in:

  • Connection
    • Tunnels
      • SSH

Qui invece bisogna inserire la porta (8081 nell’esempio sopra) in source port e premere add, in modo che sopra compaia qualcosa tipo D8081.

Nei flag sotto controllare che siano spuntati “Dynamic” e appena sotto “Auto”.

Premete “Open” e dovreste poter accedere (dopo aver digitato la password ed eventualmente digitato yes come richiesto) al vostro server!

Il server SSH per windows:

se non sapete a che server collegarvi non disperate il vostro computer di casa con installato windows va più che bene infatti  c’è MobaSSH. Un server SSH gratuito per windows! Scaricabile qui!

Seconda configurazione: il browser!

per impostare il proxy (SOCKS v5) sulla macchina ci basterà inserire come indirizzo localhost (o 127.0.0.1) e come porta la cifra che abbiamo inserito (in questo caso 8081) e controllare che localhost e 127.0.0.1 non siano escluse dal re-indirizzamento sul proxy.

Per esempio in firefox:

configurazione in Firefox

Buona navigazione!

La seconda parte dell’atricolo qua: Bypassare restrizioni proxy o firewall con SSH (parte seconda)