8192 битийн түлхүүрүүд гар барилтыг саатуулж, 1024 битийн DH татгалзагдана
Эсрэг засвартай хоёр хэмжээний алдаа: хэт том түлхүүр нөгөө талын хугацаа дуустал гар барилтын цагийг шатааж, жижиг DH бүлэг эхлэхээс өмнө татгалзагдана.
Нэг сервер дээр клиентүүд хэсэг хугацаанд гацаж дараа нь дахин холбогддог, нөгөө нь түлхүүрийн хэмжээний тухай мессежтэй холболтыг шууд татгалздаг. Тэд өөр өөр алдаа мэт харагдах боловч энэ нь эсрэг чиглэлд заасан нэг л алдаа. Гар барилтын криптографи нь параметрийн хэмжээтэй хамт өсдөг зардалтай бөгөөд орчин үеийн сангууд доош орохгүй доод хязгаартай. Материалын хэмжээг тодорхойлох нь шалгах хуудас бөгөөд эхний зүйл нь хоёр алдааны алийг нь танд үнэхээр байгааг шийдэх явдал.
Ямар нэг зүйлийг дахин үүсгэхээс өмнө алдааг уншаарай
Цаг хугацаа танд ихэнхийг нь хэлнэ. Хэдэн секунд үргэлжилж дараа нь үхдэг гар барилт нь ихэвчлэн тооцоолол нөгөө талын тэвчээрийг давсан гэсэн үг бөгөөд энэ нь техник хангамж эсвэл хугацааны хязгаарт хэт том параметрүүдийг заана. Түлхүүр эсвэл бүлгийн хэмжээг нэрлэсэн шууд татгалзал нь нөгөө чиглэлд, сан огт хүлээж авахгүй материал руу заана.
Эдгээр хоёрт эсрэг засвар хэрэгтэй бөгөөд энд л ихэнх оролдлого буруу явдаг. Жижиг бүлгийг аль хэдийн татгалзсан клиент дээр 8192 битийн параметрийг дахин үүсгэх нь удаан тохиолдлыг муутгаж, хурдан тохиолдолд юу ч хийхгүй. Файлд хүрэхээс өмнө ямар шинж тэмдэг харснаа бичиж аваарай.
Дараа нь нөгөө талаас юу шаардаж байгааг шалгаарай. Том төгсгөлт талбарын бүлэгт тохируулсан сервер клиент бүрийг зөвхөн холбогдох үед төдийгүй дахин хэлэлцэх бүрд ижил процессорын цаг зарцуулахыг албаддаг. Асуудал эхлэх үед биш, тогтмол завсарт гарч байвал тэр завсар нь аль тохиргоо үнэтэйг заах хүчтэй дохио. Дахин хэлэлцэх нь бүх тооцооллыг давтаж, цаг тутамд давтагдах гацалт нь ихэвчлэн ижил зардлыг дахин төлөх явдал.
Удаан тохиолдол: техник хангамж тэвчихгүй материал
Diffie-Hellman болон RSA-ийн ажил түлхүүрийн хэмжээтэй хурдан өсөж, энэ бүхэн туннелээр ямар ч урсгал урсахаас өмнө болдог. Жижиг чиглүүлэгч эсвэл бага чадлын клиент дээр хангалттай том бүлэг солилцоог нөгөө талын хугацаанаас хэтрүүлж, холболт дахин оролдох эсвэл ямар ч алдаагүй гацсан мэт харагдана.
Засвар нь нөгөө тал бүр дэмждэг, төхөөрөмж бүр тав тухтай тооцоолж чадах хэмжээнд буух явдал. 2048 битийн RSA түлхүүр болон 2048 битийн бүлэг нь өргөн нийцтэй суурь шугам хэвээр байна; илүү том нь бүх тал зөвшөөрч, процессор дахин хэлэлцэх бүрд төлж чадвал л тусална. Тухайн суурь шугамаас дээш бүхэн санаатай хийсэн солилцоо, шинэчлэл биш.
Хэмжээ бол оноо биш, харьцуулалтын хүснэгтийн хамгийн том тоо автоматаар зөв сонголт биш. Бодлого тань зөвшөөрч, бүх нөгөө тал хүлээж авах хамгийн бага утгыг сонгоод, сайжирсан гэж таамаглахын оронд гар барилтыг хэмжинэ. Хугацаанаас хэтрэх жижиг бүлэг нь хэмжээ хэзээ ч бүх түүх байгаагүйг хэлнэ.
Хурдан тохиолдол: сангийн татгалздаг бүлэг
Орчин үеийн OpenSSL хувилбарууд хамгийн бага төгсгөлт талбарын бүлгийг шууд татгалздаг бөгөөд өргөгдсөн аюулгүй байдлын түвшин доод хязгаарыг улам дээш түлхдэг. Арван жилийн параметрийн файлыг дагуулдаг чиглүүлэгчийн програм хангамж нь ердийн эх сурвалж бөгөөд шинж тэмдэг нь бүлэг эсвэл түлхүүрийн хэмжээг нэрлэсэн мессежтэй шууд бүтэлгүй болох холболт. Тэр бүтэлгүйтэлд ямар ч зүйл завсарлагатай биш бөгөөд энэ нь түүнийг амархан таних боломж олгодог.
Шалгалтыг тойруулахын тулд тохиргоог засахын оронд файлыг солино уу. Одоогийн бүлгийг үүсгэж, баталгаажуулаад, дараа нь демон үнэхээр уншдаг газарт суулгана уу. Клиент шинэ файлаар амжилттай холбогдох хүртэл хуучин файлыг хадгал:
openssl dhparam -out /etc/openvpn/ffdhe2048.pem 2048
openssl dhparam -in /etc/openvpn/ffdhe2048.pem -check -noout
ls -l /etc/openvpn/ffdhe2048.pemШалгах команд файлыг баталгаажуулж, тэнцсэн үедээ ямар ч ашигтай зүйл хэвлэхгүй; жагсаалт нь үйлчилгээний ачаалдаг файлыг солисныг, хажууд байгаа хуучин хуулбарыг биш гэдгийг батална. Тохиргоог тэр зам руу чиглүүлж, демоныг дахин эхлүүлж, өмнө нь бүтэлгүй болж байсан клиент одоо гар барилтыг дуусгаж байгааг батална уу.
Сервер аюулгүй байдлын түвшин эсвэл гэрчилгээний профайлыг мөн тогтоодог бол бүлэг буруу байсан гэж дүгнэхээс өмнө тэдгээрийг уншаарай. Илүү хатуу анги шаарддаг профайл нь анхдагч хүлээж авах байсан материалыг татгалзаж болох бөгөөд тэр тохиргоог хасах нь шалгалтыг бүхэлд нь унтраахаас илүү нарийн өөрчлөлт.
Нөгөө тал болон техник хангамжид хэмжээ сонго
Экзотик зүйл үүсгэхээс өмнө холын тал юуг тэвчихийг мэдэж аваарай. 2048 битийн бүлэгт хэт хуучин төхөөрөмж нь солих төхөөрөмж, учир нь серверийг сул бүлэг рүү чиглүүлэх нь нийцтэй байдлын гомдлыг зөвхөн саатал болгоно. Бат бөх засвар нь хуучин параметр рүү биш, шинэ програм хангамж руу чиглэдэг. Энэ салбарын түр зуурын үл хамаарах зүйл бүр байнгын тохиргоо болох аргатай.
Серверийн процессор хязгаар болж байгаа бол бодлогын доогуур орохын оронд алгоритмыг соль. X25519 зэрэг эллипс муруйн түлхүүр солилцоо нь том төгсгөлт талбарын бүлгээс хамаагүй хямд бөгөөд өргөн дэмжигддэг тул гүйцэтгэлийн гомдолд жижиг RSA модулиас илүү сайн хариулт болно.
Юу ч сонгосон, нэг бодит холболтоор турших ба гар барилт хэр удаан үргэлжлэхийг ажигла, эцэст нь холбогдох эсэхийг л биш. Арван хоёр секундэд амжилттай болох холболт нь арван тавд бүтэлгүй болох холболттой ижил үндсэн шалтгаантай.
Дахин бүтээх нь цуцалж чадахгүйн тулд сонголтоо тэмдэглэ
Параметрийн файлыг тохиргооны удирдлага дор байлгаж, хажууд нь хэмжээ, шалтгаан, огноог бич. Өөрийн анхдагч утгыг чимээгүй үүсгэдэг дахин бүтээсэн сервер нь ижил алдаа зургаан сарын дараа эргэж ирэх зам бөгөөд хэн ч анхны шийдвэрийг тайлбарлаж чадахгүй.
Мөн адил мэдээллийг төгсгөлийн цэг болон профайлын хажууд бичиж, хяналт үүнийг файлын хэмжээнээс сэргээх шаардлагагүй болго. Дараагийн холболт гацах үед тэр тэмдэглэл нь таван минутын шалгалт ба шинэ мөрдөн шалгалтын ялгаа. Энэ нь дараагийн инженерт удаан тохиолдлыг хурданд зориулсан засвараар шийдэхээс сэргийлнэ.