OpenVPN su HTC Desire Z con Android 2.2
Ebbene si, anche io ho un cellulare Android e sono riuscito ad installare la root mod e far funzionare la OpenVPN... ecco come:
Caveat Emptor:
Leggi questo articolo e segui le sue istruzioni a tuo rischio! Per quanto sia improbabile che tu riesca a far danni al telefono non mi assumo alcuna responsabilità
Unconsiglio da amico: Segui queste istruzioni solo se hai una almeno vaga idea di quello che stai facendo, altrimenti chiama il tuo smanettone di fiducia e fallo fare a lui.
Introduzione:
Questo articolo è dedicato ai pochi impavidi che vorranno installare OpenVPN nel loro cellulare Android 2.2 senza invalidare la garanzia per via del "root mod".
La procedura è stata testata su HTC Desire Z con Android 2.2, ma dovrebbe essere compatibile anche con molti altri modelli.
A. Ottenere un accesso ROOT:
1. Iniziamo a capire cosa è il "root mod":
Se qualcuno ha una minima dimestichezza con Linux saprà che per moltissime operazioni, specie quelle fighissime, ma anche quelle pericolosissime è necessario avere i privilegi dell'amministratore di sistema, ovvero "root".
Nei cellulari Android hanno bloccato l'accesso root per impedire ai meno tecno-dotati di fare danni e di mandare il cellulare in blocco (questa è la scusa ufficiale, quella vera è che conviene a loro e all'operatore centellinare le tue libertà informatiche).
L'accesso root si può ottenere in due modalità:
- Temporaneo (consigliato)
- Permanente
2. Preparare la tavola operatoria:
Scaricate l'SDK di Android sul PC (in realtà ci serve solo l'utility adb, ma non l'ho trovata separata.
http://developer.android.com/sdk/index.html
Seguite le istruzioni e terminate l'installazione (per vista/windows7 dovrete lanciare l'SDK Manager come super utente).
Collegate via USB il cellulare e mettetelo in modalità "HTC Sync" con debug attivo (il debug dovrebbe attivarsi di default).
Cercate nel PC dove è stato installato l'SDK e aprite una shell in quel percorso (es.: C:\Program Files (x86)\Android\android-sdk-windows).
Digitate:
cd platform-tools
adb devices
Dovreste avere in risposta un elenco di dispositivi tra cui il vostro, se non avete questa risposta allora assicuratevi che il cellulare sia in HTC Sync e che i driver siano installati.
3. Preparare il paziente:
Esistono una marea dimodi, fatevi un giro su Google se volete, ma se preferite la praticità scaicatevi "Visionary+", un'applicazione che permette di installare e disinistallare in un click il "root mod".
http://android.modaco.com/content/software/320350/19-nov-r14-visionary-one-click-root/
Trovate il link per il download in quella pagina. Se volete potete una letta per cultura generale (ve lo consiglio).
Ora copiate il file APK in C:\ o dove pare a voi e poi digitate:
adb install c:\com.modaco.visionaryplus.r14.apk
Questo comando installaerà Visionary nel vostro cellulare.
Ora, dal market di Android installatevi l'applicazione "Superuser" di ChainsDD, vi servirà per gestire gli accessi root.
4. Attivare il root mod:
Andate nell'elenco applicazioni e avviate "Visionary+".
Cliccate su "Temproot now" e aspettate che la finestra di attesa termini (circa 10-20 secondi).
Se desiderate potete anche fare il Permroot, ma come detto è sconsigliabile dato che dovrebbe invalidare la garanzia (io non l'ho provato).
Congratulazioni! Il vostro telefono ha un accesso root!
B. Installare OpenVPN:
1. Installatevi le applicazioni
Dal market di Android installate queste due applicazioni:
- OpenVPN Installer di Friedrich Schauffelhut
- OpenVPN Settings di Friedrich Schauffelhut
3. Installazione di tun.ko
Per far funzionare la VPN avremo bisogno di un modulo kernel che deve essere compatibile con la versione Linux installata nel vostro telefono.
Nel mio caso (HTC Desire Z) ho trovato tun.ko nel forum XDA-Developers:
http://forum.xda-developers.com/showthread.php?t=808896&page=3
http://forum.xda-developers.com/attachment.php?attachmentid=437746&d=1289350409
Appena ottenuto il file copiatelo in C:\ e dalla shell digitate:
adb push c:\tun.ko /sdcard/
Questo comando copierà il file tun.ko nella memoria sdcard del cellulare
2. Piccola patch
Purtroppo l'OpenVPN installer ha un piccolo bug che richiede il nostro intervento.
Dal PC digitate:
adb shell
Vi si aprirà la shell del cellulare, la riconoscerete dal tradizionale simbolo "$".
$ su
Ora, probabilmente il telefono vi chiederà di autorizzare l'accesso root dell'applicazione "unknown", ok, fatelo.
# cd /system/xbin
# mkdir bb
# cd bb
# ln -s ../ifconfig ifconfig
# ln -s ../route route
Questo passaggio è necessario perché l'installer OpenVPN, anche se correttamente configurato, cerca questi due files nel posto sbagliato.
3. Insmod
Sempre dalla shell del vostro cellulare, in modailità root digitate:
insmod /sdcard/tun.ko
Se tutto va bene non avrete risposta, altrimenti avete sbagliato versione del file tun.ko e vi tocca trovare la vostra.
4. Eseguite OpenVPN installer
Durante questa procedura il telefono vi chiederà ripetutamente di autorizzare l'accesso root dell'applicazione, fatelo!
Specificate /system/xbin come path di installazione di OpenVPN e /system/xbin/bb come path per ifconfig/route.
Ora avete installato OpenVPN!
5. Copiate i vostri files di configurazione OVPN
Copiate i files OVPN e i vari certificati nella memoria sdcard del telefono, nella cartelle "openvpn".
Potete farlo via shell (con il comando adb push) oppure disattivando la modalità "HTC Sync" e mettendo la modalità "Unità disco" che è molto più semplice.
Create quindi una cartella "openvpn" e copiateci dento il necessario.
IMPORTANTE: Appena terminato dovrete togliere la modalità "Unità disco" (mettete quello che vi pare)
6. Avviare OpenVPN settings
Avviate OpenVPN settings e cliccate su "Menù" > "Advanced" e attivate "Fix HTC Routes".
C. Che faccio al riavvio?
Se avete usato permroot non dovreste aver bisogno di niente, ma se avete usato il "temproot" allora dovrete ripetere i passaggi A2, A3 e A4 ogni volta che riavviate il cellulare.
Il mio consiglio è di installarsi un emulatore terminale nel telefono (es.: Android Terminal Emulator di Jack Palevich), di creare uno script shell per i passaggi A2, A3 e di fare tutto dal telefono.





