Czy mogę udostępniać połączenie VPN mojego Androida przez Hotspot?

36

Niedawno kupiłem Chromebooka, który nie obsługuje PPTP VPN mojej firmy. Jako obejście problemu, czy byłoby możliwe połączenie się z VPN na moim Androidzie (4.4) i udostępnienie tego połączenia przez hotspot? Jeśli tak to jak?

sst4460
źródło

Odpowiedzi:

9

Niestety, standardowa aplikacja tetheringowa na Androida nie działa z VPN. To ograniczenie jest niedopatrzeniem oprogramowania, a nie ograniczeniem systemowym.

Istnieje jednak aplikacja o nazwie Tethering ClockworkMod, który umożliwia tethering i korzystanie z VPN w tym samym czasie. W rzeczywistości korzysta ze standardowej aplikacji tetheringowej, a następnie naprawia informacje o routingu, aby działało.

Ta aplikacja nie wymaga rootowania telefonu, ale musisz uruchomić oprogramowanie na komputerze, z którym chcesz się połączyć. W tej chwili działa to tylko w przypadku modemu USB.

Istnieją inne alternatywy dla ClockworkMod Tether, jeśli chcesz je wypróbować, w tym PDANet.

Mam nadzieję, że to może pomóc

Rose Ab
źródło
1
To działało dla mnie za pomocą PDANet. ClockworkMod wydawał się chcieć pozwolenia na korzystanie ze wszystkiego. PDANet potrzebował o wiele mniej uprawnień, ale wciąż nie jestem w 100% pewien jego bezpieczeństwa.
hippietrail
8

Znalazłem informacje, które polegają na dodaniu reguł iptables przy użyciu wiersza polecenia w zrootowanym urządzeniu.

Przetestowałem to na moim Androidzie 4.4 na Blu studio i działa dobrze.

Cytowany tekst pierwotnie napisany przez SmokeyTech1 XDA-Developers tutaj :

  1. Potrzebujesz zrootowanego urządzenia
  2. Upewnij się, że masz aplikację VPN, taką jak OpenVPN lub DroidVPN (używam DroidVPN i jego najlepszych)
  3. Pobierz emulator terminala
  4. Aktywuj hotspot i połącz się z VPN
  5. Uruchom emulator terminala i w pierwszym wierszu wpisz „su” (bez cudzysłowów) i naciśnij klawisz Enter
  6. Skopiuj i wklej to do emulatora terminala. Pamiętaj, aby wkleić do nowego folderu za pomocą Root Browser i skopiować do TE w dokładnie takim formacie, jak pokazano poniżej :

    iptables -t filtr -F DO PRZODU
    iptables -t nat -F POSTROUTING
    iptables -t filtr-I DO PRZODU -j AKCEPTUJĘ
    iptables -t nat -I POSTROUTING -j MASQUERADE
    dodawanie reguły ip z wyszukiwania 192.168.43.0/24 61
    ip route dodaj domyślną tabelę łączy zasięgu zakresu tun tun0 61
    ip route dodaj 192.168.43.0/24 dev wlan0 tabela łączy zakresów 61
    ip route add broadcast 255.255.255.255 dev wlan0 tabela łączy zakresów 61
  7. O to chodzi. Pamiętaj też, aby utworzyć folder z przeglądarką root i wkleić tam kod, ponieważ resetuje się on po ponownym uruchomieniu. Działa na moim LG G3 na Androidzie 4.4.2

(Uwaga: cytowany tekst został edytowany w celu dopasowania do stylu formatowania witryny).

UWAGA : Część zasad mówi wlan0, że jest to interfejs odpowiadający miejscu, w którym chcesz wysłać połączenie. Aby wysłać go do hotspot WiFi, wymień go jest tunel VPN, które otrzymałeś od zdalnego serwera. Możesz wyświetlić listę wszystkich interfejsów wpisujących terminal root ap0tun0netcfg

Jeśli chodzi o emulator terminala, używam ConnectBot :

ConnectBot pozwala emulatorowi terminala w twoim urządzeniu dla połączeń ssh, telnet i localhost.

João José
źródło
3
Interesujące, ale trochę żmudne robić regularnie. Chyba że ktoś ma sposób na spakowanie tego skryptu i uruchomienie go ze skrótu na ekranie głównym lub coś podobnego?
mc0e
3
Wygląda na to, że jest to idealna okazja dla kogoś, aby stworzyć prostą aplikację do automatyzacji tego na Androidzie.
Simon Woodside
3

Tak. F-Secure Freedome (klient VPN) działa na moim Note 2. Mam Note 2 na uwięzi na maszynie Ubuntu i tablecie z Androidem. Mój tablet i laptop podają adres IP w Niemczech, a ja jestem po drugiej stronie oceanu.

  • Upewnij się, że Twój plan danych umożliwia tethering.
  • Upewnij się, że jesteś w sieci komórkowej. Jednak połączenie USB z Wi-Fi VPN w telefonie działa nieco lepiej. Trzymam zerwane połączenie, gdy chodzę po całym powietrzu.
  • W zależności od gustu Androida, przebieg może się różnić

Uwaga 2, a tablet działa 4.4 (CM 11 nightlies), Ubuntu jest na 14.04.

Zlatty
źródło
Ok, dzięki. Będę musiał się z tym pograć jeszcze trochę. Próbowałem szybko, ale nie mogłem uzyskać dostępu do żadnej rzeczy w sieci prywatnej.
sst4460
Miałem z tym pewne problemy, kiedy to było: Laptop - WiFi - telefon - VPN - Verizon - Internet Jednak działało lepiej, gdy było: Laptop - Kabel USB - Telefon - VPN - Verizon (lub WiFi) - Internet
Zlatty
Obecnie mam subskrypcję Freedome VPN i korzystanie z VPN przez USB Tethering nie działa na moim końcu (LGE Nexus 4, Windows 7 PC). Jeśli wyłączę VPN, będę mógł uzyskać dostęp do niezabezpieczonego połączenia przez tethering przez USB.
MP-3
0
  1. Na urządzeniu z Androidem zainstaluj:

  2. Tethering Chromebook i telefon kablem USB.
  3. Biegać:
    • Mobilne połączenie z Internetem
    • Klient VPN
    • Proxoid
    • Internet Sharer
  4. Ustaw telefon komórkowy na tethering połączenie USB (sprawdź ikonę połączenia USB w telefonie zmieniono).
  5. Znajdź adres IP telefonu (Ping i DNS, informacje o sieci, IP: xxx.xxx.xxx.xxx, połączenie internetowe musi być aktywne)
  6. Na Chromebooku zaloguj się, sprawdź połączenie internetowe, WiFi powinno zostać automatycznie zastąpione przez USB Ethernet.
  7. Kliknij ikonę Ethernet, Ustawienia, TAB proxy.
  8. Na koniec ustaw na Chromebooku (host proxy HTTP: adres IP w formie xxx.xxx.xxx.xxx, port 8080, adres IP hosta proxy HTTPS, port 8081, adres IP proxy SOCKS, port 1080).
  9. Spróbuj uruchomić Chrome i przeglądać intranet (jak na urządzeniach mobilnych).
doj
źródło
0

Jest to rozszerzenie odpowiedzi udzielonej przez João José, które pozwala selektywnie kierować określony ruch do VPN, pozwalając innym na bezpośrednie przejście.

Nie wymyśliłbym tego bez błyskotliwej odpowiedzi João José, więc jeśli głosujesz za tym, głosuj również jego odpowiedź.

# Following rules will allow me to redirect traffic through my vpn
iptables -t filter -F FORWARD
iptables -t nat -F POSTROUTING
iptables -t filter -I FORWARD -j ACCEPT
iptables -t nat -I POSTROUTING -j MASQUERADE

ip route add 192.168.43.0/24 dev wlan0 scope link table 61
ip rule add fwmark 0x61 table 61
ip rule add iif tun0 table 61

# Configure traffic that I want to make it go through VPN
# 1. My DNS
iptables -t mangle -A PREROUTING -p tcp -d 208.67.220.220/32 -j MARK --set-xmark 0x61
iptables -t mangle -A PREROUTING -p tcp -d 208.67.222.222/32 -j MARK --set-xmark 0x61
iptables -t mangle -A PREROUTING -p udp -d 208.67.220.220/32 -j MARK --set-xmark 0x61
iptables -t mangle -A PREROUTING -p udp -d 208.67.222.222/32 -j MARK --set-xmark 0x61
# 2. Insecure websites
iptables -t mangle -A PREROUTING -p tcp --dport 80 -j MARK --set-xmark 0x61
Ramast
źródło
Nie jestem pewien, co się stało, ale działało to przez pół sekundy. Zadziałało, a następnie ponownie uruchomiłem telefon i przestało działać :( Jestem na Androidzie 9.
Khon