Бөгөттөөчү өчүргүчтүн иштээрин билүү үчүн чыныгы аккаунт керек эмес; коркунучка кабылган нерсе — аккаунттун өзү. Текшерүү трафиктин туннелден тышкары чыгышы мүмкүн же чыкпашы мүмкүн болгон кыска терезе жаратат, ошондуктан жүк жоготууга боло турган нерсе болушу керек. Мен муну азыр жасалма барак жана браузердин кошумча профили менен жасайм жана бул мурун колдонгон браузер менен вебпочта ыкмасына караганда так жооп берет. Төмөндө клиент сунуштаган тартипти ээрчийм: параметр, багыт, өтүү, анан далил.

Тест бир гана тар суроого жооп берет: ушул өтүү учурунда бул колдонмо туннелден тышкары тармакка жете алабы? ал калган саясаттын акылга сыярлыгы тууралуу эч нерсе айтпайт. Ауқымды ошентип тар кармасаңыз, натыйжа жазып алууга татыктуу.

Клиенттен өчүргүчтү жана анын ауқумун табыңыз

Тармактын абалын өзгөртүүдөн мурун клиентти ачып, бөгөттөө параметрин табыңыз. Өндүрүүчүлөр аны ар башкача атайт: бөгөттөөчү өчүргүч, кулпулоо режими, тармактык кулпу, туннелден тышкаркы трафикти бөгөттөө. Жазуу ичиндеги параметрлер тууралуу азыраак айтат. Маанилүүсү — бөгөт ар дайым колдонулабы, же колдонмо туннел жаңы эле бузулду деп чечкенде ганабы, жана ал бардык колдонмолорду камтыйбы же тандалган тизмениби.

Анан клиентиңиз чындап аткара ала турган өтүүлөрдү тизмелеңиз. Колдонуучу баштаган ажыратуу, колдонмодон чыгуу жана сервер менен байланышты жоготуу көпчүлүк клиентте үч башка код жолу жана алар бир бөгөттөө саясатын бөлүшпөйт. Кээ бири колдонмо жабылганда бөгөттү бошотот. Башкалары чыпка эрежелерин бир нерсе жок кылганга чейин калтырат. Болжолдобой, иштеткен версияңыздын өндүрүүчү параметрлер шилтемесин окуп, үчөөнүн кайсынысын текшерип жатканыңызды жазыңыз.

Профилди да жазыңыз: протокол, дарек үй-бүлөлөрү жана бөлүнгөн туннель күйгүзүлгөнбү. Бүткүл түзмөк камтылат деген билдирүү маанисиз, эгер профиль атайын бир нече колдонмону чыгарып салса, ал эми өзүңүз конфигурациялаган чыгаруу — агым эмес. OpenVPN Connect параметрлер шилтемеси кайсы которгуч кайсы жүрүм-турумду өзгөртөрүн атаган барак, бирок белгилер клиентке жараша ар башка.

Туннелсиз да иштеген жасалма багыт тандаңыз

Жасалма баракка эки касиет керек, бирөөнү өткөрүп жиберсеңиз, натыйжа окулбайт. Туннел өчүп, бөгөт өчүк турганда ага түз жетүү мүмкүн болушу керек, болбосо жооптун токтошу жөн гана хост жоголгонун билдириши мүмкүн. Жана ага кирүү, cookie же төлөм керек болбошу керек, ошондо агымдын баасы сессия эмес, бир журнал сабы болот.

Өзүңүз көзөмөлдөгөн хосттогу статикалык барак — эң таза тандоо. Жөнөкөй HTTP сервери иштеген кошумча виртуалдык машина да дээрлик ошондой жакшы, ал эми коомдук туташуу текшерүү баракчасы да жарайт, эгер анын жеткиликтүүлүгү сиздин көзөмөлүңүздөн тышкары экенин кабыл алсаңыз. Даректи, портту, дарек үй-бүлөсүн жана атты чечүү керекпи экенин жазып алыңыз, анткени алардын ар бири кийин бөлүп чыгарууга туура келе турган өзгөрмөгө айланат.

Которгучка тийүүдөн мурун базалык абалды орнотуңуз. Туннел күйүк кезде жасалма барак туннел аркылуу жооп бериши керек, бул саясат маршрутунун иштешин далилдейт. Туннел өчүк жана бөгөт жок кезде ал түз жооп бериши керек, бул багыттын тирүү экенин далилдейт. Ошондо гана бөгөттөлгөн абалдагы ийгиликсиздик сизге бир нерсе айтат.

Өтүүлөрдү белгиленген тартипте аткарыңыз

Өтүүлөрдү бир-бирден аткарып, ар бирине бир нече секунд тынчтанууга бериңиз, анткени клиенттер көбүнчө ушул аралыкта эрежелерди бузуп, кайра курат. Ар жолу ошол эле кыска текшерүүнү жүргүзүү байкоолорду салыштырууга мүмкүндүк берет:

curl -sS -o /dev/null -w 'http=%{http_code}\n' --max-time 5 http://decoy.example/
echo "curl_exit=$?"
dig +short decoy.example
curl -6 -sS -o /dev/null -w 'v6_http=%{http_code}\n' --max-time 5 http://decoy.example/
echo "curl_v6_exit=$?"
TransitionExpected with the block onFailure signature
Manual disconnectDecoy stops answering within secondsDecoy still returns 200
Server or path failureBlocked, with no exemption for the old endpointDirect access during the gap
Quit the appClient-dependent; record what happensBlock disappears with the process
Wi-Fi to EthernetBlock holds until the tunnel returnsTraffic flows mid-change

Колдонмодон чыгуу сабы, кадимки колдонууда клиентти эч качан жаппасаңыз да, өзүнчө жүргүзүүгө татыктуу. Эгер чыгууда бөгөт бошотулса, кулоо же мажбурлап жаңыртуу сизге ошол эле таасирди берет, жана бул жайгаштыруу тууралуу факт, сиздин чыдамдуулугуңуз тууралуу эмес. Windows'до эквиваленттүү зонддор — Resolve-DnsName decoy.example жана curl.exe -s -o NUL -w "%{http_code}" http://decoy.example/.

Бөгөттү бузулган резолвер'ден ажыратыңыз

Барактын жүктөлбөшүнүн бир нече себеби бар жана алардын бирөө гана которгучтун иштеши. Эгер ат чечилбесе, сиз DNS бөгөттөлгөнүн же бузулганын билдиңиз, маалымат жолунун бөгөттөлгөнүн эмес. Литералдык даректи да текшериңиз, ошондо жооп чечүүгө таптакыр көз каранды болбойт.

curl'дун чыгуу коддору бул учурларды ажыратат. 6 — атты чечүү катасы, 7 — туташуудан баш тартылды, 28 — убакыт бүттү. Бөгөттөлгөн маршрут адатта литералдык дарекке карата убакыт бүтүү же баш тартуу катары көрүнөт, ал эми тек DNS бөгөтү 6ны калтырып, калганын жашырат. Кэшттелген барак же туткундалган портал көздү алдайт, ошондуктан далил — экран эмес, чыгуу коду.

Зондду IPv6 боюнча литералдык дарек менен кайталаңыз. IPv4тү камтып, IPv6ны этибарга албаган бөгөт жетиштүү кеңири таралган, ошондуктан жазууларыңызда өзүнчө сапка татыктуу, ал эми туннелден тышкары IPv6ны өчүргөн клиент эки үй-бүлөдө тең таза ийгиликсиздикке учурашы керек.

Натыйжа камтыган ауқумду жазыңыз

Туннел кайра көтөрүлгөндө калыбына келүүнү ырастаңыз: жасалма барак туннел аркылуу жооп берет, резолвер жоопторду кайтарат, саясат калтырган жериңизде турат. Анан эксперименттерди артка кайтарыңыз. Убактылуу фаервол эрежеси, жөндөө маршруту же сыноо профили ордунда калса, кийинки жүгүртүүнү чаташтырат жана колдонмодон узак жашашы мүмкүн.

Бир өтүү бир клиент версиясын, бир профилди, бир өтүүнү жана бир дарек үй-бүлөсүн камтыйт, ошондуктан ушул төртөөнү натыйжа менен кошо жазыңыз.

  • Клиент версиясы жана платформа, жана параметр профилге таандыкпы же глобалдуубу.
  • Профиль, протокол жана бөлүнгөн туннелдин чыгаруулары.
  • Сыналган өтүү жана аны кантип пайда кылганыңыз.
  • Дарек үй-бүлөлөрү жана DNS, бөгөттөлгөн жана бөгөттөлбөгөн абалдар үчүн curl чыгуу коддору менен.

Эгер кандайдыр бир сап бош болсо, тест бүтө элек. Роуминг тармак өзгөрүүсүнүн сабын кайталоону билдирет. Көзөмөлсүз кайра жүктөө эрежелердин кайра келерин текшерүүнү билдирет, жана бул которгуч тууралуу эмес, калыбына келтирүү тартиби тууралуу суроо. Клиент жаңыртылгандан кийин ырааттуулукту кайталаңыз, анткени которгучтар сейрек өзгөрөт, ал эми алардын артындагы жүрүм-турум өзгөрөт. Жасалма баракты сактап калыңыз: алмаштыра турган эч нерсе жок, кийинки текшерүү беш мүнөт алат.

Тектеш макалалар