Өнгөрсөн долоо хоногт хэрэглэгч VPN-д нэвтэрч чадсан ч юу ч шийдэгдэхгүй сүлжээнд оров. Клиент холбогдсон гэж хэлсэн, гарцын лог Access-Accept гэж хэлсэн, таних тэмдгийн баг бүртгэл хэвийн гэж хэлсэн. Нэвтрэлт ажилласан; түүний ард байгаа зөвшөөрөл ажиллаагүй. VPN нэвтрэлт бүтэлгүйтэх үед би хүсэлт бодитоор явдаг замаар явна — клиент, гарц, RADIUS сервер, таних тэмдгийн үйлчилгээ үзүүлэгч — дараагийнхаа санал нийлэхгүй эхний алхам дээр зогсоно.

Клиент хэзээ ч RADIUS хэлээр ярьдаггүй

Зөөврийн компьютерийн апп юу харуулсан ч түүний эхний алхам нь VPN протокол: IKEv2, OpenVPN, WireGuard эсвэл TLS-д суурилсан клиент. RADIUS энэ солилцоонд харагдахгүй. Клиент гарцад гэрчилгээ, хэрэглэгчийн нэр, нууц үг эсвэл туннелийн тохиргоонд дамжуулагдах EAP аргаар баталгаажуулна.

Лог уншихад энэ чухал, учир нь хэрэглэгчийн хардаг ерөнхий баталгаажуулалтын алдааг гарц өөр зүйлтэй ярьсны дараа үүсгэдэг. Хэрэв клиент гарцад хэзээ ч хүрэхгүй бол дибаг хийх RADIUS хүсэлт байхгүй бөгөөд RADIUS сервер дээр өнгөрүүлсэн нэг цаг дэмий. Backend-д хүрэхийн өмнө туннель ер нь боссон эсэхийг баталгаажуулна уу.

Гарц нь RADIUS клиент

Туннелийн тохиргоо нэвтрэх мэдээллийг шалгах шаардлагатай цэгт хүрмэгц гарц нь сүлжээний хандалтын сервер болно. Энэ нь Access-Request үүсгэнэ: User-Name, нууц үг эсвэл EAP ачаалал, NAS-IP-Address эсвэл NAS-Identifier, арга шаардсан үед Message-Authenticator. Хүсэлт анхдагчаар UDP 1812 руу, нягтлан бодох бүртгэл 1813 руу явна. Хуучин байршуулалт 1645, 1646-г ашиглас хэвээр байгаа тул нэг хосод зориулсан галт ханын дүрэм олон чимээгүй алдааг тайлбарладаг.

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

Протокол жижиг бөгөөд хуучин — RFC 2865 баталгаажуулалтын солилцоог тодорхойлдог — гэхдээ түүний зөөдөг шинж чанарууд нь ихэнх VPN бодлогын суурь юм.

# ask the RADIUS server directly, from the gateway host
radtest alice 'test-password' 127.0.0.1 0 testing123

# watch the exchange the gateway actually sends
tcpdump -ni any -c 20 'udp port 1812'

RADIUS сервер зөвхөн таних тэмдгийн үйлчилгээ үзүүлэгчийн урд тал байж болно

Хүмүүс RADIUS ба таних тэмдгийн үйлчилгээ үзүүлэгчийг нэг хайрцаг мэт ярьдаг. Ихэнхдээ тийм биш. RADIUS сервер Access-Request хүлээн аваад хариу өгөхийн өмнө өөр зүйлээс асуудаг — LDAP эсвэл Kerberos-оор дамжуулан Active Directory, локал хэрэглэгчийн файл эсвэл гадаад үйлчилгээ. LDAP эсвэл krb5 модультай FreeRADIUS, Windows NPS болон Cisco ISE бүгд энэ байрлалд зогсож байна.

Энэ ялгаа нь хаанаа харахыг шийднэ. Татгалзсан нууц үг нь RADIUS дамжуулдаг таних тэмдгийн үйлчилгээ үзүүлэгчийн хариулт юм. Хугацаа дуусах нь ихэвчлэн RADIUS-аас каталог хүртэлх хэсэг: хугацаа дууссан bind бүртгэл, хүрэх боломжгүй каталог эсвэл буруу backend руу илгээсэн хүсэлт. Хэрэглэгчийн нэр домэйн дагавартай бол сервер түүгээр чиглүүлж болох бөгөөд CORP\alice болон [email protected] гэж илгээсэн ижил бүртгэл өөр өөр газарт оч болно. Windows NPS-д Security лог зөвшөөрөлд 6272, татгалзалд 6273 бүртгэдэг нь шийдвэр NPS-ээс ер нь ирсэн эсэхийг хэлнэ.

Алдааг үүсгэсэн алхам дээр нь уншина уу

Нэг холбогдож чадахгүй гэсэн мессеж дөрвөн өөр алдааг хамардаг. Ямар нэг зүйлийг өөрчлөхийн өмнө шинж тэмдгийг түүнийг үүсгэсэн алхамтай тааруулна уу.

What you seeWhere it comes fromFirst check
Gateway timeout, no replyShared secret mismatch, UDP 1812 blocked, unknown NAS, wrong server addresstcpdump at the gateway; radtest from the gateway host
Immediate rejectCredentials, account state, domain suffix, RADIUS policyNPS 6273 or the FreeRADIUS auth log; test the account directly
Repeated challenge or MFA loopAccess-Challenge state not returned, or a token that expired mid-flowClient prompt timing and the State attribute in debug output
Accept, then no accessAuthorization attributes unmapped, wrong pool, route or ACL policyGateway policy and the attributes in the Access-Accept

Сүүлийн мөр нь хүмүүсийг буруу баг руу илгээдэг мөр юм. Access-Accept гэдэг нь нэвтрэх мэдээлэл хүлээн авсан гэсэн үг; гарц хэрэглэгчийг зөв pool-д байрлуулсан эсвэл маршрутуудыг түлхсэн гэсэн үг биш. Бүлгийн шинж чанарууд нь гарцын бодлого тэдгээрийг уншсан тохиолдолд л чухал. Зөв нэвтрэлт зочны pool-д унасныг би харсан, учир нь RADIUS талд бүлгийн зураглал нь гарцын шалгадаг шинж чанараас өөр шинж чанарт тохируулагдсан байв.

Нэг нэвтрэлтийг эхнээс нь дуустал нь дагана уу

Нэг туршилтын бүртгэл, нэг гарц сонгоод, мөн тэр оролдлогыг дөрвөн цэгт ажиглана уу. RADIUS талд дибаг ажиллуулж эхэлнэ үү — freeradius -X нь хүсэлт болон хүрэх бүх модулийг хэвлэдэг — гарцын баталгаажуулалтын логийг дагаж, UDP солилцоонд tcpdump ажиллуулна уу. Нэг удаа холбогдоод дөрвөн мөрийг дарааллаар нь уншина уу.

Таны хармаар байгаа зүйл бол санал нэгдэл: гарц таны хүлээсэн хэрэглэгчийн талаар асуусан, RADIUS сервер таны хүлээсэн backend-ийг сонгосон, тэр backend шийдвэр буцаасан, хариулт дахь шинж чанарууд гарцын хэрэгжүүлдэг бодлоготой нийцэж байна. Мөрүүд анх зөрөх газар нь таны гэмтлийн шугам. Хэрэв хариулт бүлгийн шинж чанар агуулаагүй бол асуудал VPN профайлд биш, RADIUS талд байна; шинж чанар байгаа ч гарц үүнийг үл тоомсорловол асуудал гарцын бодлого юм.

Тэнд байхдаа нэг аюулгүй байдлын тэмдэглэл. Хамтын нууц солилцоог хамгаалдаг ч ихэнх шинж чанарыг шифрлэдэггүй. Гарц болон RADIUS сервер өөр сегментэд байвал тэр алхмыг TLS дээгүүр RADIUS эсвэл хувийн замд тавина уу. Шифрлэгдсэн хэрэглэгчийн туннель backend холбоосын талаар юу ч хэлэхгүй.

Тасалбарыг хаахаас өмнө дөрвөн зүйлийг баталгаажуулна уу. Гарц нь үнэхээр тохируулагдсан порт дээр RADIUS серверт хүрч чадна. Хамтын нууц хоёр талд таарна. RADIUS сервер гарцын илгээдэг хэрэглэгчийн нэрний яг хэлбэрийг шийднэ. Хүлээн авалт нь гарцын бодлогод хэрэгтэй шинж чанаруудыг агуулна. Дөрөв нь биелбэл, дараа нь ч бүтэлгүйтэж буй нэвтрэлт нь баталгаажуулалтын бус, гарцын бодлогын асуудал юм.

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