4 votos

¿Cómo utilizar la interfaz de red como usuario no root?

Quiero comunicarme entre mi dispositivo Android y mi caja de Linux sobre IP a través del modo de interfaz de red USB. El dispositivo que estoy usando es un OnePlus One corriendo CM12.1 nightly builds. Es rooteado y SELinux se establece en PERMISSIVE . La separación de espacios de nombres de montaje también está desactivada.

He conectado mi OPO a mi caja de Linux y lo puse en modo de interfaz de red a través de algunos reflejos de Java y el permiso MANAGE_USB sólo del sistema. (No estoy usando la configuración estándar de tethering porque quiero usar mi caja de Linux como la puerta de enlace y no al revés). He utilizado ip addr add para agregar una dirección IP en ambos extremos (caja de Linux y OPO) y luego agregó una ruta con ip route a través de mi caja de Linux para el acceso a Internet. También he habilitado el reenvío de IPv4 en el lado de la caja de Linux, así como la habilitación de todo lo necesario iptables reglas.

Mi problema es el siguiente: sólo root pueden comunicarse a través de la interfaz. Por ejemplo, con mi caja Linux en 10.42.0.1 y mi OPO en 10.42.0.2 a través de la interfaz de red USB, ejecutando ping 10.42.0.1 o ping 8.8.8.8 en el lado de Android sin ejecutar desde un su shell no funcionará . Ejecutando exactamente los mismos comandos que root funciona perfectamente. Los mismos comandos a través de la interfaz WiFi en el lado de Android funcionan bien sin Root.

Estoy asumiendo que se trata de alguna nueva característica de seguridad implementada en Android 5.0 / 5.1, ya que funcionaba bien en KitKat. Alguien sabe exactamente lo que podría ser?

0voto

Ryan Scott Puntos 1

Yo también me encontré con esto. Tiene que ver con las políticas de enrutamiento que hacen que la tabla de enrutamiento "principal" no se active para ningún usuario que no sea Root.

A mí me ha funcionado, pero todavía estoy estudiando las implicaciones de hacer esto de forma tan amplia. Sin embargo, no es peor que lo que hace mi caja de linux, así que ahí está eso.

 ip rule add from all lookup main pref 99

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X