د OpenVPN TLS د کوډ خطا: لومړی دواړه خواوې پرتله کړئ
د «ګډ کوډ نشته» خطا د TLS کنټرول چینل پورې اړه لري، نه data-ciphers ته۔ لومړی نسخې، بیا د سیټ لیستونه او بیا خبرې اترې ثابتې کړئ۔
د «ګډ کوډ نشته» خطا د یو تنظیم د بدلولو په څېر ښکاري، او هغه تنظیم چې ډېری خلک یې بدلوي غلط دی۔ OpenVPN د TLS د لاس ورکولو ترسره کوونکي کنټرول چینل او د تونل دننه بستې لېږدونکي ډاټا چینل لپاره جلا تګلارې ساتي، او خطا لومړني ته اشاره کوي کله چې خلک دوهم سمون کوي۔ د دې پرتله کول چې هره خوا څه اجازه ورکوي، په سم ترتیب کې، اټکل دوه یا درې پرېکړو ته اړوي: نسخه، بیا د سیټ لیست، بیا د ننوتلو معلومات۔
که دا ترتیب غلط شي، کېدای شي یو ساعت په داسې لیست کې د AES نوم په زیاتولو تیر کړئ چې هېڅکله نه دی کتل شوی۔
دوه د کوډ لیستونه، او یوازې یو یې لاس ورکول ماتوي
کنټرول چینل د TLS په غونډې خبرې اترې کوي، او تګلاره یې په دې لیکل کېږي: tls-cipher د TLS 1.2 لپاره او tls-ciphersuites د TLS 1.3 لپاره۔ ډاټا چینل په جلا توګه په دې تنظیمېږي: data-ciphers، چېرې چې ناسمه همغږي داسې اړیکه جوړوي چې ټینګېږي او بیا نشي کولای ترافیک تېر کړي۔ دواړه د کوډ یادولو خطاګانې ورکوي، نو ځکه ګډېږي۔ هغه لاس ورکول چې هېڅکله بشپړ نشي کنټرول چینل ته اشاره کوي، پداسې حال کې چې ټینګه شوې تونل چې بستې غورځوي ډاټا چینل ته اشاره کوي۔
لومړی کرښه نه، ټول پیغام ولولئ۔ د نسخې ناسمه همغږي، ورکه سیټ، هغه د سند لاسلیک الګوریتم چې خوا یې ردوي، او د کوربه نوم د تصدیق ناکامي ټولې په TLS خطا پای ته رسېږي، او له هغو یوازې یوه ستاسو د سیټ لیست په اړه ده۔ د دې کټګوریو بېلول د تشخیص ډېره برخه ده۔
له سیټونو پرتله کولو دمخه نسخې پرتله کړئ
د TLS 1.2 پورې محدوده خوا او هغه خوا چې 1.3 غواړي کومه ګډه نسخه نه لري، او هېڅ د کوډ تار یې نه نښلوي۔ په دواړو خواوو کې tls-version-min او tls-version-max ولیکئ، یا د کارېدونکو جوړښتونو ډیفالټ ارزښتونه، ځکه چې د یوې وېش د OpenSSL تګلاره کولای شي لږترلږه حد پورته کړي پرته له دې چې کومه OpenVPN اختیار یې ووایي۔ که یوه خوا وسیله یا دریمې خوا کلاینټ وي، د هغې کړکۍ هغه څه ده چې فرم ویر یې اجازه ورکوي۔ یوازې هغه وخت چې کړکۍ یې یو بل ته ننوځي، د سیټونو پرتله معنا لري۔
هغه ثبتونه باید د اصلي باینري فایلونو نوم هم یاد کړي۔ ستاسو په لپ ټاپ کې د کمانډ کرښې openvpn اړینه نه ده چې هغه کلاینټ وي چې وارد شوی پروفایل سمبالوي۔
د TLS 1.2 او TLS 1.3 لیستونه یو بل سره نه ګډېږي
د TLS 1.2 د سیټ نومونه داسې ښکاري: ECDHE-RSA-AES256-GCM-SHA384 او دوی tls-cipher ته اړه لري، چې د OpenSSL د کوډ تار مني۔ د TLS 1.3 سیټونه داسې نومېږي: TLS_AES_256_GCM_SHA384 او دوی tls-ciphersuites ته اړه لري؛ د یو زیاتول په 1.2 تار کې 1.3 لیست نه تنظیموي، او پارسر کولای شي متن ومني پرته له دې چې هېڅکله یې سره سم کړي۔ یوې نسخې ته سم فلټر د بلې په اړه هېڅ نه وایي۔ ولیکئ چې کوم لیست د کومې نسخې لپاره دی۔
openvpn --show-tls چاپوي چې ځایي جوړښت څه ملاتړ کوي، او هغه لیست دی نه ژمنه: ممکنه ده لرې خوا هغه سیټونه اجازه نه کړي، او فعال پروفایل یې فعال نه کړي۔ دا د هغه جوړښت د ایستلو لپاره وکاروئ چې هېڅ سیټ نه شي وړاندې کولای، بیا تنظیم شوي لیستونه پرتله کړئ۔
په نوي اړیکه کې خبرې اترې ثابتې کړئ
بریالی لاس ورکول یوازینی هغه شاهد دی چې حساب کېږي، او باید له اصلي کلاینټ څخه د اصلي پروفایل سره راشي۔ د سرور د تفصیل کچه لوړه کړئ، یو ځل وصل شئ، او له لاګ څخه خبرې شوې پروتوکول نسخه او سیټ ولولئ پرته له دې چې فرض کړئ لومړی وړاندې شوی ارزښت وګټله۔ بیا ډاټا چینل په جلا توګه د تونل له لارې د ترافیک سره تایید کړئ، ځکه چې کار کوونکی لاس ورکول او ناکام ډاټا چینل بېلابېل ترمیمونه دي۔ له هر تنظیم بدلون وروسته یې تکرار کړئ، ځکه چې زوړ کلاینټ پروفایل یو عام غلط-منفي لامل دی۔
که تصویب شوې ګډه تنظیمونه نشته، ځواب لوړوالی یا د لېږد پلان دی، نه کمزورې شوې تګلاره۔ tls-version-min ښکته کول، تصدیق بندول یا ټول زاړه سیټونه فعالول رد کول لرې کوي پرته له دې چې هغه امنیتي اړتیا پوره کړي چې دا یې پیدا کړې ده۔
په بدلون ټکټ کې خبرې شوې نسخه، سیټ او ډاټا کوډ ثبت کړئ۔ بل ځل چې څوک TLS خطا ته مخامخ شي له هغه ثبت څخه پیل کوي، نه له هغې د کوډ تار چې په فورم پوسټ کې موندل شوې۔