د کرنل تصادف ختمېدل د ورو 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 جوړوونکي اسناد بیانوي چې دا لړۍ څنګه ننوتل ترلاسه کوي او بیا تخم کول کله پېښېږي، چې دا له افسانې څخه ډېر تنګ ادعا ده او یوازې د هغې پلي کولو لپاره سمه ده. د انټروپي ډیمون د سرعت نړیواله ترمیم نه دی، او د شمېرونکي د لوړولو لپاره یې نصبول پرته له دې چې ځنډ وښیي د امنیت انګېرنه بدلوي. د تېرېدو وړتیا لپاره د ډاټا لاره تعقیب کړئ: یو اشباع شوی تار، بیا لېږل، بهرنی زیان او د قطار لوېدل هر یو بېل سمون غواړي، او د بفر اندازې د ساکټ بفر کول د خپلو قطار شاهدانو سره سمبالوي.

اړوندې مقالې