Хоёр шошгыг нэг зүйл мэт ашигладаг: техник хангамжаар хурдасгасан ба цөм рүү шилжүүлсэн. Нэг нь номын сангийн AES процедур ямар заавар гүйцэтгэдэг, нөгөө нь пакетын боловсруулалт хаана явагддагийг тодорхойлно. VPN эхнийх нь хоёрдугааргүй, хоёр дахь нь эхнийхгүй, эсвэл хоёулаа байж болно. Гүйцэтгэлийн талаарх аливаа шийдвэр энэ хоёрын алийг нь үнэхээр өөрчилж байгаагаа нэрлэхээс эхлэх ёстой.

Хоёр тэнхлэг, нэг оноо биш

Эхний тэнхлэг бол хэрэгжилт: AES-256-GCM хийдэг код процессорын тусгай заавар ашигладаг хувилбар руу чиглэх үү, эсвэл тэдгээрийг энгийн арифметик мэт гүйцэтгэдэг зөөврийн процедур руу чиглэх үү. Энэ сонголт криптографын номын сан дотор амьдардаг бөгөөд түүнийг эхлүүлэх үед гардаг.

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

Аль ч тэнхлэг нөгөөгөө хязгаарлахгүй. AES заавартай процессор дээрх хэрэглэгчийн орон зайн VPN тэдгээрийг байнга ашиглаж болно, харин тэдгээргүй процессор дээрх цөмийн зам програм хангамжийн хэрэгжилт рүү буцна. Нийлүүлэгчдийн материал дахь шошго энэ ялгааг ховор харуулдаг, тиймээс хоёр нөхцөл байдлын хооронд хуулсан тохируулгын зөвлөгөө ихэвчлэн юу ч хийдэггүй.

Нэгдүгээр тэнхлэг: шифрлэлтийг аль код хийдэг

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

Хурдан зам ашиглагдаж байна гэж үзэхээс өмнө шинж чанар процессорт харагдаж байгаа эсэхийг баталгаажуул. Linux дээр эх сурвалж нь /proc/cpuinfo доторх flags талбар бөгөөд зочны дотор энэ нь гипервизор илрүүлж буй зүйлийг тусгадаг бөгөөд физик хост-ийн загварын нэрийг биш.

grep -m1 '^flags' /proc/cpuinfo | grep -o '\baes\b'
openssl list -providers -verbose

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

Хоёрдугаар тэнхлэг: пакетын зам хаана ажилладаг

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

Энэ нь зааварын дэмжлэг үүсгэхгүй, шифр тохируулахгүй, одоо байгаа замыг ажиллуулахгүй.

Виртуалчлал энэ тэнхлэг дээр ч нугалаа нэмдэг. Зочинд хост-д байгаа шинж чанарыг нуудаг масклагдсан процессорын загвар өгч болох бөгөөд дотор нь байрласан зочин бүр ч бага харж болно. Боломжийн харагдацыг VPN үнэхээр ажиллаж буй орчны дотроос унш, гипервизорын консолоос биш.

Сонголт бүр юу худалдаж авдаг, юу чадахгүй

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

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

Хоёулаа хамаарах газарт тэд нэгддэг. Цөмийн зам нь цөмийн крипто API доторх ижил зааварын түвшний чиглүүлэлтийг ашиглаж болох бөгөөд сайн сонгосон номын сантай хэрэглэгчийн орон зайн зам үүнийг аль хэдийн ашиглаж байна. Шийдвэр нь аль нь хийсвэрээр хурдан биш; аль зардлын талаар танд нотолгоо байгаа нь.

Ямар нэг зүйлийг өөрчлөхөөс өмнө дөрвөн баримтыг бич

Үйлчилгээний хоёртын файл болон түүний холбогдсон криптографын номын санг бич, учир нь тэдгээр нь нэгдүгээр тэнхлэгийг тодорхойлно. Дараа нь тохиролцсон өгөгдлийн хамгаалалтыг тэмдэглэ, учир нь тусгай зааварын замгүй шифр нь замтайгаас өөрөөр ажилладаг бөгөөд багцыг хоёр тал сонгодог.

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

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

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