SMB хуваалт зөвхөн VPN-ээр ажиллахгүй: гарын үсэг эсвэл дэд сүлжээний зөрчил?
LAN-д ажилладаг хуваалт зөвхөн туннелээр дамжин бүтэлгүйтэж болно. Гарын үсгийн татгалзал, давхцсан дэд сүлжээ, хуучин SMB сессийг тусгаарлана.
Оффис дээр ажиллаад гэртээ хугацаа хэтэрдэг холбосон диск өөрөө бараг ямар ч хэрэгтэй мэдээлэл өгөхгүй. Туннел пакетуудыг тодорхой зөөж байна, эс бөгөөс серверт юу ч хүрэхгүй байсан. Бүтэлгүйтсэн зүйл гурван давхаргын нэгэнд байна: нэр буруу хаяг руу шийдэгдсэн, клиент сессийг гарын үсэг зурахаас татгалзсан, эсвэл хуучин сесс түүнийг зөөж явсан холболтоос илүү удаан амьдрав. Тус бүр өөр засвартай бөгөөд гурвын хоёр нь клиентийн талд байна.
Гурван гэмтэл нэг алдааг өмсдөг
Дискийн үсэг аль давхарга эвдэрснийг хэлэхгүй бөгөөд алдааны текст ихэвчлэн гурвуулаа тохирох ерөнхий байдаг. Хоёр хурдан асуултаар тэдгээрийг тусгаарла: сервер өөрийн IP хаягаар хариулж байна уу, 445 порт холболт хүлээж авч байна уу?
Тэдгээр хариулт нь таамаглалын оронд шийдвэрийн хүснэгт өгдөг. IP ажиллаж нэр ажиллахгүй бол энэ нь нэрийн шийдэл рүү заана. Хоёулаа ажиллаж нэвтрэлт татгалзагдвал энэ нь гарын үсэг рүү заана. Хоёулаа ажиллаж туннелийн тасалдалын дараа файл уншилт дүүжлэгдвэл энэ нь хуучин сесс рүү заана.
| Symptom | Layer to inspect |
|---|---|
| IP works, hostname times out | DNS or subnet overlap |
| TCP 445 opens, logon refused | SMB signing policy |
| Hangs after reconnect | Session state and timers |
Тэдгээрийг тэр дарааллаар гүйцэтгэ, учир нь буруу хост руу шийдэгдсэн нэр дараагийн бүх шалгалтыг утгагүй болгоно.
Хуваалтад хүрэхээс өмнө нэрийг шийд
Хэрэв сервер өөрийн хаягаар хариулж, хуваалтын нэр хугацаа хэтэрвэл туннел ажлаа хийж байгаа бөгөөд клиент буруу газраас хайж байна. Алсын хандалтад үүний ихэнхийг хоёр шалтгаан тайлбарладаг.
Эхнийх нь хаягийн давхцал. Оффис 192.168.70.0/24 ашиглаж, гэрийн чиглүүлэгч ижил мужийг олгож байвал 192.168.70.20 руу шийдэгдэх хост нэр туннелийн ард байгаа серверийн оронд локал төхөөрөмж рүү зааж болно. Дараа нь Windows хүсэлтийг локалаар илгээх, маршрутыг татгалзах, эсвэл тэр хаягтай принтер рүү шийдэж болно. Засвар нь нэг талыг дахин дугаарлах бөгөөд өөр маршрут нэмэх биш.
Хоёрдах нь DNS-ийн хүрээ. Дотоод DNS сервергүй, эсвэл туннелээр хүрэх боломжгүй сервертэй VPN адаптер богино нэрсийг нийтийн шийдэгч рүү явуулдаг. Адаптерын DNS бичлэгүүдийг уншаад хуваалтад хүрэхээс өмнө дотоод нэрийг шууд асуу:
> ipconfig /all | findstr /i "DNS Servers"
> nslookup files.corp.internal
Server: 10.90.0.2
Address: 10.90.0.2
Name: files.corp.internal
Address: 10.90.0.15
Хэрэв энэ асуулт хүлээгдэж буй хаягийг буцаавал нэрийн шийдэл тодорхой болж, асуудал стек дотор өндөрт байна.
Хоёр үзүүрт гарын үсгийн шаардлагыг унш
Хүрч болох сервер бүх нэвтрэлтийг татгалзвал энэ нь сүлжээний гэмтэл биш, бодлогын зөрчлийн шинж юм. Windows клиент дээр SMB гарын үсэг шаардаж болох бөгөөд гарын үсэг зурдаггүй сервер эсвэл NAS туннел хичнээн эрүүл байсан ч сессийг дуусгаж чадахгүй.
Клиентийн тохиргоог бодлогын засварлагчаас хайхгүйгээр уншиж болно:
> Get-SmbClientConfiguration | Select-Object RequireSecuritySignature
RequireSecuritySignature
-------------------------
True
> Get-SmbConnection
Серверийн талын харгалзах утга нь серверийн SMB тохиргоонд байх бөгөөд хоёулаа тохирох ёстой. Мэдээлэгдсэн нэг тохиолдолд клиент дээр шаардлага нь локал бодлогоор асаалттай байхад сервер огт гарын үсэг зураагүй; үүнийг унтрааж gpupdate /force ажиллуулахад хуваалт шууд сэргэв. Энэ нь шалтгааныг батлах оношлогооны алхам бөгөөд байнгын засвар биш.
Сервер дэмждэг газарт хоёр үзүүрт гарын үсгийг асаахыг илүүд үз. Хуваалт ажиллахын тулд аюулгүй байдлын тохиргоог өөрчлөхийг өмнөх утга, шалтгааны хамт бүртгэх ёстой, ингэснээр дараагийн аудитад хэн ч үүнийг дахин нээх шаардлагагүй болно.
Таймеруудыг тохируулахын өмнө хуучин сессийг цэвэрлэ
Зөвхөн VPN унаж дахин холбогдсоны дараа дүүжлэгддэг хуваалт ихэвчлэн серверийн аль хэдийн хаясан сессийг барьдаг. Сервер идэвхгүй SMB сессүүдийг LanmanServer\Parameters доорх Autodisconnect таймераар хаадаг бөгөөд анхдагчаар 15 минут байдаг бол клиент өөрийн SessTimeout-г LanmanWorkstation\Parameters доор агуулдаг. Эдгээр утгаас урт тасалдал хоёр үзүүрийг сессийн талаар өөр ойлголттой үлдээдэг.
Үр дүн утга учиртай байхын тулд тогтмол дарааллаар давта: туннелийг холбо, хуваалтыг нээ, туннелийг хоёр минутын турш тасла, сэргээ, дараа нь файл уншихыг оролд. Хэрэв холболт өөрөө сэргэвэл таймеруудыг орхи. Дахин холбох хүртэл дүүжлэгдвэл, туннел боссны дараа хуваалтыг дахин холбо, байхын өмнө холбохын оронд, мөн холболтын туслах дахин оролдож байгаа эсэхийг шалга.
Хугацааны хязгаарыг өсгөх нь тогтворгүй холболтод боломжийн эцсийн алхам боловч шинж тэмдгийг эмчилдэг. Серверийн мартсан сессийг илүү удаан хүлээж буй клиент гарцаагүй хүлээсээр байна.
Холболтоор нэг файл уншиж, дараа нь туннелийг дахин нэг удаа тасалж сэргээж дуусга. Тэр хүлээн авах шалгалт гурван давхаргыг зэрэг хамардаг бөгөөд хэрэглэгчийн бодитоор хийдэг зүйлтэй нийцэх цорын ганц шалгалт юм.