Браузер иштеген жана ар бир туннель өлгөн кампус же мейманкана тармагы бир маселе эмес, төрт катмар. Жол TCP 443кө гана уруксат бериши мүмкүн, аутентификацияланган прокси талап кылышы мүмкүн, кол алышууну текшериши мүмкүн же саясат менен алыскы кирүүгө тыюу салышы мүмкүн. Аларды ирети менен иштетүү тармак эрежесин оңдоо үчүн жаңы клиент сатып алуудан сактайт. Төмөнкү нускама болжол менен он мүнөт алат жана кайсы катмар сизден баш тартканы тууралуу жазуу жүзүндөгү жооп менен бүтөт.

Кайсы катмар байланыштан баш тартканын далилдеңиз

VPN клиентинен баштабаңыз. Ошол хостко жөнөкөй HTTPS суроосу менен баштап, убакыт фазаларын окуңуз, анткени ийгиликсиз фаза кайсы түзмөктүн жооптуу экенин айтат:

curl -sS -o /dev/null -w 'connect=%{time_connect} tls=%{time_appconnect} code=%{http_code}\n' \
  --max-time 8 https://vpn.example.net/

Жооп жок жана connect убакыт жок болсо TCP эч качан бүтпөгөн, ошондуктан өрт дубалы, прокси талабы же туура эмес багыт оюнда. connect убакыт бар, бирок tls убакыт жок болсо ортодогу бир нерсе байланышты кабыл алып, кол алышууну токтоткон, текшерүүчү прокси клиент тараптан дал ушундай көрүнөт.

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

openssl s_client -connect vpn.example.net:443 -servername vpn.example.net -brief </dev/null

Чыгаруучу сапты окуңуз. Өз CAңыз кызматка жеткениңизди билдирет; корпоративдик же түзмөк чыгаруучусу чыпка байланышты токтотуп, андан ары эмне болорун чечип жатканын билдирет. Эки чыгышты тең убакыт белгиси менен жазып алыңыз, анткени бир сааттан кийин конок тармагындагы ошол эле сыноо башка жооп бериши мүмкүн.

Проксини билген клиент биринчи пакетти өзгөртөт, саясатты эмес

Эгер тармак аутентификацияланган прокси аркылуу CONNECT талап кылса, VPN клиентине айтуу керек, болбосо ал маршруттай албаган дарекке сокет ачууга аракет кылат. Проксини клиенттен өзүнчө сынаңыз, ийгиликсиздиктин бир түшүндүрмөсү болушу үчүн:

https_proxy=http://proxy.example.edu:3128 curl -v -o /dev/null https://vpn.example.net/
sudo openvpn --config /etc/openvpn/corp.conf --proto tcp-client \
  --remote vpn.example.net 443 --verb 4

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

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

Ошондой эле багыттоо үлгүсүнө көңүл буруңуз. Чыпкаланган тармак жеткирүүчүнүн аныктоо хост атына өзүнүн бир нерсеси менен жооп бериши мүмкүн, бул клиент кайсы прокси профилин тандаарын өзгөртөт. Процессти ошол кызыктайлыкка куруп бербеңиз. Ал жерге жараша өзгөрөт, эскертүүсүз өзгөрөт жана аны башка бирөө үчүн колдоо мүмкүн эмес.

443 порту жеткиликтүү, уруксат берилген эмес

Туннелди 443тө TLSке ороп салуу жеткиликтүүлүктү чечет, башка эч нерсени чечпейт. Портту текшерген чыпка өткөрөт; кол алышуунун изин алган чыпка өткөрбөйт, ал эми шифрленген клиент саламдашуусу сервер атын эки тарап тең колдогондо гана жашырат. Сыноону иштетип, үмүт кылгандын ордуна кайсы чыпканын артында экениңизди билиңиз.

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

UDP адатта биринчи курмандык, жана аны божомолдоонун ордуна ырастоо керек. Эгер WireGuard же демейки OpenVPN кол алышууну эч качан бүтпөсө, ал эми TCP 443 иштесе, тармак UDPни таштап жатат, жана ачкычтарды кайра жаратуу аны өзгөртпөйт:

sudo wg show
dig +short vpn.example.net
dig +short vpn.example.net @1.1.1.1

Кечээ иштеген шериктин жанындагы бош кол алышуу убакыт белгиси UDPнин жообу. Эки DNS суроосу башка суроого жооп берет: жергиликтүү чечүүчү жана ачык чечүүчү акыркы чекиттин дареги боюнча макул болбосо, сизди багыттап жатышат жана транспорттын далили туура эмес.

Машинадан чындыгында эмне чыкканын текшериңиз

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

sudo tcpdump -ni any -c 20 'tcp port 443 and host 203.0.113.10'
sudo ss -tunp | grep -E ':(443|1194|51820)\b'

SYN пакеттерди көрүп, SYN-ACK жок болсо, бөгөт жогорураак, клиент күнөөсүз. Сервердики эмес дарекке бүткөн кол алышууну көрсөңүз, прокси же кармоочу менен сүйлөшүп жатасыз. Эч нерсе көрбөсөңүз, тыянак чыгаруудан мурун туура интерфейсте жазганыңызды текшериңиз.

Сокет тизмеси назик учурду кармайт: демейки маршрутту мурунтан ээлеп турган экинчи туннель. Маршруттоо таблицасы үчүн талашкан эки клиент бөгөттөлгөн тармакка дал окшош үзүлүштүү бузулууларды жаратат, ал эми жазуу күтүлбөгөн интерфейстен чыккан трафикти көрсөтөт.

Кайтаруу жана сактоого татыктуу жазуу

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

unset https_proxy http_proxy
sudo systemctl stop openvpn-client@corp
sudo ip route show default

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

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

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