Android OpenVPN: pridanie súkromnej trasy bez rootovania telefónu
Pridajte jednu trasu do profilu, ktorý Android skutočne načítava, a potom overte, či ju server povoľuje. Postup pre úpravu, opätovné pripojenie a štyri kontroly.
Potrebujete ešte jednu súkromnú podsieť — povedzme 10.60.0.0/24 — ktorú profil teraz neobsahuje. Na notebooku by ste pridali trasu a šli ďalej. V Androide je VPN aplikácia, zariadenie tun patrí tej aplikácii a bez rootu neexistuje tabuľka smerovania, ktorú by ste mohli upraviť. Trasa musí existovať, ale ide do profilu, ktorý načítava klient, a funguje len vtedy, keď druhá strana súhlasí. Tu je úprava, opätovné pripojenie, strana servera a vrátenie.
Pred úpravou: čo trasa môže a čo nemôže
Trasa odpovedá na jednu otázku: ktoré rozhranie má niesť prevádzku k tomuto cieľu. Nič neoprávňuje. Ak vlastník siete nesúhlasil, že tento telefón môže dosiahnuť tú podsieť, správna trasa vytvorí konfiguráciu, ktorá vyzerá správne, a tiché zahodenie na bráne, a nasledujúcu hodinu strávite úpravou nesprávneho súboru.
Najprv získajte ten súhlas, písomne, ak má sieť vlastníka. Potom si poznačte, čo nerobíte: neprideľujete telefónu adresu v tom LAN, nemeníte listener servera a nevyberáte lokalitu podľa názvu hostiteľa. To sú štyri rôzne zmeny a iba prvá je vaša.
| The route gives you | The route does not give you |
|---|---|
| A destination prefix associated with the tunnel | Permission to forward at the gateway |
| A path for the phone's own traffic | A return route on the target host |
| A scope for the client's virtual interface | A name in DNS, or HTTPS identity |
Upravte profil, ktorý klient skutočne načítava
Pre kompatibilného klienta, ktorý importuje bežný text možností OpenVPN, je doplnkom jeden riadok:
route 10.60.0.0 255.255.255.0Pridajte ho do tela profilu, k ostatným smerovacím direktívam, a endpoint, certifikáty, prácu s kľúčmi a overovacie riadky operátora nechajte presne také, aké boli. Nevkladajte celý starý príklad, aby ste si požičali jeden riadok: kompresia, absolútne cesty k súborom a zastarané nastavenia cipher cestujú s ním a budú vás stáť samostatnú ladiacu reláciu.
Krok, ktorý ľudia vynechávajú, je vlastníctvo súboru. Ak aplikácia importovala profil, kópia, ktorú používa, patrí aplikácii, a úprava stiahnutého originálu nič nemení. Použite podporovaný editor klienta alebo znova importujte upravený súbor cez cestu aktualizácie a potvrďte názov aktívneho profilu, keď existuje viac podobných názvov. Poznačte si, ktorý ste zmenili.
Ak profil už obsahuje route-nopull, neinštaluje sa žiadna trasa zo servera a každý prefix, ktorý telefón potrebuje, musí byť uvedený explicitne. Je to legitímny návrh, ale znamená, že vynechaný riadok vyzerá presne ako odmietnutie servera.
Pripojte sa znova a overte na zariadení
Najprv sa odpojte, potom sa znova pripojte práve k tomu profilu, ktorý ste upravili, namiesto toho, aby aplikácia obnovila poslednú reláciu. Otvorte denník pripojenia a potvrďte, že klient spracoval nový riadok; smerovacia direktíva, ktorú rozhranie ignoruje, je častým výsledkom úpravy nesprávnej kópie.
Testujte cieľ podľa adresy, nie podľa názvu. Kontrola TCP na jeden známy port služby povie viac ako ping, pretože mnohí hostitelia odpovedajú na ICMP, kým port služby je filtrovaný. Ak adresa odpovedá a názov nie, máte otázku resolvora a nie smerovania, a ďalšia časť nie je pre vás.
Patria sem aj dve kontroly rozsahu. VPN na aplikáciu znamená, že trasa adresy môže existovať, kým aplikácia, s ktorou testujete, je mimo zahrnutého súboru, preto testujte s aplikáciou, ktorá je naozaj vnútri. A prefix IPv4 nehovorí nič o ceste IPv6; ak je služba dual-stack, pridajte zodpovedajúcu trasu IPv6 alebo očakávajte, že klient uprednostní cestu, ktorú ste nezamýšľali.
Jeden negatívny výsledok sa oplatí rozpoznať skoro: ak trasa full-tunnel už pokrýva 0.0.0.0/0, prefix nechýba a jeho opätovné pridanie nič nemení. Dvojité pokrytie neopraví odmietnutie na strane servera ani chýbajúcu odpoveď.
Dokončite cestu na serveri
Tri veci musia platiť mimo telefónu. Brána potrebuje trasu k cieľu a povolenie preposielať zdroj telefónu jej smerom. Cieľ musí tento zdroj akceptovať a vracať odpovede cez bránu, inak návrh potrebuje zámerný preklad na výstupe. Voľba route z príručky OpenVPN pokrýva direktívu na strane klienta; preposielanie a spätné smerovanie sú samostatné nastavenia na samostatných strojoch.
Ak cieľ sedí za iným klientom VPN a nie priamo za bránou, server potrebuje iroute pre podsieť tohto partnera. Tá direktíva patrí serveru a opisuje, ktorý klient vlastní prefix; telefón ju nemôže poskytnúť zo svojho profilu a žiadne množstvo úprav na strane klienta ju nenahradí.
Overte spätnú cestu explicitne. Odpoveď, ktorá vychádza predvolenou trasou namiesto tunela, vytvára klasický polootvorený príznak: spojenie sa nadviaže v jednom smere a nič sa nevracia. Preklad zdroja na bráne je legitímna oprava, keď cieľ nevie smerovať späť, ale je to politické rozhodnutie s vlastnými dôsledkami.
Vrátenie a akceptácia
Pred úpravou si uchovajte predchádzajúci profil. Ak zmena situáciu zhorší, obnovte tú kópiu tou istou cestou opätovného importu, pripojte sa znova a potvrďte, že staré správanie sa vracia — to potvrdzuje, že ste zmenili to, čo ste si mysleli, že meníte. Vrátenie, ktoré neobnoví starý stav, znamená, že aplikácia drží tretiu kópiu, ktorú ste nenašli.
Zmenu akceptujte, keď platia štyri veci, otestované v tomto poradí po novom pripojení: cieľ odpovedá na svojom porte služby, súkromný názov sa vyrieši, ak sa očakáva, HTTPS stále validuje zamýšľaný názov hostiteľa a všetko stále funguje po reštarte alebo po prechode z Wi-Fi na mobilnú sieť. Posledná kontrola je tá, ktorá zachytí trasu, ktorá existuje len dovtedy, kým Android znova nevytvorí tunel.
- Pred akoukoľvek úpravou potvrďte, že vlastník siete cieľ povoľuje.
- Umiestnite trasu do profilu, ktorý načítava klient, potom znova importujte a pripojte sa.
- Overte cez port služby, v rozsahu na aplikáciu, pre správnu rodinu adries.
- Opravte preposielanie, spätné smerovanie a iroute na serveri, nie na telefóne.
- Uchovajte kópiu na vrátenie a po reštarte otestujte znova.