Lorsque je suis sur un réseau public auquel je ne fais pas confiance, j'utilise une combinaison de ConnectBot et de ProxyDroid (avec l'option "Global Proxy" activée) pour faire passer le trafic de mon téléphone par un serveur de confiance que je contrôle. Cependant, je dois configurer tout cela manuellement, et je suis sûr qu'il y a beaucoup d'autres fuites de données autour de ce tunnel (au minimum, les applications vont vérifier entre le moment où je me connecte à un réseau et le moment où je configure le tunnel). De plus, le processus est suffisamment complexe pour que je ne m'y soumette que lorsque je suis sur un réseau public et que mon navigateur me dit que google.com utilise un certificat signé par GoDaddy.
J'aimerais mettre en place quelque chose qui facilite un peu le processus, de sorte qu'un tunnel soit automatiquement établi chaque fois que je me connecte à un réseau, que tout le trafic soit acheminé par ce tunnel et que les applications ne puissent pas se connecter à Internet si le tunnel n'est pas ouvert (très important). Évidemment, il devrait vérifier l'authenticité du serveur avant de se connecter (mais je n'ai pas vu de VPN qui ne le fasse pas). J'aimerais quelque chose qui utilise SSH car c'est le plus simple à mettre en place, mais n'importe quoi fera l'affaire. Quelles sont les solutions de ce type qui existent ? Mon serveur fonctionne sous Ubuntu 12.04, et je peux y installer des logiciels supplémentaires si nécessaire.
Encore une fois, le plus important ici est qu'aucune application ne peut accéder au réseau sans passer par le tunnel, et si le tunnel n'a pas encore été établi, aucun trafic ne s'échappe. Évidemment, la seule exception devrait être l'application qui établit la connexion initiale pour établir le tunnel.
J'utilise actuellement un HTC Incredible enraciné qui fonctionne avec CyanogenMod 7. Je suis à la recherche d'un nouveau téléphone, donc si quelqu'un connaît des solutions qui nécessitent une version plus récente d'Android 2.3, elles seront les bienvenues.