Ядронун кокустугунун бүтүшү — жай VPN үчүн жагымдуу түшүндүрмө жана адамдар билдирген симптом үчүн дээрлик ар дайым туура эмес түшүндүрмө. Кокустук чыгымын күткөн хост белгилүү бир учурда токтойт, адатта жүктөөнүн башында же ачкычтарды иштетүү учурунда. тез туташып, анан жай берип жаткан туннель болсо, анын ордуна өткөрүү жөндөмдүүлүгүн сүрөттөйт. Окуп бүтпөгөн санды оңдоо үчүн демон орнотуудан мурун бул эки байкоону бөлүңүз.

Миф эмнеге жашайт

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

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

Генератор ар бир пакетке эмне кылат

OpenSSL 3 ичинде демейки генератордук иерархия конфигурация менен абалга ылайык уруктаган жана кайра уруктаган DRBG үлгүлөрүнөн курулат. OpenVPN 2.6 ичинде AEAD маалымат жолу өзүнүн nonce маанисин пакеттин ырааттуулук номеринен сессияга таандык жашыруун маани менен алып, эски CBC жолу ар бир пакетке псевдококустук IV алат. Эки үлгү тең гигабайтты жылдыруу ядронун жаңы гигабайт ызы-чуусун сарптайт деген эрежени колдобойт. Экөө тең ачкыч жаратуу менен кол алышуулар уруктоо маанилүү болгон жер деген идеяны колдойт.

CBC учурун атоого татыктуу, анткени ал мифке окшош жана миф эмес: анын ар бир пакетке IV мааниси китепкананын өзүнүн кайра уруктоо графиги боюнча китепкананын генераторунан келет, эч качан ар бир пакетке ядро чакыруусунан келбейт. Бирөө байтка энтропия наркын келтирсе, кайсы китепкана версиясын жана кайсы код жолун өлчөгөнүн сураңыз.

Күтүү чындыгында кайда көрүнөт

Убакыт белгилерин сессиянын айланасына эмес, этаптардын айланасына коюңуз: баштоо, аутентификация, ачкыч алмаштыруу жана берүү. Туннель колдонууга жарактуу болгонго чейинки күтүү — төмөн туруктуу ылдамдыктан башка даттануу, жана алардын бирөө гана кокустукка багыттайт. Linux ичинде кадимки getrandom() сурамы ядронун кокустук булагы инициализацияланганга чейин бөгөттөлүшү мүмкүн, ошондуктан бул маселенин жүктөө учурундагы версиясы башында бассейнди азыктандырууга аз нерсеси бар виртуалдык машиналарда жана камтылган такталарда чыныгы.

ЭтапЭмнени иштетүү керекКүтүүнү билдирген көрсөткүчӨткөрүү жөндөмдүүлүгүн билдирген көрсөткүч
Жүктөө, кандайдыр бир туннелге чейинsystemd-analyze critical-chainтуннель башталганга чейин секунддап отурган бирдикколдонулбайт, азырынча эч нерсе берилбейт
Кол алышууjournalctl -u openvpn-server@server -bинициализация ырааттуулугу бүткөнгө чейинки узун үзгүлтүкколдонулбайт, туннель көтөрүлгөн эмес
Орнотулган берүүss -tin жанында sar -n DEV 1бош сокет кезектери менен бөгөттөлгөн процесстолук кезектер, кайра жөнөтүүлөр жана бир бош эмес агым

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

cat /proc/sys/kernel/random/entropy_avail
uname -r

Оңдоону окууга шайкеш келтириңиз

Эгер ядро чындыгында инициализацияны күтүп жатса, туннелге эмес, платформанын колдогон уруктоо жолуна караңыз. Виртуалдык машинага хост берген кокустук түзмөктү берсе болот, мисалы virtio-rng, жана образды даярдоо маанилүү, анткени көп конокторго өзгөртүүсүз көчүрүлгөн урук көз карандысыз инициализация эмес. Эгер китепкана жүктөөдөн кийин уруктоо ийгиликсиздиктерин билдирсе, ядро жөндөөлөрүн өзгөртүүнүн ордуна анын конфигурацияланган булагын жана берүүчүнүн жүрүм-турумун текшериңиз.

ss -tin dst 203.0.113.7
sar -n DEV 1 5

OpenSSL генераторунун документтери бул иерархиянын кирүүнү кантип аларын жана кайра уруктоо качан болорун сүрөттөйт, бул мифтен алда канча тар бекемдөө жана ал ишке ашырууга гана тиешелүү. Энтропия демону — универсалдуу ылдамдык оңдоосу эмес, жана аны эсептегич көтөрүлүшү үчүн орнотуу кечигүүнү далилдебей коопсуздук божомолун өзгөртөт. Өткөрүү жөндөмдүүлүгү үчүн маалымат жолун ээрчиңиз: бир каныккан агым, кайра жөнөтүүлөр, сырткы жоготуу жана кезектердин түшүшү ар бирине өзүнчө оңдоо керек, ал эми буфер өлчөмдөрү сокет буферлөөсүн өз кезек далилдери менен чечет.

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