Хүчинтэй нэг удаагийн код VPN-д нэвтрэхэд яагаад бүтэлгүйтдэг вэ
Татгалзсан код нь ихэвчлэн хүсэлтийн дараалал, бүртгэл эсвэл цаг хугацааны асуудал бөгөөд буруу код биш. Ямар нэг зүйлийг дахин бүртгэхээс өмнө эдгээрийг дарааллаар нь шалгаарай.
Та VPN клиентийг нээж, нууц үгээ бичээд, баталгаажуулагчийн зургаан орон буруу гэж буцаж ирнэ — хоёр удаа, дараа нь гурав дахь удаагаа. Бүртгэлд өчигдрөөс хойш юу ч өөрчлөгдөөгүй тул эхний зөн совин баталгаажуулагч дахь бичлэгийг устгаж дахин скан хийх байдаг — ихэвчлэн энэ нь буруу засвар юм. Нэг удаагийн код нь хоёр дахь нууц үг биш: гарц түүнийг тодорхой алхамд, тодорхой бүртгэгдсэн бичлэгээс, тодорхой цонхны дотор асуух ёстой бөгөөд ихэнх татгалзал тоонуудыг харьцуулахаас өмнө тохиолддог. Бүртгэлд хүрэхээс өмнө та аль алхамд байгаагаа тодорхойлоорой.
Хүсэлтүүдийн дараалал таны урсгалыг хэлж өгнө
Код агуулсан бараг бүх VPN нэвтрэлт гурван хэлбэрт багтдаг. Хоёр алхамт хэлбэрт клиент нууц үгээ илгээж, сервер сорилт гаргаж, клиент дахин асууна. Хосолсон хэлбэрт гарц нууц үг болон кодыг нэг илгээлтэд шаарддаг — заримдаа холбосон, заримдаа зөвхөн оператор баримтжуулсан тусгаарлагчийн дараа. Хөтчийн хэлбэрт клиентэд талбар огт байхгүй: код вэб хуудас руу ордог, эсвэл push зөвшөөрөл түүнийг орлуулж, ширээний клиент үр дүнг хүлээнэ.
Буруу хэлбэр нь муу код шиг харагдана. Зөвхөн нууц үгэнд зориулсан талбарт шинэ код наавал сервер түүнийг нууц үгийн хэсэг гэж уншина. Клиентийн талд OpenVPN 2.4 болон дараагийн хувилбарууд ялгааг харагдуулна: AUTH_FAILED,CRV1:-ээр хариулах сервер сорилтын хариулт хүлээж байгаа тул профайлд static-challenge эсвэл SCRV1: хэлбэрийн нууц үгийн файл хэрэгтэй. Зөвхөн auth-user-pass бүхий хуучин профайл нууц үгийг баталгаажуулаад зогсдог нь лог дээр OTP алдаа мэт харагддаг ч ямар ч код илгээгдээгүй.
WireGuard-ыг үл хамаарах зүйл гэж нэрлэх нь зүйтэй: энэ нь хүмүүсийг биш, түлхүүрийн хосыг баталгаажуулдаг тул кодны талбар байхгүй. Үйлчилгээ үзүүлэгч ийм зүйл зарлавал түүнийг туннелийн гаднах зүйл хүлээж авдаг.
Сервер зургаан оронгоор юу хийдэг вэ
Цаг хугацаанд суурилсан коднууд RFC 6238-ыг дагадаг бөгөөд энэ нь RFC 4226 дахь хуучин тоолуурт суурилсан бүтцийг боож өгдөг: хөдөлгөөнт хүчин зүйл дээрх HMAC, анхдагчаар зургаан орон болгон таслагдана. TOTP-д хөдөлгөөнт хүчин зүйл нь одоогийн Unix цагийг алхамд хуваасан утга, оператор өөрчлөөгүй бол 30 секунд. Шалгагч таны тоонуудыг хадгалсан утгатай хэзээ ч харьцуулдаггүй; олны seed-ээс хүлээгдэж буй кодыг дахин тооцоолдог бөгөөд ихэвчлэн зэргэлдээ алхмуудыг ч хүлээн авдаг тул удаан явдал нэвтрэлтийг бүтэлгүйтүүлэхгүй.
Хоёр үр дагавар анзаарагдахгүй өнгөрдөг. Утасны цагийн бүс хамаагүй, учир нь seed нь орон нутгийн цагийг хэзээ ч хардаггүй — зөвхөн бодит UTC-ээс хазайлт л чухал бөгөөд хоёр минутаар түргэлсэн төхөөрөмж цэвэр тоолуурыг харуулж байхдаа бүх кодонд бүтэлгүйтдэг. Мөн код нь зохион бүтээмжээрээ нэг удаагийн: шалгагч тухайн seed-д хамгийн сүүлд хүлээн авсан тоолуурын утгыг санадаг тул ижил тоонуудыг дахин илгээвэл ижил цонхны дотор ч татгалзана. Хугацаа дууссаны дараа дахин оролдсон клиент саяхан илгээсэн кодоо шатааж болно.
Тоолуурт суурилсан токенууд дарах бүрт тоолуураа хөдөлгөдөг тул код үүсгэгдсэн ч хэзээ ч илгээгдээгүй тохиолдолд синхроноос гардаг; ердийн засвар нь урагш хэдэн утгыг хүлээн авдаг дахин синхрончлолын цонх юм. Оператор HOTP бүртгэсэн бол таны апп TOTP харуулж байвал утга бүр цагийн асуудал мэт харагдахаар буруу байна. QR кодын ардах бэлтгэлийн URI нь төрөл, тоо, хугацаа, хэшийг нэрлэдэг.
Буруу код мэт харагдах бүтэлгүйтлүүд
Хамгийн түгээмэл буруутан нь бүртгэгдсэн бичлэг юм. Баталгаажуулагч аппууд бичлэгүүдийг гаргагч болон бүртгэлээр шошгодог тул нэг VPN дээр хоёр таних тэмдэгтэй хүн шошго нь нэг тэмдэгтээр ялгаатай хоёр бичлэгтэй болж болно. Код нь түүнийг үүсгэсэн seed-д хүчинтэй бөгөөд өөр юунд ч биш. Утасны шошгыг серверийн бүртгэдэг хэрэглэгчийн нэртэй харьцуулаарай, та бичсэн гэж санаж байгаа зүйлтэй биш.
Хоёр дахь нь тохирохгүй параметрийн багц. Найман орон, 60 секундын хугацаа эсвэл SHA-256-аар бүртгэгдсэн seed нь зургаан орон, 30 секунд, SHA-1 хүлээж буй шалгагч татгалздаг кодуудыг өгдөг бөгөөд клиент дээр үүнийг буруу кодаас ялгах боломжгүй. Энэ нь QR кодын зурагнаас бичлэгийг дахин нэмсэн эсвэл токены бичлэгийг анхдагч утгуудаар дахин барьсан шилжилтийн дараа илэрдэг.
Гурав дахь нь кодын тухай биш. Гарцууд ихэвчлэн буруу нууц үг, хугацаа дууссан код, идэвхгүй бүртгэлд нэг ерөнхий баталгаажуулалтын алдаа буцаадаг, санаатайгаар, хэн ч аль хүчин зүйл бүтэлгүйтсэнийг олж мэдэхгүйн тулд. Клиентийн баннерын оронд гарц эсвэл RADIUS-ын лог уншина уу: хэзээ ч гаргаагүй сорилт, OTP шинжгүй хандалтын татгалзал, бодлогын татгалзал дэлгэц дээр ижил харагдаж, өөр өөр дараагийн алхамд хүргэдэг.
Үүнийг нарийсгах богино дараалал
Хамгийн хямд шалгалтаас эхэлж, тогтдоггүй эхний алхамд зогсоорой.
- Шинэ код хүлээж, нэг удаа илгээж, сорилт нууц үг хүлээн авахаас өмнө эсвэл дараа гарч байгааг тэмдэглээрэй.
- Баталгаажуулагч дахь шошгыг серверийн хадгалдаг хэрэглэгчийн нэртэй тааруулаарай.
- Профайл сорилтод хариулж чадах эсэхийг баталгаажуулаарай, дээрх
CRV1тохиолдол шиг. - Төхөөрөмжийн цагийг мэдэгдэж буй цагийн эх сурвалжтай харьцуулаарай; хэдэн арван секундээс хэтэрсэн хазайлт TOTP-г өөрөө эвддэг.
- Токен TOTP эсвэл HOTP эсэх, ямар тоо, хугацаа, хэш бүртгэгдсэнийг оператороос асуугаарай.
Хоёр дүрэм үүнийг улам дордуулахаас сэргийлдэг. Олон удаа дахин оролдох хэрэггүй: олон гарц бүртгэл тус бүрийн бүтэлгүйтлийг тоолж, түүнийг түгжих эсвэл хариултыг хойшлуулж эхэлдэг тул огцом оролдлого жижиг тохиргооны алдааг дэмжлэгийн тикет болгоно. Мөн токеныг оношлогоо гэж дахин бүртгэх хэрэггүй, учир нь энэ нь хуучин seed-ийг хүчингүй болгодог; хэрэв бодит гэмтэл клиентийн хэзээ ч илгээгээгүй сорилт байсан бол одоо нэг биш хоёр өөрчлөлтийг тайлбарлах хэрэгтэй.
Seed болон сэргээх кодыг тойрмоос гадуур байлгаарай
Зургаан орон болон тэдний цаанаах нууц нь харилцан солигддоггүй. Бэлтгэлийн QR код эсвэл Base32 seed нь бүртгэлийн бүх ирээдүйн кодыг үүсгэдэг тул нууц үгтэй ижил ангилалд ордог: дэлгэцийн зурагт биш, тикетийн сэтгэгдэлд биш, хамгийн түрүүнд тантай холбогдсон хүнтэй чатад ч биш. Сэргээх кодууд нь тусдаа механизм — нэг удаагийн, ихэвчлэн кодын хүсэлтийг бүрмөсөн алгасдаг, бүртгэлийг шалгахын тулд нэгийг зарцуулбал дараа нь хэрэгтэй болж болох нөөц замыг устгана.
Код нь нэвтрэх хуудсыг итгэмжлэгдсэн болгодоггүй: төстэй домэйн дээрх OTP хүсэлт хүчинтэй код цуглуулж, цонхны дотор дахин тоглуулдаг бөгөөд хаана бичиж байгааг чинь гэрчилгээ л хэлсээр байна.
Дараалал сорилтод хариулж чадахгүй профайл дээр дуусвал профайлыг засаж, нэг шинэ кодоор дахин шалгаарай. Тохирохгүй бүртгэлийн параметр дээр дуусвал хэн нэгэн ямар нэг зүйлийг скан хийхээс өмнө оператороос токены бичлэгийг уншиж өгөхийг хүсээрэй. Түгжрээ дээр дуусвал клиентийг солихын оронд дуусахыг нь хүлээнэ үү — саад нь бүртгэлийн төлөв, апп биш.