Эки белги бир нерседей колдонулат: аппараттык ылдамдатуу жана ядрого өткөрүү. Бири китепкананын 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 ичиндеги ошол нускама деңгээлиндеги багыттоону колдоно алат, ал эми жакшы тандалган китепканасы бар колдонуучу мейкиндигинин жолу аны буга чейин эле колдонуп жатат. Чечим — кайсынысы абстракцияда тезирээк эмес; чечим — кайсы чыгым үчүн далилиңиз бар.

Бир нерсени өзгөртүүдөн мурун төрт фактыны жазыңыз

Кызматтын бинардык файлын жана ал байланган криптографиялык китепкананы жазыңыз, анткени алар биринчи окту аныктайт. Анан келишилген маалымат коргоосун жазып коюңуз, анткени атайын нускама жолу жок шифр ага ээ болгондон башкача жүрүм-турум көрсөтөт, ал эми топтомду эки тарап тең тандайт.

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

Бир нерсени өзгөртүп, анан бирдей акыркы чекиттер жана бирдей өткөрүү багыты бар бирдей жүктөм менен салыштырыңыз. Өлчөбөгөн ылдамдык тууралуу билдирүү бэкенд эч качан шек туудурбаганы тууралуу жазуудан арзыбайт.

Тектеш макалалар