TCP 1723-ыг дамжуулах нь PPTP-ийн эхний хэсгийг онгойлгож, үлдсэнийг эвдэрхий үлдээдэг тул Windows оролдлогын үед 807 алдааг буцаасаар байна. Дараагийн зөн совин нь 47 портын дүрэм нэмэх бөгөөд яг тэр алхам нэг үдэшлэгийг үрээнэ: GRE нь IP толгой дахь протоколын дугаар бөгөөд дамжуулалтын хүснэгт тааруулж чадах порт биш. Маршрутлагч 47 протоколыг нэвтрүүлж, түүнийг мөн тэр дуудлагад холбох хүртэл туннель эхэлж чадахгүй. Доорх хэсгүүд хоёр сувгийг тусгаарлаж, дараа нь нэг нэгээр нь шалгадаг.

Портын хүснэгтэд протоколын дугаарт зориулсан мөр байхгүй

PPTP нь өөр өөрөөр бүтэлгүйтдэг хоёр яриа ашигладаг. TCP 1723 дээрх нь дуудлагыг эхлүүлж, холбоосын мэдээллийг дамжуулж, хэрэглэгч салгах үед түүнийг тасалдаг. Ачааны тал нь GRE дотор ажилладаг бөгөөд IP толгой үүнийг 47 протоколын дугаараар тэмдэглэдэг, тэр туннелийн дотор PPP холбоосын талаар хэлэлцэж, MS-CHAPv2 итгэмжлэлийг шалгадаг.

GRE нь тээврийн толгой агуулаагүй тул ямар ч порт илрүүлэхгүй, тиймээс портод зориулж бичсэн дүрэм тааруулах зүйлгүй болно. 1723-ыг дамжуулдаг маршрутлагч тэр TCP сессийн буулгалт үүсгээд тэнд зогсдог. Хоёр дахь хагасыг хариуцдаг програм хангамж энэ боломжийг PPTP дамжуулалт эсвэл PPTP ALG гэж нэрлэдэг, зарим програм хангамж хоёуланг нь санал болгодоггүй бөгөөд энэ цоорхойг хэзээ ч дурддаггүй. Чекбокс дээрх шошго нь 47 протоколыг ерөнхийд нь таних эсэхээс бага ач холбогдолтой.

Мэдээллийн зам үхэх үед Windows юу мэдээлдэг

807 алдаа нь холболтыг гүйцээж чадсангүй гэж хэлдэг бөгөөд энэ нь практик дээр дуудлага серверт хүрч, мэдээллийн суваг босоогүй гэсэн үг. Энэ бол тээврийн тухай дүгнэлт, бүртгэлийн тухай биш. Итгэмжлэл эсвэл нэвтрүүлэх протоколын зөрүүг заасан нь 691 алдаа тул энэ нь таныг огт өөр газар руу илгээдэг.

Нууц үгэнд хүрэхээс өмнө тээврийн ажил хий. 807-г хөөж итгэмжлэлийг өөрчлөх нь жинхэнэ гэмтлийг байранд нь үлдээж, дараагийн оролдлогыг уншихад хэцүү болгоно.

Хоёр дахь клиент ажиллаж буй туннелийг яагаад эвддэг

Тэднийг ялгах порт байхгүй тул NAT төхөөрөмж хоёр HTTPS сессийг ялгадаг шиг хоёр PPTP клиентийг ялгаж чадахгүй. Тиймээс олон хэрэглэгчийн төхөөрөмж нэг PPTP дуудлагыг зөвшөөрч, эх хаягаар нь хянадаг. Ганцаараа ажиллаж байсан зөөврийн компьютер хоёр дахь машин дуудмагц гүйцээхээ болино, клиентийн талаас алдаа нь санамсаргүй мэт харагдана. Энэ хэв маяг нь програм хангамжид хамаарах бөгөөд ямар ч профайлын өөрчлөлт үүнийг өөрчлөхгүй.

Хоёр клиент дуудаж байх үед холболтын хүснэгтийг ажиглаарай. Зөвхөн эхний хост үргэлж буулгалт барьж байгаа бол маршрутлагч дэмжлэгийнхээ хязгаарт хүрсэн бөгөөд клиентийн ямар ч тохиргоо үүнийг хөдөлгөхгүй.

Аль хагас нь бүтэлгүйтэж байгааг нотлоорой

Маршрутлагч дээр ямар нэгэн зүйл өөрчлөхөөс өмнө TCP 1723 ирж байгааг бататгаарай, учир нь тэр хариулт аль хагасыг шалгаж байгааг чинь тодорхойлно. Эдгээрийг Windows клиентээс өөрийн серверийн нэр рүү ажиллуул. Эхнийх нь порт хариулсан эсэхийг хэвлэдэг, хоёр дахь нь ярилцлагагүйгээр дууддаг нь давтан оролдлогуудыг харьцуулах боломжтой болгоно.

Test-NetConnection vpn.example.com -Port 1723
rasdial "Work VPN"

Портын шалгалтад үнэн үр дүн гарах нь удирдлагын суваг нээлттэй, GRE нь үлдсэн сэжигтэн гэсэн үг. Худал үр дүн гарах нь маршрутлалт, шүүлтүүр эсвэл дамжуулалт эвдэрсэн гэсэн үг бөгөөд GRE-ийн ямар ч өөрчлөлт үүнийг аварч чадахгүй. Мэдээллийн талыг харагдах газарт нь, серверт эсвэл маршрутлагч дээр ажиглах ёстой.

tcpdump -ni any proto 47

Wireshark дахь тэнцэл нь ip proto 47 харуулах шүүлтүүр бөгөөд командын мөрөнд тав тухгүй хүнд өгөхөд хялбар. Хариултад юу ч гарахгүйгээр GRE ирвэл буцах замыг засах шаардлагатай гэсэн үг.

Алдааг үнэхээр юу засдаг вэ

Маршрутлагч тохиргоог харуулдаг газарт PPTP дамжуулалтыг асаах, эсвэл дүрэм хүлээн авдаг програм хангамж дээр 47 протоколыг тодорхой зөвшөөрөх хэрэгтэй. RouterOS дээр дамжуулалтын дүрэм протоколыг шууд тааруулдаг бөгөөд портод суурилсан дамжуулалт үүнийг хэзээ ч хийж чадахгүй байсан. Хэрэглэгчийн програм хангамж ихэвчлэн мөн тэр шийдвэрийг чекбоксны ард нуудаг, заримдаа портын дамжуулалтын дор биш, аюулгүй байдлын тохиргооны дор. Хэрэв ийм хяналт байхгүй бол клиент дээр юу ч үүнийг нөхөхгүй.

/ip firewall filter add chain=forward protocol=gre action=accept
/ip firewall filter print where protocol=gre

PPTP-г солих нь өөр сонголт бөгөөд ихэвчлэн хямд. VPN-ийг өөрөө дуусгадаг маршрутлагч орж ирж буй клиентүүдэд давхар NAT-аас зайлсхийж, портод суурилсан NAT аль хэдийн шийддэг протоколд дамжуулалт огт шаардлагагүй: UDP дээр OpenVPN, TCP 443 дээр SSTP эсвэл ESP-г UDP 4500 дотор боодог NAT-T-тэй L2TP/IPsec. PPTP нь MS-CHAPv2-оос ч хамааралтай бөгөөд түүний баримтжуулсан сул талууд алдаа арилсны дараа ч үүнийг шинэ суулгалтад муу сонголт болгодог.

Аль дүрэм ялгаа гаргасныг бичиж үлдээгээрэй, учир нь хоёр дахь хэрэглэгч нэвтрэх эрх хүсэх үед мөн тэр сайт мөн тэр хязгаарт тулгарах болно. Протоколын түвшний засвар сүлжээний тэмдэглэлд байх ёстой, дараагийн инженер тэнд харна.

Холбоотой нийтлэлүүд