2 votes

Pourquoi Orbot a-t-il besoin de Root pour le proxy transparent alors qu'OpenVPN n'en a pas besoin ?

Orbot nécessite un appareil enraciné pour fournir de manière transparente un proxy à toutes les applications, mais si j'ai bien compris, l'application OpenVPN n'en a pas besoin.

Je comprends que ces deux applications font des choses différentes, mais il me semble que si OpenVPN peut acheminer tout votre trafic à travers un VPN sans Root, alors Orbot devrait aussi pouvoir s'en passer.

3voto

David Negron Points 971

Le problème est qu'Orbot est conçu comme un proxy réseau, plutôt que comme un service VPN, et qu'Android n'expose aucune API pour le proxy brut de paquets réseau.

Selon la Description d'Orbot sur F-Droid :

Orbot permet d'accéder à Tor en accédant à un proxy SOCKS ou HTTP local. Sur un appareil rooté, le proxy peut être complètement transparent, c'est-à-dire que l'application qui accède au réseau n'a pas besoin de connaître l'existence du proxy.

La distinction importante ici est qu'Orbot agit en tant que mandataire et non un VPN. Il dispose donc de deux options pour l'acheminement du trafic applicatif :

  • Fonctionner application par application, l'utilisateur devant définir les paramètres du proxy pour chaque application qu'il souhaite faire fonctionner par l'intermédiaire d'Orbot. Aucun Root n'est nécessaire pour cela, puisque chaque application acheminera de manière appropriée son propre trafic vers Orbot.
  • Travailler à l'échelle du système en réacheminant todos le trafic sur le réseau.

Android ne fournit aucune API permettant d'accéder à un trafic réseau arbitraire ou de le réacheminer, car cela ne serait évidemment pas sûr. Par conséquent, Orbot doit recourir à en utilisant iptables les règles du pare-feu à la place qui nécessite un accès racine. Une application VPN, en revanche, est capable de tirer parti de l'accès Root. VpnService API pour établir une connexion VPN.

La principale différence réside dans le fait que le système est profondément impliqué dans la création et la gestion d'une connexion VPN, même lorsqu'elle est initialisée par une application tierce. L'utilisateur doit toujours approuver la connexion et le système fournit une notification et des boîtes de dialogue d'information qui (en théorie, en tout cas) ne peuvent pas être cachées ou modifiées. Le système est également responsable de la configuration de l'interface réseau virtuelle utilisée pour le tunnel.

Je ne connais pas très bien le protocole Tor, il se peut donc qu'agir en tant que proxy soit la seule solution possible à l'heure actuelle. Si c'est le cas, ils ne peuvent tout simplement pas éviter l'exigence de la racine pour le routage à l'échelle du système.

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X