Privaatse URL-i avamine ja lootmine, et tunnel tõuseb esimesena, on võidujooks ja tavaliselt võidab brauser. Otsetee, mis reageerib juba laadivale lehele, on jätnud vahele DNS-päringu ja tihti esimese ühenduse, mis on täpselt see osa, mis VPN-i vajas. Töövoog peab järjekorda omama, mitte seda jälgima. Kolm tingimust otsustavad, kas see töövoog üldse Taskerisse kuulub.

Üks sisenemispunkt peaks järjestust omama

Anna privaatsele teenusele üks heakskiidetud sisenemispunkt ja lase sellel punktil sammud järjekorras sooritada. Kontrolli sihtkohta, vali kavatsetud profiil, taotle ühendust, oota valmiduse tulemust koos piiranguga, kui kaua ootad, ja alles siis ava URL. Kui mõni samm ebaõnnestub, peatu ja ütle seda, selle asemel et langeda otseavamisele.

Just selle viimase klausli jätavad inimesed vahele. Töövoog, mis avab URL-i ajalõppu saabudes ikkagi, on hullem kui automatiseerimise puudumine, sest see tekitab päringu, mis näeb välja nagu ebaõnnestunud VPN, kuigi seda ei kasutatud kunagi.

1. validate destination against the approved list
2. select the intended VPN profile
3. request connection through the client's supported interface
4. wait for readiness, maximum 20 seconds
5. open the URL only if readiness succeeded
6. on timeout, stop and report

Ülaltoodud numereeritud loend on leping, mitte eksporditud profiil. Iga klient rakendab oma juhtimispinda erinevalt ja mõned nõuavad pistikprogrammi, selget juhtimisõigust või ühekordset kasutaja nõusolekut, mida ükski automatiseerimine pakkuda ei saa.

Ühendatud ei ole sama mis valmis

Olek, mis ütleb, et tunnel käivitus tõestab, et klient võttis päringu vastu. See ei tõesta, et resolver tagastab nüüd privaatseid aadresse või et kavatsetud teenus on kättesaadav. Need on eraldi tulemused ja nende vaheline lünk on koht, kus liiga vara avav otsetee nurjub vaikselt. Klient teatab omaenese olekust, mitte tee olekust, mida URL kasutab.

Määratle valmidus millegi suhtes, mida töövoog saab jälgida. Kliendi ühenduse olek, oodatud vahemikust lahendatud aadress või kättesaadavuse sond konkreetse teenuse vastu kõik sobivad, eeldusel et sond ei saa tavalisse võrguteesse tagasi langeda. Sond, mis õnnestub tavalisel marsruudil, ei ütle sulle midagi.

Piira ootamist. Valmiduse tingimus ilma ajalõputa muudab katkise profiili otseteeks, mis ripub, ja kasutajad teatavad sellest kui telefoni külmumisest, mitte kui VPN-i probleemist.

Mida Tasker suudab ja mida mitte

Tasker annab liimi: käivitaja, järjestatud toimingute loendi, tingimused ja URL-i toimingu. Selle URL-i avamise toiming sooritab ainult avamise sammu ja mitte midagi muud. Ühendamise samm peab tulema VPN-kliendilt, pistikprogrammi, intenti või avalikustatud teenuse kaudu, mida klient dokumenteerib ja lubab.

OpenVPN for Android dokumenteerib näiteks AIDL-il ja intentidel põhineva kaugjuhtimisliidese. See on selle kliendi võimekus, mitte litsents ükskõik millisele seadme ülesandele seda juhtida. Anna juhtimine ainult rakendusele, mida kavatsed, sest automatiseerimiskiht, mis suudab tunnelit ühendada ja katkestada, on juhtimispind, mida tasub kaitsta.

Kui paigaldatud klient ei paku ühtegi toetatud juhtimismehhanismi, on aus vastus, et seda töövoogu ei saa selle kliendi peal ehitada. Vana funktsioonide võrdlemise leht ei ole telefonis oleva versiooni võimekuste spetsifikatsioon.

Kui piir peab olema kohustuslik

Automatiseerimine on mugavus ja mugavus ei saa turvapiiri kehtestada. Kui nõue on, et hõlmatud rakendused ei suhtle kunagi ilma VPN-ita, kasuta platvormi pideva VPN-i ja blokeerimise seadet või samaväärset hallatavat konfiguratsiooni. Brauserisündmus, mis käivitub pärast navigeerimise algust, ei saa seda kehtestamist asendada, ükskõik kui hoolikalt ülesanne on järjestatud.

Otsusta, millist sa ehitad. Otsetee, mis ühendub kõigepealt ja avab seejärel, on kasulik ja see ei ole garantii. Hallatav seade, kus blokeerimine on lubatud, on garantii ja see ei vaja üldse Taskeri järjestust.

RequirementMechanism
Open the page after the tunnel is readyOrdered task with a bounded readiness wait
Never allow traffic outside the tunnelAlways-on VPN with blocking, or managed policy
Only some apps use the tunnelPer-app VPN or work-profile scope
Different URL every timeValidate the input before opening it

Käivita kolm tulemust, mitte üks

Käivita töövoog eduka ühenduse, tahtliku ajalõpu ja tavalise uuestiühenduse vastu pärast tunneli kukkumist. Ajalõpu juhtum on see, mis paljastab, kas järjestus tõesti peatub, ja uuestiühenduse juhtum paljastab, kas valmidust kontrollitakse või ainult eeldatakse varasemast edukast. Käivita esimesena ajalõpu juhtum, sest töövoog, mis eirab ebaõnnestumist, ei ole väärt edukuse jaoks testimist.

Luba ainult heakskiidetud loendi sihtkohti ja kontrolli iga väljast tulevat linki enne selle avamist. Ülesanne, mis võtab vastu suvalisi linke, muutub viisiks ootamatute skeemide käivitamiseks, ja nii jõutud privaatne haldusleht on hullem tulemus kui ebaõnnestunud otsetee.

Kirjuta profiil, valmiduse tingimus ja ajalõpp ülesande kõrvale. Järgmine inimene, kes VPN-kliendi vahetab, vajab kõiki kolme, ja ükski neist ei ole otsetee ikoonilt nähtav.

Seotud artiklid